Implement client-server feature negotiation.
[paraslash.git] / error.h
diff --git a/error.h b/error.h
index e2e245c9cc8d515c489c62008000b2864b06ad81..a79cb37b58fa773102e2ec8afd7660d745c661fe 100644 (file)
--- a/error.h
+++ b/error.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2006-2011 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2012 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -17,6 +17,7 @@ DEFINE_ERRLIST_OBJECT_ENUM;
 #define CLOSE_ON_FORK_ERRORS
 #define DAEMON_ERRORS
 #define GUI_ERRORS
+#define GUI_THEME_ERRORS
 #define RINGBUFFER_ERRORS
 #define SCORE_ERRORS
 #define RBTREE_ERRORS
@@ -35,11 +36,27 @@ DEFINE_ERRLIST_OBJECT_ENUM;
 #define FILE_WRITE_ERRORS
 #define STDIN_ERRORS
 #define WRITE_ERRORS
-#define FLACDEC_FILTER_ERRORS
-#define FLAC_AFH_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?)"), \
@@ -232,6 +249,7 @@ extern const char **para_errlist[];
 
 #define AUDIOC_ERRORS \
        PARA_ERROR(AUDIOC_SYNTAX, "audioc syntax error"), \
+       PARA_ERROR(AUDIOC_EOF, "audioc: end of file"), \
 
 
 #define CLIENT_COMMON_ERRORS \
@@ -334,7 +352,8 @@ extern const char **para_errlist[];
        PARA_ERROR(ATOI_NO_DIGITS, "no digits found in string"), \
        PARA_ERROR(ATOI_JUNK_AT_END, "further characters after number"), \
        PARA_ERROR(SIZE_PREFIX, "bad size prefix"), \
-       PARA_ERROR(REGEX, "regular expression error") \
+       PARA_ERROR(REGEX, "regular expression error"), \
+       PARA_ERROR(ARG_NOT_FOUND, "argument not found in arg vector"), \
 
 
 #define EXEC_ERRORS \
@@ -413,6 +432,7 @@ extern const char **para_errlist[];
        PARA_ERROR(SENDER_CMD, "command not supported by this sender"), \
        PARA_ERROR(SERVER_CRASH, "para_server crashed -- can not live without it"), \
        PARA_ERROR(BAD_USER, "auth request for invalid user"), \
+       PARA_ERROR(BAD_FEATURE, "request for unknown or invalid feature"), \
        PARA_ERROR(BAD_AUTH, "authentication failure"), \
 
 
@@ -424,6 +444,8 @@ extern const char **para_errlist[];
        PARA_ERROR(FGETS, "fgets error"), \
        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 \
@@ -443,6 +465,10 @@ extern const char **para_errlist[];
        PARA_ERROR(QUEUE, "packet queue overrun"), \
 
 
+#define INTERACTIVE_ERRORS \
+       PARA_ERROR(I9E_EOF, "end of input"), \
+       PARA_ERROR(I9E_SETUPTERM, "failed to set up terminal"), \
+
 /** \endcond errors */
 
 /**