static int parse_config(int argc, char *argv[])
{
static char *cf; /* config file */
- struct stat statbuf;
+ struct stat statbuf;
int i;
if (cmdline_parser(argc, argv, &conf))
cf = make_message("%s/.paraslash/filter.conf", home);
free(home);
}
- if (!stat(cf, &statbuf)) {
+ if (!stat(cf, &statbuf)) {
if (cmdline_parser_configfile(cf, &conf, 0, 0, 0))
return -E_FILTER_SYNTAX;
}
return 1;
printf("available filters: ");
for (i = 0; filters[i].name; i++)
- printf("%s%s", i? " " : "", filters[i].name);
- printf("\nTry para_filter -f<filtername>:-h for help on <filtername>\n");
+ printf("%s%s%s", i? " " : "", filters[i].name,
+ filters[i].parse_config? "*": "");
+ printf("\nFilters marked with \"*\" have further command line options. Try\n"
+ "\tpara_filter -f '<filtername> -h'\nfor more information.\n");
exit(EXIT_SUCCESS);
}
again:
if (*il < INBUF_SIZE && !eof) {
ret = read(STDIN_FILENO, ib + *il, INBUF_SIZE - *il);
- PARA_DEBUG_LOG("read %d/%d\n", ret, INBUF_SIZE - *il);
+ PARA_DEBUG_LOG("read %d/%zd\n", ret, INBUF_SIZE - *il);
if (ret < 0)
goto out;
if (!ret)
converted = ret;
if (*ol) {
ret = write(STDOUT_FILENO, ob, *ol);
- PARA_DEBUG_LOG("wrote %d/%d\n", ret, *ol);
+ PARA_DEBUG_LOG("wrote %d/%zd\n", ret, *ol);
if (ret <= 0)
goto out;
*ol -= ret;
if (*ol) {
- PARA_NOTICE_LOG("short write: %d bytes left\n", *ol);
+ PARA_NOTICE_LOG("short write: %zd bytes left\n", *ol);
memmove(ob, ob + ret, *ol);
}
}