Just to get things moving along... repval.c lines 829-829 Type: E Priority: 1 Comment: what doe this function do and why?
ipfd.c line 63 Type: T Priority: 3 Comment: calling the variable "pid" is a bit misleading, it is the parent pid ipfd.c lines72-78 Type: T Priority: 2 Comment: Consider moving this before the fork and exit so that any error messages have synchronised output with the program's execution. Additionally, you may want to explicitly close STDIN_FILENO before doing the open on /dev/null, although you still need the if() and dup2 even if you do this. ipfd.c line 72 Type: T Priority: 3 Comment: At 54 you have a #define for the name of sh, why not one for /dev/null too? ipfd.c line 84 Type: T Priority: 3 Comment: Why is this even necessary? It seems dangerous.. ipfd.c line 272 Type: T Priority: 1 Comment: While umem_free(NULL,0) is allowed, if we get here from line 158, then I'm expecting the call to be umem_free(NULL,>0)... ipfd.c line 273 Type: T Priority: 1 Comment: If we get here from 158 then aren't we using v before it has been initialised? ipfd.c line 375-378 Type: T Priority: 1 Comment: If we get here from 347, there is potential for many of these calls to be made with uninitialised variables. Please make sure all of the pointers are initialised to NULL at 338-341. ipfd.c line 396-399 Type: T Priority: 1 Comment: I suspect that if some of these succeed then you need to be making appropriate 'undo' calls if you want to exit gracefully. ipfd.c line 402-543 Type: T Priority: 2 Comment: This appears to be a busy-wait loop and of concern is that there doesn't appear to be anything to moderate the looping. Consider adding in a delay/pause/sleep for a short period of time, if only so that syslog doesn't get spam'd with messages. ipfd.c line 538-541 Type: T Priority: 2 Comment: Somehow I don't think that this syslog() with the accompanying comment is an adequate "do something"... ipfd.c Type: T Priority: 3 Comments: Doing a "return (-1)" from main() doesn't make a whole lot of sense because $? in sh is an unsigned value of 0-255. See wait(3c). And as an illustrated example: $ sh $ exit -1 -1: bad number $ echo $? 1 $ sh $ exit 255 $ echo $? 255