gui: Check return value of para_exec_cmdline_pid().
[paraslash.git] / error.h
diff --git a/error.h b/error.h
index d6a4255..cfd2b1b 100644 (file)
--- a/error.h
+++ b/error.h
@@ -1,12 +1,12 @@
 /*
- * Copyright (C) 2006-2009 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2012 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
 
 /** \file error.h List of error messages for all subsystems. */
 
-/** \cond */
+/** \cond errors */
 
 /* List of all subsystems that use paraslash's error facility. */
 DEFINE_ERRLIST_OBJECT_ENUM;
@@ -16,11 +16,10 @@ DEFINE_ERRLIST_OBJECT_ENUM;
 #define TIME_ERRORS
 #define CLOSE_ON_FORK_ERRORS
 #define DAEMON_ERRORS
-#define UDP_SEND_ERRORS
 #define GUI_ERRORS
+#define GUI_THEME_ERRORS
 #define RINGBUFFER_ERRORS
 #define SCORE_ERRORS
-#define SHA1_ERRORS
 #define RBTREE_ERRORS
 #define RECV_ERRORS
 #define IPC_ERRORS
@@ -33,16 +32,60 @@ DEFINE_ERRLIST_OBJECT_ENUM;
 #define SERVER_COMMAND_LIST_ERRORS
 #define AFS_COMMAND_LIST_ERRORS
 #define AUDIOD_COMMAND_LIST_ERRORS
-
+#define STDOUT_ERRORS
+#define FILE_WRITE_ERRORS
+#define STDIN_ERRORS
+#define WRITE_ERRORS
 
 extern const char **para_errlist[];
 
+#define FLACDEC_FILTER_ERRORS \
+       PARA_ERROR(FLACDEC_DECODER_ALLOC, "could not allocate stream decoder"), \
+       PARA_ERROR(FLACDEC_DECODER_INIT, "could not init stream decoder"), \
+       PARA_ERROR(FLACDEC_EOF, "flacdec encountered end of file condition"), \
+
+
+#define FLAC_AFH_ERRORS \
+       PARA_ERROR(FLAC_CHAIN_ALLOC, "could not create metadata chain"), \
+       PARA_ERROR(FLAC_CHAIN_READ, "could not read meta chain"), \
+       PARA_ERROR(FLAC_ITER_ALLOC, "could not allocate meta iterator"), \
+       PARA_ERROR(FLAC_VARBLOCK, "variable blocksize not supported"), \
+       PARA_ERROR(FLAC_AFH_DECODER_ALLOC, "could not allocate stream decoder"), \
+       PARA_ERROR(FLAC_AFH_DECODER_INIT, "could not init stream decoder"), \
+       PARA_ERROR(FLAC_SKIP_META, "could not skip metadata"), \
+       PARA_ERROR(FLAC_DECODE_POS, "could not get decode position"), \
+       PARA_ERROR(FLAC_STREAMINFO, "could not read stream info meta block"), \
+
+
+#define OGG_AFH_COMMON_ERRORS \
+       PARA_ERROR(STREAM_PACKETOUT, "ogg stream packet-out error (first packet)"), \
+       PARA_ERROR(SYNC_PAGEOUT, "ogg sync page-out error (no ogg file?)"), \
+       PARA_ERROR(STREAM_PAGEIN, "ogg stream page-in error (first page)"), \
+       PARA_ERROR(OGG_SYNC, "internal ogg storage overflow"), \
+       PARA_ERROR(OGG_EMPTY, "no ogg pages found"), \
+
+
+#define SPX_AFH_ERRORS \
+       PARA_ERROR(SPX_COMMENT, "invalid speex comment"), \
+
+
+#define SPX_COMMON_ERRORS \
+       PARA_ERROR(SPX_HEADER, "can not read speex header"), \
+       PARA_ERROR(SPX_HEADER_MODE, "invalid speex mode in header"), \
+       PARA_ERROR(SPX_VERSION, "incompatible speex bit stream version"), \
+       PARA_ERROR(SPX_DECODER_INIT, "speex decoder initialization failed"), \
+       PARA_ERROR(SPX_CTL_BAD_RQ, "speex_decoder_ctl: invalid request"), \
+       PARA_ERROR(SPX_CTL_INVAL, "speex_decoder_ctl: invalid argument"), \
+
+#define SPXDEC_FILTER_ERRORS \
+       PARA_ERROR(SPX_DECODE, "speex decoding error"), \
+       PARA_ERROR(SPX_DECODE_OVERFLOW, "speex decoding overflow"), \
+       PARA_ERROR(SPX_EOS, "speex: end of stream"), \
+
 #define BUFFER_TREE_ERRORS \
        PARA_ERROR(BTR_EOF, "buffer tree: end of file"), \
        PARA_ERROR(BTR_NO_CHILD, "btr node has no children"), \
-
-#define STDOUT_ERRORS \
-       PARA_ERROR(STDOUT_EOF, "stdout: end of file"), \
+       PARA_ERROR(BTR_NAVAIL, "btr node: value currently unavailable"), \
 
 
 #define BITSTREAM_ERRORS \
@@ -55,7 +98,6 @@ extern const char **para_errlist[];
 
 #define WMA_COMMON_ERRORS \
        PARA_ERROR(WMA_NO_GUID, "audio stream guid not found"), \
-       PARA_ERROR(WMA_BAD_ASF_HEADER, "invalid asf header"), \
 
 
 #define WMADEC_FILTER_ERRORS \
@@ -80,7 +122,18 @@ extern const char **para_errlist[];
        PARA_ERROR(BAD_SAMPLE_FORMAT, "sample format not supported"), \
        PARA_ERROR(BAD_CHANNEL_COUNT, "channel count not supported"), \
        PARA_ERROR(BAD_SAMPLERATE, "sample rate not supported"), \
-       PARA_ERROR(OSS_EOF, "oss: end of file"), \
+
+
+#define AO_WRITE_ERRORS \
+       PARA_ERROR(AO_DEFAULT_DRIVER, "ao: no usable output device"), \
+       PARA_ERROR(AO_BAD_DRIVER, "ao: invalid driver"), \
+       PARA_ERROR(AO_BAD_OPTION, "ao option is not of type key:value"), \
+       PARA_ERROR(AO_APPEND_OPTION, "ao append option: memory allocation failure"), \
+       PARA_ERROR(AO_OPEN_LIVE, "ao: could not open audio device"), \
+       PARA_ERROR(AO_FILE_NOT_SUPP, "ao: file io drivers not supported"), \
+       PARA_ERROR(AO_PLAY, "ao_play() failed"), \
+       PARA_ERROR(AO_BAD_SAMPLE_FORMAT, "ao: unsigned sample formats not supported"), \
+       PARA_ERROR(AO_PTHREAD, "pthread error"), \
 
 
 #define COMPRESS_FILTER_ERRORS \
@@ -89,7 +142,7 @@ extern const char **para_errlist[];
 
 
 #define WAV_FILTER_ERRORS \
-       PARA_ERROR(WAV_BAD_FC, "invalid filter chain configuration"), \
+       PARA_ERROR(WAV_BAD_FC, "invalid filter configuration"), \
        PARA_ERROR(WAV_EOF, "wav filter: end of file"), \
        PARA_ERROR(WAV_SUCCESS, "successfully wrote wav header"), \
 
@@ -136,19 +189,11 @@ extern const char **para_errlist[];
        PARA_ERROR(ACL_PERM, "access denied by acl"), \
 
 
-#define FSCK_ERRORS \
-       PARA_ERROR(FSCK_SYNTAX, "fsck syntax error"), \
-       PARA_ERROR(RANGE_VIOLATION, "range violation detected, very bad"), \
-       PARA_ERROR(NOT_A_REGULAR_FILE, "not a regular file"), \
-
 #define AFS_ERRORS \
        PARA_ERROR(BAD_TABLE_NAME, "invalid table"), \
-       PARA_ERROR(INPUT_TOO_LARGE, "input too large for stdin command"), \
        PARA_ERROR(AFS_SYNTAX, "afs syntax error"), \
        PARA_ERROR(AFS_SIGNAL, "afs caught deadly signal"), \
        PARA_ERROR(AFS_SOCKET, "afs socket not writable"), \
-       PARA_ERROR(AFS_SHORT_READ, "short read from afs socket"), \
-       PARA_ERROR(OSL, "osl error"), \
 
 
 #define MOOD_ERRORS \
@@ -168,6 +213,7 @@ extern const char **para_errlist[];
 
 #define BLOB_ERRORS \
        PARA_ERROR(BLOB_SYNTAX, "blob syntax error"), \
+       PARA_ERROR(INPUT_TOO_LARGE, "input too large for stdin command"), \
 
 
 #define PLAYLIST_ERRORS \
@@ -183,7 +229,6 @@ extern const char **para_errlist[];
        PARA_ERROR(BAD_PATH, "invalid path"), \
        PARA_ERROR(BAD_SORT, "invalid sorting method"), \
        PARA_ERROR(FNMATCH, "fnmatch error"), \
-       PARA_ERROR(NO_MATCH, "no matches"), \
        PARA_ERROR(NO_AFHI, "audio format handler info required"), \
        PARA_ERROR(AFT_SYNTAX, "audio file table syntax error"), \
        PARA_ERROR(HASH_MISMATCH, "hash mismatch, consider re-add"), \
@@ -204,14 +249,11 @@ extern const char **para_errlist[];
 
 #define AUDIOC_ERRORS \
        PARA_ERROR(AUDIOC_SYNTAX, "audioc syntax error"), \
-       PARA_ERROR(AUDIOC_READ, "audioc read error"), \
-       PARA_ERROR(AUDIOC_WRITE, "audioc write error"), \
-       PARA_ERROR(AUDIOC_OVERRUN, "audioc buffer overrun"), \
+       PARA_ERROR(AUDIOC_EOF, "audioc: end of file"), \
 
 
 #define CLIENT_COMMON_ERRORS \
        PARA_ERROR(CLIENT_SYNTAX, "syntax error"), \
-       PARA_ERROR(INVALID_CHALLENGE, "did not receive valid challenge"), \
        PARA_ERROR(NO_CONFIG, "config file not found"), \
        PARA_ERROR(BAD_CONFIG, "syntax error in config file"), \
        PARA_ERROR(CLIENT_AUTH, "authentication failed"), \
@@ -219,33 +261,28 @@ extern const char **para_errlist[];
 
 
 #define SCHED_ERRORS \
-       PARA_ERROR(TASK_KILLED, "task killed"), \
-       PARA_ERROR(TASK_UNREGISTERED, "task has been unscheduled"), \
-       PARA_ERROR(NO_SUCH_TASK, "task not found"), \
        PARA_ERROR(NOT_INITIALIZED, "scheduler not yet initialized"), \
-
-
-#define STDIN_ERRORS \
-       PARA_ERROR(STDIN_EOF, "end of file"), \
-       PARA_ERROR(STDIN_OVERRUN, "stdin: output buffer overrun"), \
-
+       PARA_ERROR(SCHED_SHUTDOWN, "scheduler was shut down"), \
 
 
 #define NET_ERRORS \
        PARA_ERROR(NAME_TOO_LONG, "name too long for struct sockaddr_un"), \
-       PARA_ERROR(ADDRESS_LOOKUP, "address lookup / socket creation failed"), \
+       PARA_ERROR(ADDRESS_LOOKUP, "can not resolve requested address"),\
        PARA_ERROR(CHMOD, "failed to set socket mode"), \
        PARA_ERROR(SENDMSG, "sendmsg() failed"), \
        PARA_ERROR(RECVMSG, "recvmsg() failed"), \
        PARA_ERROR(SCM_CREDENTIALS, "did not receive SCM credentials"), \
-       PARA_ERROR(RECV_PATTERN, "did not receive expected pattern"), \
+       PARA_ERROR(MAKESOCK, "makesock error"), \
 
 
 #define UDP_RECV_ERRORS \
        PARA_ERROR(UDP_SYNTAX, "udp_recv syntax error"), \
-       PARA_ERROR(UDP_BAD_HEADER, "invalid udp audio header"), \
        PARA_ERROR(UDP_OVERRUN, "output buffer overrun"), \
-       PARA_ERROR(UDP_BAD_STREAM_TYPE, "invalid stream type"), \
+
+
+#define UDP_SEND_ERRORS \
+       PARA_ERROR(TARGET_EXISTS, "requested target is already present"),\
+       PARA_ERROR(TARGET_NOT_FOUND, "requested target not found")
 
 
 #define HTTP_RECV_ERRORS \
@@ -268,7 +305,6 @@ extern const char **para_errlist[];
 
 #define AUDIOD_COMMAND_ERRORS \
        PARA_ERROR(CLIENT_WRITE, "client write error"), \
-       PARA_ERROR(AUDIOD_SYNTAX, "syntax error"), \
        PARA_ERROR(UCRED_PERM, "permission denied"), \
        PARA_ERROR(INVALID_AUDIOD_CMD, "invalid command"), \
        PARA_ERROR(TOO_MANY_CLIENTS, "maximal number of stat clients exceeded"), \
@@ -276,9 +312,8 @@ extern const char **para_errlist[];
 
 
 #define FILTER_COMMON_ERRORS \
-       PARA_ERROR(UNSUPPORTED_FILTER, "given filter not supported"), \
        PARA_ERROR(BAD_FILTER_OPTIONS, "invalid filter option given"), \
-       PARA_ERROR(FC_EOF, "filter chain: eof"), \
+       PARA_ERROR(UNSUPPORTED_FILTER, "given filter not supported"), \
 
 
 #define STAT_ERRORS \
@@ -292,22 +327,18 @@ extern const char **para_errlist[];
        PARA_ERROR(OGGDEC_BADHEADER, "invalid vorbis bitstream header"), \
        PARA_ERROR(OGGDEC_FAULT, "bug or heap/stack corruption"), \
        PARA_ERROR(OGGDEC_BADLINK, "invalid stream section or requested link corrupt"), \
-       PARA_ERROR(OGGDEC_SYNTAX, "syntax error in oggdec config"), \
-       PARA_ERROR(OGGDEC_EOF, "oggdec: end of file"), \
 
 
 #define GRAB_CLIENT_ERRORS \
        PARA_ERROR(GC_WRITE, "grab client write error"), \
-       PARA_ERROR(BAD_GC_SLOT, "invalid slot requested by grab client"), \
-       PARA_ERROR(BAD_GC_FILTER_NUM, "invalid filter number given"), \
        PARA_ERROR(GC_SYNTAX, "grab client syntax error"), \
 
 
 #define MP3DEC_FILTER_ERRORS \
        PARA_ERROR(MAD_FRAME_DECODE, "mad frame decode error"), \
-       PARA_ERROR(MP3DEC_OVERRUN, "mp3 output buffer overrun"), \
        PARA_ERROR(MP3DEC_SYNTAX, "syntax error in mp3dec config"), \
        PARA_ERROR(MP3DEC_EOF, "mp3dec: end of file"), \
+       PARA_ERROR(MP3DEC_CORRUPT, "too many corrupt frames"), \
 
 
 #define FILTER_ERRORS \
@@ -348,17 +379,21 @@ extern const char **para_errlist[];
 
 
 #define OGG_AFH_ERRORS \
-       PARA_ERROR(SYNC_PAGEOUT, "ogg sync page-out error (no ogg file?)"), \
-       PARA_ERROR(STREAM_PAGEIN, "ogg stream page-in error (first page)"), \
-       PARA_ERROR(STREAM_PACKETOUT, "ogg stream packet-out error (first packet)"), \
        PARA_ERROR(VORBIS, "vorbis synthesis header-in error (not vorbis?)"), \
-       PARA_ERROR(OGG_SYNC, "internal ogg storage overflow"), \
-       PARA_ERROR(OGG_EMPTY, "no ogg pages found"), \
+       PARA_ERROR(OGG_PACKET_IN, "ogg_stream_packetin() failed"), \
+       PARA_ERROR(OGG_STREAM_FLUSH, "ogg_stream_flush() failed"), \
 
 
 #define VSS_ERRORS \
        PARA_ERROR(NOFD, "did not receive open fd from afs"), \
-       PARA_ERROR(BAD_CT, "invalid chunk table or bad FEC configuration")
+       PARA_ERROR(BAD_CT, "invalid chunk table or bad FEC configuration"), \
+       PARA_ERROR(AFS_SHORT_READ, "short read from afs socket"), \
+
+
+#define CRYPT_COMMON_ERRORS \
+       PARA_ERROR(SSH_KEY_HEADER, "ssh key header not found"), \
+       PARA_ERROR(BASE64, "failed to base64-decode ssh public key"), \
+       PARA_ERROR(KEY_PERM, "unprotected private key"), \
 
 
 #define CRYPT_ERRORS \
@@ -367,9 +402,23 @@ extern const char **para_errlist[];
        PARA_ERROR(RSA, "RSA error"), \
        PARA_ERROR(ENCRYPT, "encrypt error"), \
        PARA_ERROR(DECRYPT, "decrypt error"), \
-       PARA_ERROR(CHALLENGE, "failed to read challenge"), \
        PARA_ERROR(BLINDING, "failed to activate key blinding"), \
-       PARA_ERROR(KEY_PERM, "unprotected private key"), \
+       PARA_ERROR(BIGNUM, "bignum error"), \
+
+#define GCRYPT_ERRORS \
+       PARA_ERROR(MPI_SCAN, "could not scan multi-precision integer"), \
+       PARA_ERROR(MPI_PRINT, "could not convert multi-precision integer"), \
+       PARA_ERROR(SEXP_FIND, "could not find sublist in S-expression"), \
+       PARA_ERROR(SEXP_BUILD, "could not build S-expression"), \
+       PARA_ERROR(SEXP_ENCRYPT, "could not encrypt S-expression"), \
+       PARA_ERROR(SEXP_DECRYPT, "could not decrypt S-expression"), \
+       PARA_ERROR(MD_OPEN, "could not open message digest object"), \
+       PARA_ERROR(CIPHER_OPEN, "could not create stream cipher handle"), \
+       PARA_ERROR(BAD_PRIVATE_KEY, "invalid private key"), \
+       PARA_ERROR(KEY_MARKER, "invalid/missing key header or footer"), \
+       PARA_ERROR(ASN1_PARSE, "could not parse ASN.1 key"), \
+       PARA_ERROR(SSH_PARSE, "could not parse ssh public key"), \
+       PARA_ERROR(OEAP, "error during oeap (un)padding"), \
 
 
 #define COMMAND_ERRORS \
@@ -391,58 +440,34 @@ extern const char **para_errlist[];
 
 #define FD_ERRORS \
        PARA_ERROR(FGETS, "fgets error"), \
-
-
-#define WRITE_ERRORS \
-       PARA_ERROR(WRITE_SYNTAX, "para_write syntax error"), \
-       PARA_ERROR(NO_WAV_HEADER, "wave header not found"), \
-       PARA_ERROR(WAV_HEADER_SUCCESS, "successfully read wave header"), \
-       PARA_ERROR(NO_DELAY, "no initial delay"), \
-       PARA_ERROR(DELAY_TIMEOUT, "initial delay timeout"), \
-       PARA_ERROR(WRITE_EOF, "end of file"), \
+       PARA_ERROR(EOF, "end of file"), \
+       PARA_ERROR(READ_PATTERN, "did not read expected pattern"), \
+       PARA_ERROR(SHORT_WRITE, "unexpected short write"), \
+       PARA_ERROR(EMPTY, "file is empty"), \
 
 
 #define ALSA_WRITE_ERRORS \
-       PARA_ERROR(BROKEN_CONF, "Broken alsa configuration"), \
-       PARA_ERROR(ACCESS_TYPE, "alsa access type not available"), \
-       PARA_ERROR(SAMPLE_FORMAT, "sample format not available"), \
-       PARA_ERROR(CHANNEL_COUNT, "channels count not available"), \
-       PARA_ERROR(HW_PARAMS, "unable to install hw params"), \
-       PARA_ERROR(BAD_PERIOD, "can not use period equal to buffer size"), \
-       PARA_ERROR(ALSA_WRITE, "alsa write error"), \
-       PARA_ERROR(PCM_OPEN, "unable to open pcm"), \
-       PARA_ERROR(PHYSICAL_WIDTH, "unable to determine bytes per frame"), \
-       PARA_ERROR(GET_BUFFER_TIME, "snd_pcm_hw_params_get_buffer_time_max() failed"), \
-       PARA_ERROR(SET_BUFFER_TIME, "snd_pcm_hw_params_set_buffer_time_near() failed"), \
-       PARA_ERROR(SET_RATE, "snd_pcm_hw_params_set_rate_near failed"), \
-       PARA_ERROR(START_THRESHOLD, "snd_pcm_sw_params_set_start_threshold() failed"), \
-       PARA_ERROR(STOP_THRESHOLD, "snd_pcm_sw_params_set_stop_threshold() failed"), \
-       PARA_ERROR(ALSA_EOF, "alsa: end of file"), \
-
-
-#define FILE_WRITE_ERRORS \
-       PARA_ERROR(FW_WRITE, "file writer write error"), \
-       PARA_ERROR(FW_OPEN, "file writer: can not open output file"), \
-       PARA_ERROR(FW_NO_FILE, "task started without open file"), \
+       PARA_ERROR(ALSA, "alsa error"), \
 
 
 #define WRITE_COMMON_ERRORS \
-       PARA_ERROR(WRITE_COMMON_SYNTAX, "syntax error in write option"), \
-       PARA_ERROR(WRITE_COMMON_EOF, "write: end of file"), \
+       PARA_ERROR(WRITE_COMMON_EOF, "end of file"), \
 
 
 #define AACDEC_FILTER_ERRORS \
        PARA_ERROR(AACDEC_INIT, "failed to init aac decoder"), \
        PARA_ERROR(AAC_DECODE, "aac decode error"), \
-       PARA_ERROR(AAC_OVERRUN, "aac output buffer overrun"), \
-       PARA_ERROR(AACDEC_EOF, "aacdec: end of file"), \
 
 
 #define CHUNK_QUEUE_ERRORS \
        PARA_ERROR(QUEUE, "packet queue overrun"), \
 
 
-/** \endcond */
+#define INTERACTIVE_ERRORS \
+       PARA_ERROR(I9E_EOF, "end of input"), \
+       PARA_ERROR(I9E_SETUPTERM, "failed to set up terminal"), \
+
+/** \endcond errors */
 
 /**
  * The subsystem shift.