I am trying to adapt perdition-1.19-rc4 for use on Solaris 10, and have used what
may be some obscure options - these cause segv's. Simon Horman asked me to post
the patches I made to this list. These patches work for me, but it would be good
if someone more familiar with the code would have a look at them to see that they
are done properly.
My impression is that there is not much interest in using perdition on Solaris -
if you are interested in my experiences please contact me directly.
Cheers,
Doug Shearer
####################
perdition/options.c
segv when opt.ssl_passphrase_file is not specified and we are logging options
####################
diff -u perdition-1.19-rc4/perdition/options.c.orig perdition-1.19-rc4/perdition/options.c
--- perdition-1.19-rc4/perdition/options.c.orig Thu Mar 17 10:42:51 2011
+++ perdition-1.19-rc4/perdition/options.c Thu Mar 17 10:41:17 2011
@@ -1417,7 +1417,7 @@
BIN_OPT_STR(opt.ssl_no_client_cert_verify),
BIN_OPT_STR(opt.ssl_no_cn_verify),
opt.ssl_passphrase_fd,
- opt.ssl_passphrase_file,
+ OPT_STR(opt.ssl_passphrase_file),
opt.ssl_mask);
out[MAX_LINE_LENGTH - 1] = '\0';
####################################
perdition/db/ldap/perditiondb_ldap.c
segv when -p OUTGOING_PORT is specified on the command line (not in the .conf file) and
attrcount = 2 (so
returns[2] and therefore *port_str becomes undefined)
NOTE: I put in a check when attrcount = 1 also - I have no idea whether this can actually
happen
####################################
diff -u ./perdition-1.19-rc4/perdition/db/ldap/perditiondb_ldap.c.orig
./perdition-1.19-rc4/perdition/db/ldap/perditiondb_ldap.c
--- ./perdition-1.19-rc4/perdition/db/ldap/perditiondb_ldap.c.orig Thu Sep 9 08:31:02
2010
+++ ./perdition-1.19-rc4/perdition/db/ldap/perditiondb_ldap.c Tue May 3 11:43:44 2011
@@ -606,9 +606,9 @@
else {
if (returns[0])
*user_str = returns[0];
- if (returns[1])
+ if (attrcount > 1 && returns[1])
*server_str = returns[1];
- if (returns[2])
+ if (attrcount > 2 && returns[2])
*port_str = returns[2];
}
Show replies by date