Use openssl's RAND_load_file() and RAND_bytes() to get randomness.
[paraslash.git] / error.h
diff --git a/error.h b/error.h
index f0a2510da3c8425d4c514b3cbf2da977b7e877f6..c53ab89a3b15192285de2f13048c4340c1fcd070 100644 (file)
--- a/error.h
+++ b/error.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2006-2008 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2009 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -13,12 +13,10 @@ DEFINE_ERRLIST_OBJECT_ENUM;
 
 /* these do not need error handling (yet) */
 #define SERVER_ERRORS
-#define WAV_ERRORS
-#define COMPRESS_ERRORS
 #define TIME_ERRORS
 #define CLOSE_ON_FORK_ERRORS
 #define DAEMON_ERRORS
-#define ORTP_SEND_ERRORS
+#define UDP_SEND_ERRORS
 #define GUI_ERRORS
 #define RINGBUFFER_ERRORS
 #define SCORE_ERRORS
@@ -27,13 +25,51 @@ DEFINE_ERRLIST_OBJECT_ENUM;
 #define RECV_ERRORS
 #define STDOUT_ERRORS
 #define IPC_ERRORS
-#define AMP_FILTER_ERRORS
 #define DCCP_SEND_ERRORS
 #define HTTP_SEND_ERRORS
+#define GGO_ERRORS
+#define COLOR_ERRORS
+#define SIGNAL_ERRORS
 
 
 extern const char **para_errlist[];
 
+#define PREBUFFER_FILTER_ERRORS \
+       PARA_ERROR(PREBUFFER_SYNTAX, "syntax error in prebuffer filter config"), \
+
+#define OSS_WRITE_ERRORS \
+       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"), \
+
+
+#define COMPRESS_FILTER_ERRORS \
+       PARA_ERROR(COMPRESS_SYNTAX, "syntax error in compress filter config"), \
+
+
+#define WAV_FILTER_ERRORS \
+       PARA_ERROR(WAV_BAD_FC, "invalid filter chain configuration"), \
+
+
+#define FEC_ERRORS \
+       PARA_ERROR(FEC_BAD_IDX, "invalid index vector"), \
+       PARA_ERROR(FEC_SINGULAR, "unexpected singular matrix"), \
+       PARA_ERROR(FEC_PIVOT, "pivot column not found"), \
+       PARA_ERROR(FEC_PARMS, "invalid fec parameters"), \
+
+
+#define FECDEC_FILTER_ERRORS \
+       PARA_ERROR(BAD_FEC_HEADER, "invalid fec header"), \
+       PARA_ERROR(BAD_SLICE_SIZE, "slice size zero or too large"), \
+       PARA_ERROR(BAD_SLICE_NUM, "invalid slice number"), \
+       PARA_ERROR(FECDEC_OVERRUN, "fecdec output buffer overrun"), \
+       PARA_ERROR(FECDEC_EOF, "received eof packet"), \
+
+
+#define AMP_FILTER_ERRORS \
+       PARA_ERROR(AMP_SYNTAX, "syntax error in amp filter config"), \
+
+
 #define SEND_COMMON_ERRORS \
        PARA_ERROR(MAX_CLIENTS, "maximal number of clients exceeded"), \
 
@@ -200,13 +236,11 @@ extern const char **para_errlist[];
        PARA_ERROR(RECV_PATTERN, "did not receive expected pattern"), \
 
 
-#define ORTP_RECV_ERRORS \
-       PARA_ERROR(MSG_TO_BUF, "failed to extract rtp packet"), \
-       PARA_ERROR(ORTP_SYNTAX, "ortp syntax error"), \
-       PARA_ERROR(TOO_MANY_BAD_CHUNKS, "too many consecutive bad chunks"), \
-       PARA_ERROR(INVALID_HEADER, "invalid header packet"), \
-       PARA_ERROR(OVERRUN, "output buffer overrun"), \
-       PARA_ERROR(ORTP_RECV_EOF, "ortp_recv: end of file"), \
+#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 HTTP_RECV_ERRORS \
@@ -234,7 +268,7 @@ extern const char **para_errlist[];
        PARA_ERROR(INVALID_AUDIOD_CMD, "invalid command"), \
 
 
-#define FILTER_CHAIN_ERRORS \
+#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"), \
@@ -245,13 +279,14 @@ extern const char **para_errlist[];
        PARA_ERROR(UNKNOWN_STAT_ITEM, "status item not recognized"), \
 
 
-#define OGGDEC_ERRORS \
+#define OGGDEC_FILTER_ERRORS \
        PARA_ERROR(OGGDEC_READ, "read from media returned an error"), \
        PARA_ERROR(OGGDEC_NOTVORBIS, "bitstream is not vorbis data"), \
        PARA_ERROR(OGGDEC_VERSION, "vorbis version mismatch"), \
        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"), \
 
 
 #define GRAB_CLIENT_ERRORS \
@@ -264,9 +299,10 @@ extern const char **para_errlist[];
        PARA_ERROR(GC_VERSION_GIVEN, ""), /* not really an error */ \
 
 
-#define MP3DEC_ERRORS \
+#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"), \
 
 
 #define FILTER_ERRORS \
@@ -274,10 +310,6 @@ extern const char **para_errlist[];
        PARA_ERROR(FILTER_SYNTAX, "syntax error"), \
 
 
-#define SIGNAL_ERRORS \
-       PARA_ERROR(SIGNAL_SIG_ERR, "signal() returned SIG_ERR"), \
-
-
 #define STRING_ERRORS \
        PARA_ERROR(ATOI_OVERFLOW, "value too large"), \
        PARA_ERROR(STRTOLL, "unknown strtoll error"), \
@@ -322,6 +354,7 @@ extern const char **para_errlist[];
 
 #define VSS_ERRORS \
        PARA_ERROR(NOFD, "did not receive open fd from afs"), \
+       PARA_ERROR(BAD_CT, "invalid chunk table or bad FEC configuration")
 
 
 #define CRYPT_ERRORS \
@@ -351,8 +384,6 @@ extern const char **para_errlist[];
 
 #define FD_ERRORS \
        PARA_ERROR(FGETS, "fgets error"), \
-       PARA_ERROR(EMPTY, "file empty"), \
-       PARA_ERROR(MMAP, "mmap error"), \
 
 
 #define WRITE_ERRORS \
@@ -369,11 +400,10 @@ extern const char **para_errlist[];
        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(SW_PARAMS, "unable to install sw 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(SND_PCM_INFO, "pcm info error"), \
+       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"), \
@@ -391,7 +421,7 @@ extern const char **para_errlist[];
        PARA_ERROR(WRITE_COMMON_SYNTAX, "syntax error in write option"), \
 
 
-#define AACDEC_ERRORS \
+#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"), \