comparison libtomcrypt/src/headers/tomcrypt_argchk.h @ 389:5ff8218bcee9

propagate from branch 'au.asn.ucc.matt.ltm.dropbear' (head 2af95f00ebd5bb7a28b3817db1218442c935388e) to branch 'au.asn.ucc.matt.dropbear' (head ecd779509ef23a8cdf64888904fc9b31d78aa933)
author Matt Johnston <matt@ucc.asn.au>
date Thu, 11 Jan 2007 03:14:55 +0000
parents 0cbe8f6dbf9e
children 38d2f6b2d1b8
comparison
equal deleted inserted replaced
388:fb54020f78e1 389:5ff8218bcee9
1 /* Defines the LTC_ARGCHK macro used within the library */
2 /* ARGTYPE is defined in mycrypt_cfg.h */
3 #if ARGTYPE == 0
4
5 #include <signal.h>
6
7 /* this is the default LibTomCrypt macro */
8 void crypt_argchk(char *v, char *s, int d);
9 #define LTC_ARGCHK(x) if (!(x)) { crypt_argchk(#x, __FILE__, __LINE__); }
10 #define LTC_ARGCHKVD(x) LTC_ARGCHK(x)
11
12 #elif ARGTYPE == 1
13
14 /* fatal type of error */
15 #define LTC_ARGCHK(x) assert((x))
16 #define LTC_ARGCHKVD(x) LTC_ARGCHK(x)
17
18 #elif ARGTYPE == 2
19
20 #define LTC_ARGCHK(x) if (!(x)) { fprintf(stderr, "\nwarning: ARGCHK failed at %s:%d\n", __FILE__, __LINE__); }
21 #define LTC_ARGCHKVD(x) LTC_ARGCHK(x)
22
23 #elif ARGTYPE == 3
24
25 #define LTC_ARGCHK(x)
26 #define LTC_ARGCHKVD(x) LTC_ARGCHK(x)
27
28 #elif ARGTYPE == 4
29
30 #define LTC_ARGCHK(x) if (!(x)) return CRYPT_INVALID_ARG;
31 #define LTC_ARGCHKVD(x) if (!(x)) return;
32
33 #endif
34
35
36 /* $Source: /cvs/libtom/libtomcrypt/src/headers/tomcrypt_argchk.h,v $ */
37 /* $Revision: 1.5 $ */
38 /* $Date: 2006/08/27 20:50:21 $ */