Changeset 86
- Timestamp:
- Jan 20, 2007, 11:04:59 PM (18 years ago)
- Location:
- trunk
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/sh_error.h
r27 r86 117 117 void sh_error_only_stderr (int flag); 118 118 119 /* facilities unsafe for closeall() 120 */ 121 void sh_error_enable_unsafe (int flag); 122 119 123 /* set syslog facility 120 124 */ -
trunk/include/sh_gpg.h
r1 r86 27 27 int sh_gpg_check_sign (long file_1, long file_2, int what); 28 28 29 /* log successful startup 30 */ 31 void sh_gpg_log_startup (); 32 29 33 #endif 30 34 -
trunk/src/samhain.c
r84 r86 1443 1443 1444 1444 #if (defined(WITH_GPG) || defined(WITH_PGP)) 1445 /* do nothing -- we exit earlier if error */ 1445 /* log startup */ 1446 sh_gpg_log_startup (); 1446 1447 #else 1447 1448 sh_error_handle ((-1), FIL__, __LINE__, 0, MSG_START_1H, … … 1465 1466 { 1466 1467 #if (defined(WITH_GPG) || defined(WITH_PGP)) 1467 /* do nothing -- we exit earlier if error */ 1468 /* log startup */ 1469 sh_gpg_log_startup (); 1468 1470 #else 1469 1471 sh_error_handle ((-1), FIL__, __LINE__, 0, MSG_START_2H, … … 1476 1478 { 1477 1479 #if (defined(WITH_GPG) || defined(WITH_PGP)) 1478 /* do nothing -- we exit earlier if error */ 1480 /* log startup */ 1481 sh_gpg_log_startup (); 1479 1482 #else 1480 1483 sh_error_handle ((-1), FIL__, __LINE__, 0, MSG_START_1H, -
trunk/src/sh_error.c
r65 r86 110 110 int OnlyStderr = S_TRUE; 111 111 112 /* --- Enable facilities not safe for closeall(). --- 113 */ 114 int enableUnsafe = S_FALSE; 112 115 113 116 /********************************************* … … 145 148 { 146 149 OnlyStderr = flag; 150 return; 151 } 152 153 void sh_error_enable_unsafe (int flag) 154 { 155 enableUnsafe = flag; 147 156 return; 148 157 } … … 1026 1035 /* Full logging enabled. 1027 1036 */ 1028 if (OnlyStderr == BAD) /* full error logging enabled */1037 if (OnlyStderr == S_FALSE) /* full error logging enabled */ 1029 1038 { 1030 1039 … … 1083 1092 class != AUD) 1084 1093 { 1085 if (database_block == 0 )1094 if (database_block == 0 && enableUnsafe == S_TRUE) 1086 1095 { 1087 1096 /* truncates; query_max is 16k … … 1209 1218 ) 1210 1219 { 1211 if (prelude_block == 0 )1220 if (prelude_block == 0 && enableUnsafe == S_TRUE) 1212 1221 { 1213 1222 /* will truncate to 998 bytes -
trunk/src/sh_gpg.c
r34 r86 115 115 116 116 #ifdef GPG_HASH 117 117 118 static int sh_gpg_checksum (SL_TICKET checkfd, int flag) 118 119 { … … 202 203 } 203 204 #endif 205 206 struct startup_info { 207 long line; 208 char * program; 209 long uid; 210 char * path; 211 char * key_uid; 212 char * key_id; 213 }; 214 215 static struct startup_info startInfo = { 0, NULL, 0, NULL, NULL, NULL }; 216 217 void sh_gpg_log_startup () 218 { 219 if (startInfo.program != NULL) 220 { 221 sh_error_handle ((-1), FIL__, startInfo.line, 0, MSG_START_GH, 222 startInfo.program, startInfo.uid, 223 startInfo.path, 224 startInfo.key_uid, startInfo.key_id); 225 } 226 return; 227 } 228 229 static void sh_gpg_fill_startup (long line, char * program, long uid, char * path, 230 char * key_uid, char * key_id) 231 { 232 startInfo.line = line; 233 startInfo.program = sh_util_strdup(program); 234 startInfo.uid = uid; 235 startInfo.path = sh_util_strdup(path); 236 startInfo.key_uid = sh_util_strdup(key_uid); 237 startInfo.key_id = sh_util_strdup(key_id); 238 return; 239 } 204 240 205 241 static FILE * sh_gpg_popen (sh_gpg_popen_t *source, int fd, … … 968 1004 { 969 1005 tmp = sh_util_safe_name(gp.conf_id); 970 sh_error_handle ((-1), FIL__, __LINE__, 0, MSG_START_GH, 1006 sh_gpg_fill_startup ( 1007 /* sh_error_handle ((-1), FIL__, __LINE__, 0, MSG_START_GH, */ 971 1008 sh.prg_name, sh.real.uid, 972 1009 (sh.flag.hidefile == S_TRUE) ? … … 995 1032 { 996 1033 tmp = sh_util_safe_name(gp.conf_id); 997 sh_error_handle ((-1), FIL__, __LINE__, 0, MSG_START_GH, 1034 sh_gpg_fill_startup (__LINE__, 1035 /* sh_error_handle ((-1), FIL__, __LINE__, 0, MSG_START_GH, */ 998 1036 sh.prg_name, sh.real.uid, 999 1037 (sh.flag.hidefile == S_TRUE) ? -
trunk/src/sh_prelude.c
r40 r86 967 967 } 968 968 969 969 /* Allow initialization of prelude; to be called 970 * after forking the daemon. Delays heartbeat 971 * start after config read until it is safe. 972 */ 970 973 void sh_prelude_reset(void) 971 974 { -
trunk/src/sh_unix.c
r84 r86 1880 1880 } 1881 1881 1882 sh_error_enable_unsafe (S_TRUE); 1882 1883 #if defined(HAVE_LIBPRELUDE) 1883 1884 sh_prelude_reset (); … … 1913 1914 { 1914 1915 sh_unix_closeall(3, -1); /* if not daemon */ 1916 sh_error_enable_unsafe (S_TRUE); 1915 1917 #if defined(HAVE_LIBPRELUDE) 1916 1918 sh_prelude_reset (); -
trunk/test/testrc_2.in
r34 r86 1 -----BEGIN PGP SIGNED MESSAGE----- 2 Hash: SHA1 3 1 4 ##################################################################### 2 5 # … … 103 106 #AddToDBHash=log_msg 104 107 # AddToDBHash=log_host 105 108 UsePersistent = True 106 109 107 110 [Utmp] … … 201 204 202 205 [Clients] 206 -----BEGIN PGP SIGNATURE----- 207 Version: GnuPG v1.4.2.2 (GNU/Linux) 208 209 iD8DBQFFsTXBGq0myA9XH2wRAju6AKDsNT3cVYHVs4z+ZHdFgPwOdvESewCfcIAY 210 RsnSZyhwBGtlA+rf35/gcQw= 211 =Rb0p 212 -----END PGP SIGNATURE----- -
trunk/test/testrun_2c.sh
r85 r86 24 24 CLIENT_BUILDOPTS="--quiet $TRUST --prefix=$PW_DIR --with-tmp-dir=$PW_DIR --localstatedir=$PW_DIR --enable-network=client --disable-mail --disable-external-scripts --enable-login-watch --enable-xml-log --enable-db-reload --with-logserver=localhost --with-config-file=REQ_FROM_SERVER$PW_DIR/testrc_2 --with-data-file=REQ_FROM_SERVER$PW_DIR/.samhain_file --with-log-file=$PW_DIR/.samhain_log --with-pid-file=$PW_DIR/.samhain_lock"; export CLIENT_BUILDOPTS 25 25 26 MAXTEST=3; export MAXTEST 27 28 testrun_threesockets () { 29 30 GPG="$1" 31 32 [ -z "$verbose" ] || { 33 echo; 34 echo Working directory: $PW_DIR; echo MAKE is $MAKE; echo GPG is $GPG; 35 echo; 36 } 37 38 [ -z "$verbose" ] || { echo; echo "${S}Building client and server${E}"; echo; } 39 40 if test -r "Makefile"; then 41 $MAKE distclean 42 fi 43 44 ${TOP_SRCDIR}/configure --with-gpg=${GPG} --with-checksum=no ${SERVER_BUILDOPTS} >/dev/null 2>&1 45 46 if test x$? = x0; then 47 [ -z "$verbose" ] || log_msg_ok "configure..."; 48 $MAKE > /dev/null 2>>test_log 49 if test x$? = x0; then 50 [ -z "$verbose" ] || log_msg_ok "make..."; 51 else 52 [ -z "$quiet" ] && log_msg_fail "make..."; 53 return 1 54 fi 55 else 56 [ -z "$quiet" ] && log_msg_fail "configure..."; 57 return 1 58 fi 59 60 rm -f ./.samhain_file 61 rm -f ./.samhain_log 62 rm -f ./.samhain_lock 63 rm -f ./rc.${SH_LOCALHOST} 64 rm -f ./file.${SH_LOCALHOST} 65 66 cp ${SCRIPTDIR}/testrc_2.in testrc_2 67 68 ORIGINAL="DatabaseSeverity=none" 69 REPLACEMENT="DatabaseSeverity=warn" 70 ex -s $RCFILE <<EOF 71 %s/$ORIGINAL/$REPLACEMENT/g 72 wq 73 EOF 74 75 ORIGINAL="MailSeverity=none" 76 REPLACEMENT="MailSeverity=crit" 77 ex -s $RCFILE <<EOF 78 %s/$ORIGINAL/$REPLACEMENT/g 79 wq 80 EOF 81 return 0 82 } 83 26 84 check_mysql_log () { 27 85 DATE="$1" … … 58 116 return 0 59 117 } 60 61 MAXTEST=2; export MAXTEST62 118 63 119 testrun2c () … … 127 183 PID=`cat .samhain_lock` 128 184 kill $PID 185 else 186 log_fail 2 ${MAXTEST} "Three sockets open"; 187 fi 188 # 189 GPG=`find_path gpg` 190 if [ -z "$GPG" ]; then 191 log_skip 1 $MAXTEST 'gpg not found in $PATH' 192 else 193 eval "$GPG" --list-keys 0F571F6C >/dev/null 2>/dev/null 194 if [ $? -ne 0 ]; then 195 log_skip 1 $MAXTEST 'public PGP key 0x0F571F6C not present' 196 else 197 testrun_threesockets "$GPG" 198 199 if [ -f ./yule ]; then 200 ./yule -D >/dev/null 2>>test_log 201 five_sec_sleep 202 netstat -pant 2>/dev/null | grep 49777 | grep yule >/dev/null 2>&1 203 if [ $? -ne 0 ]; then 204 [ -z "$quiet" ] && log_fail 3 ${MAXTEST} "Three sockets open (gpg)"; 205 else 206 NSOCK=`netstat -pand 2>/dev/null | grep STREAM | grep yule | wc -l` 207 if [ $NSOCK -ne 2 ]; then 208 [ -z "$quiet" ] && log_fail 3 ${MAXTEST} "Three sockets open (gpg)"; 209 netstat -pand 2>/dev/null | grep yule 210 else 211 [ -z "$quiet" ] && log_ok 3 ${MAXTEST} "Three sockets open (gpg)"; 212 fi 213 fi 214 PID=`cat .samhain_lock` 215 kill $PID 216 else 217 log_fail 3 ${MAXTEST} "Three sockets open (gpg)"; 218 fi 219 fi 129 220 fi 130 221 #
Note:
See TracChangeset
for help on using the changeset viewer.