freebsd-ports/net-mgmt/annextools/files/patch-erpcd::session_dbunx.c
Bruce M Simpson 94886678c1 Add the Xylogics/Bay Networks/Nortel Networks Annex administration suite.
Allows the Annex to be administered from a FreeBSD host, rather than via
the console port. Tested with a MicroAnnex-XL 16 port device.

Reviewed by:	edwin
Approved by:	jake (mentor)
2003-09-25 19:49:31 +00:00

26 lines
816 B
C

--- erpcd/session_dbunx.c.orig Wed Oct 15 13:50:46 1997
+++ erpcd/session_dbunx.c Thu Sep 18 20:10:32 2003
@@ -117,7 +117,11 @@
key_t sem_key = 0; /* semaphore key */
int Asemid; /* Access semaphore id */
+#if defined(__FreeBSD__)
+int ctlinit;
+#else
union semun ctlinit; /* arg struct for semctl */
+#endif
/* sembuf elements: index, op, flag */
struct sembuf sopwait = {0,-1, SEM_UNDO}; /* wait for semaphore */
struct sembuf soppost = {0, 1, SEM_UNDO}; /* set value to available */
@@ -290,7 +294,11 @@
return errno;
}
}
+#if defined(__FreeBSD__)
+ ctlinit = 1;
+#else
ctlinit.val = 1;
+#endif
if (semctl(Asemid, 0, SETVAL, ctlinit) == -1) {
#ifdef USE_SYSLOG
syslog(LOG_CRIT, "%s: Set semaphore, semctl error %d. No database access.", appname, errno);