Comparing files signal.c and D:\BINDNT\SRC\PORT\WINNT\LIBBIND\SIGNAL.C
***** signal.c
/* 
 * Simple hash into sigactions array 
 */
#define MODSIZ 19
#define MOD(x) x % MODSIZ

static struct sigaction sigactions[MODSIZ];
static int procmask = 0;
***** D:\BINDNT\SRC\PORT\WINNT\LIBBIND\SIGNAL.C
/* 
 * (very) simple hash into sigactions array 
 */
#define MOD 13

static struct sigaction sigactions[MOD];
static int procmask = 0;
*****

***** signal.c
        procmask = 0;
        memset(sigactions, 0, sizeof(struct sigaction) * MODSIZ);

***** D:\BINDNT\SRC\PORT\WINNT\LIBBIND\SIGNAL.C
        procmask = 0;
        memset(sigactions, 0, sizeof(struct sigaction) * MOD);

*****

***** signal.c
        {
                if(!sigactions[MOD(signal)].sa_handler)
                {
***** D:\BINDNT\SRC\PORT\WINNT\LIBBIND\SIGNAL.C
        {
                if(!sigactions[signal % MOD].sa_handler)
                {
*****

***** signal.c
                {
                        ntPrintf(15, "Invoking signal handler for %s\n", signame(signal));
                        sigactions[MOD(signal)].sa_handler();
                        rc = 0;
***** D:\BINDNT\SRC\PORT\WINNT\LIBBIND\SIGNAL.C
                {
                        sigactions[signal % MOD].sa_handler();
                        rc = 0;
*****

***** signal.c
        {
                memcpy(oact, &sigactions[MOD(sig)], sizeof(struct sigaction));
                rc = 0;
***** D:\BINDNT\SRC\PORT\WINNT\LIBBIND\SIGNAL.C
        {
                memcpy(oact, &sigactions[sig % MOD], sizeof(struct sigaction));
                rc = 0;
*****

***** signal.c
        {
                int i = MOD(sig);
                memcpy(&sigactions[MOD(sig)], act, sizeof(struct sigaction));
                ntPrintf(9, "Set sigaction for %s to %p in index %d\n", signame(sig), sigactions[MOD(sig)].sa_handler, MOD(sig)
;
                rc = 0;
***** D:\BINDNT\SRC\PORT\WINNT\LIBBIND\SIGNAL.C
        {
                int i = sig % MOD;
                memcpy(&sigactions[i], act, sizeof(struct sigaction));
                ntPrintf(9, "Set sigaction for %s to %p in index %d\n", signame(sig), sigactions[sig % MOD].sa_handler, i);
                rc = 0;
*****

