struct timeval now;
struct tm mtime_tm;
- localtime_r(&nmmd->mtime, &mtime_tm);
- strftime(mtime, 29, "%a %b %d %Y", &mtime_tm);
/* report real status */
status = vss_status_tohuman(nmmd->vss_status_flags);
flags = vss_get_status_flags(nmmd->vss_status_flags);
- basename = para_basename(nmmd->filename);
- dirname = para_dirname(nmmd->filename);
+ basename = para_basename(nmmd->afd.path);
+ dirname = para_dirname(nmmd->afd.path);
+ if (basename) {
+ localtime_r(&nmmd->mtime, &mtime_tm);
+ strftime(mtime, 29, "%a %b %d %Y", &mtime_tm);
+ }
gettimeofday(&now, NULL);
ret = make_message(
"%s:%zu\n" "%s:%s\n" "%s:%lu\n" "%s:%u\n"
"%s:%s\n" "%s:%s\n" "%s:%s\n" "%s:%u\n"
"%s:%li\n" "%s:%s\n" "%s:%s\n" "%s"
- "%s:%s\n" "%s:%lu.%lu\n" "%s:%lu.%lu\n" "%s:%s\n"
- "%s:%s\n" "%s:%u\n",
+ "%s:%s\n" "%s:%lu.%lu\n" "%s:%lu.%lu\n"
+ "%s:%s\n" "%s:%u\n" "%s\n",
status_item_list[SI_FILE_SIZE], nmmd->size / 1024,
status_item_list[SI_MTIME], mtime,
status_item_list[SI_LENGTH], nmmd->afd.afhi.seconds_total,
status_item_list[SI_IMAGE_ID], nmmd->afd.afsi.image_id,
status_item_list[SI_OFFSET], offset,
- status_item_list[SI_FORMAT], audio_format_name(nmmd->afd.afsi.audio_format_id),
+ status_item_list[SI_FORMAT], basename?
+ audio_format_name(nmmd->afd.afsi.audio_format_id)
+ : "",
status_item_list[SI_AFS_MODE], mmd->afs_mode_string,
nmmd->afd.afhi.info_string,
status_item_list[SI_CURRENT_TIME],
(long unsigned)now.tv_sec,
(long unsigned)now.tv_usec,
- status_item_list[SI_ATTRIBUTES], mmd->afd.attributes_string,
- status_item_list[SI_DIRECTORY], dirname,
- status_item_list[SI_LYRICS_ID], nmmd->afd.afsi.lyrics_id
+ status_item_list[SI_DIRECTORY], dirname? dirname : "(none)",
+ status_item_list[SI_LYRICS_ID], nmmd->afd.afsi.lyrics_id,
+ nmmd->afd.afs_status_info
);
free(basename);
for (cmd = server_cmds; cmd->name; cmd++)
if (!strcmp(cmd->name, name)) {
if (handler)
- *handler = para_strdup("para_server"); /* server commands */
+ *handler = para_strdup("server"); /* server commands */
return cmd;
}
/* not found, look for commands supported by afs */
for (cmd = afs_cmds; cmd->name; cmd++)
- if (!strcmp(cmd->name, name))
+ if (!strcmp(cmd->name, name)) {
+ if (handler)
+ *handler = para_strdup("afs");
return cmd;
+ }
return NULL;
}
return get_cmd_ptr(buf, NULL);
}
-static long int para_rand(long unsigned max)
-{
- return (long int) ((max + 0.0) * (random() / (RAND_MAX + 1.0)));
-}
-
static void init_rc4_keys(void)
{
int i;
for (i = 0; i < 2 * RC4_KEY_LEN; i++)
- rc4_buf[i] = para_rand(256);
+ rc4_buf[i] = para_random(256);
PARA_DEBUG_LOG("rc4 keys initialized (%u:%u)\n",
(unsigned char) rc4_buf[0],
(unsigned char) rc4_buf[RC4_KEY_LEN]);