more uninitialized mutexes in rc.39

Christoph Badura bad at bsd.de
Mon Mar 5 17:11:36 EST 2007


Hey Carter,

here are the remaining places rc.40 where hash tables are allocated without
ArgusNewHashTable().

In the clients distribution:

clients/racount.c:98:struct ArgusHashTable ArgusSrcAddrTable, ArgusDstAddrTable;
clients/racount.c:135:      if ((ArgusSrcAddrTable.array = (struct ArgusHashTabl
clients/racount.c:139:      if ((ArgusDstAddrTable.array = (struct ArgusHashTabl

clients/rapath.c:72:struct ArgusHashTable ArgusHashTable;
clients/rapath.c:243:      if ((ArgusHashTable.array = (struct ArgusHashTableHdr **) ArgusCalloc (RABINS_HASHTABLESIZE,
clients/rapath.c:244:                                    sizeof (struct ArgusHashTableHdr *))) == NULL) {

In the server distribution:

argus/ArgusModeler.c:78:   if ((retn->ArgusHashTable = (struct ArgusHashTableStruct *) ArgusCalloc (1, sizeof (struct ArgusHashTableStruct))) == NULL)
argus/ArgusModeler.c:87:   pthread_mutex_init(&retn->ArgusHashTable->lock, NULL);
argus/ArgusModeler.c:172:         model->ArgusHashTable = NULL;

But, of course, the lock is not normally taken.

Thanks for looking into this!
--chris



More information about the argus mailing list