X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;ds=sidebyside;f=write.h;h=d5834b4c436eafae77cb7a086c045c4bf6f0a81b;hb=b5b5d00eea33eccd3d2d75057c5254bf85568b00;hp=c7196dc5644614e66525b1bfa524ec346579d64d;hpb=e8089cd5efad59a5eec689117acf563a38b8c6c7;p=paraslash.git diff --git a/write.h b/write.h index c7196dc5..d5834b4c 100644 --- a/write.h +++ b/write.h @@ -36,21 +36,20 @@ struct writer { /** * The command line parser of the writer. * - * It should check whether the command line options given by \a options are - * valid. On success, it should return a pointer to the writer-specific - * configuration data determined by \a options. Note that this might be called - * more than once with different values of \a options. + * It should check whether the command line options given by \a options + * are valid and return a pointer to the writer-specific configuration + * data determined by \a options. This function must either succeed or + * call exit(). Note that parse_config_or_die() might be called more + * than once with different values of \a options. \sa \ref + * free_config(). */ - void *(*parse_config)(const char *options); - void (*free_config)(void *conf); + void *(*parse_config_or_die)(const char *options); /** - * Open one instance of this writer. + * Dellocate all configuration resources. * - * This function should perform any work necessary to write the incoming - * stream. To this aim, it may allocate its private data structure and store - * a pointer to that structure via the given writer_node parameter. + * This should free whatever was allocated by \ref parse_config_or_die(). */ - int (*open)(struct writer_node *); + void (*free_config)(void *config); /** * Prepare the fd sets for select. *