Files
2007-01-22 23:37:12 +00:00

120 lines
4.1 KiB
Plaintext

01: Currently the NetMail agents signal handling for SIGHUP is not
fully implemented. We need to establish uniform signal handling
for SIGHUP, SIGUSR1 and SIGUSR2 as appropriate.
02: An MDBPAM driver would be more appropriate than the simple MDBFIle
driver.
03: The MDBFile driver is not multi-app multi-thread safe for read and
write access.
04: The anti-virus agent needs to use an open source anti-virus engine
as an example.
05: Add backwards API compatibility for old SDK based components.
06: Instrument use of OpenLDAP in place of our old LDAP library.
07: Run as non-root user.
08: src/agents/nmap/nmapc.h is empty
09: The managed client library needs to use the connection manager library.
10: We need to identify and resolve 'fixme' comments.
10: The connection management library needs:
a: exclusive BUFSIZE defintion as it is defined in most private
header files.
b: exclusive MTU definition as it is defined in most private
header files.
11: Source code scrubbing definition:
: DOS2Unix the source and make files.
: Replace TAB characters with 4 spaces.
: Ensure that the first directive in the source files is:
#include <config.h>
: Replace BUFSIZE with CONN_BUFSIZE as defined in connio.h
: Remove BUFSIZE definitions from source files.
: Replace MTU with CONN_TCP_MTU as defined in connio.h
: Remove MTU definitions from source files.
: Remove NMLOGID_H_NEED_LOGGING_KEY and NMLOGID_H_NEED_LOGGING_CERT
as they are now handled by the logging library.
: Re-format the source files.
: Defines should be grouped together; preferrable in the private
header file as appropriate.
: The ChopNL macro is repeatedly defined; this definition exists in
connio.h as CHOP_NEWLINE; convert usage.
Should this macro be in the cross platform headers?
: The SetPtrToValue macro is repeatedly defined across binaries;
however, it does not appear in any source file?
This definition exists in connio.h at this time as
SET_POINTER_TO_VALUE.
Should this macro be retained in the cross platform headers?
: Strucuture definitions should be grouped together; preferrably in
the private header file as appropriate.
: Move global variables to a binary name based structure and:
If single source file; leave structure definition in that file.
If multiple source files; move structure definition to the
private header file; setup an extern of the structue which
should be in the main source file.
Globals for thread ID's are commonly defined as 'int' and not
XplThreadID. Convert definitions such as:
int Tid;
int TGid;
to:
struct {
XplThreadID main;
XplThreadID group;
} id;
Adjust global variable names and usage appropriately.
: Base64Chars[], DecodeBase64() and EncodeBase64() are commonly
occurring in the binaries. Should this be moved to a utility
library?
: Remove inappropriate code comments and reformat those left behind
as directed.
: Convert BUG comments to fixme.
: For defined strings; use sizeof(string) - 1 in place of a defined length.
: Remove old connection i/o handling routines and definitions as
directed (using little optimizations along the way?):
XPLIPReadSSL
XPLIPWriteSSL
IOFuncs
DoNMAPWrite
DoNMAPRead
DoClientWrite
DoClientRead
FlushClient
SendClient
SendNMAPServer
GetNMAPAnswer
GetNMAPAnswerLen
ConnectUserToNMAPServer
EndClientConnection
12: We need to resolve PRODUCT_VERSION definitions and use.
13: Improve client connection state processing