diff --git a/configure.in b/configure.in index 45a4c7d0..557aa5a1 100644 --- a/configure.in +++ b/configure.in @@ -52,6 +52,7 @@ use_upnp=false; use_ssl=false STATIC_LIBS=no + CPPFLAGS="${CPPFLAGS} -g -Wall" dnl fix freebsd's broken (?) libpthread @@ -181,7 +182,8 @@ case $host in *freebsd*) CPPFLAGS="$CPPFLAGS -DFREEBSD";; *linux*) - CPPFLAGS="$CPPFLAGS -DNOT_HAVE_SA_LEN -DUSES_NETLINK -DHAVE_LINUX";; + CPPFLAGS="$CPPFLAGS -DNOT_HAVE_SA_LEN -DUSES_NETLINK -DHAVE_LINUX" + LDFLAGS="${LDFLAGS} -Wl,--export-dynamic";; *openbsd*) CPPFLAGS="$CPPFLAGS -DHAVE_BROKEN_RECVDSTADDR";; *darwin*) diff --git a/src/io.c b/src/io.c index 850e96bf..e6bdc8ff 100644 --- a/src/io.c +++ b/src/io.c @@ -2958,9 +2958,9 @@ int io_wait(IO_WAITHANDLE *pwait, uint32_t *ms) { #else ASSERT(pwait->max_fd); - FD_COPY(&pwait->read_fds, &pwait->result_read); - FD_COPY(&pwait->write_fds, &pwait->result_write); - FD_COPY(&pwait->err_fds, &pwait->result_err); + memcpy(&pwait->result_read, &pwait->read_fds, sizeof(pwait->read_fds)); + memcpy(&pwait->result_write, &pwait->write_fds, sizeof(pwait->write_fds)); + memcpy(&pwait->result_err, &pwait->err_fds, sizeof(pwait->err_fds)); if(!pwait->max_fd) { io_err_printf(IO_LOG_WARN,"No fds being monitored in io_wait\n"); diff --git a/src/rend-posix.c b/src/rend-posix.c index ef50c48d..d044d629 100644 --- a/src/rend-posix.c +++ b/src/rend-posix.c @@ -175,14 +175,7 @@ static mDNS_PlatformSupport PlatformStorage; // Stores this platform's globals mDNSexport const char ProgramName[] = "mDNSResponderPosix"; -static const char *gProgramName = ProgramName; -#if COMPILER_LIKES_PRAGMA_MARK -#pragma mark ***** Signals -#endif - -static volatile mDNSBool gReceivedSigUsr1; -static volatile mDNSBool gReceivedSigHup; static volatile mDNSBool gStopNow; // We support 4 signals. (2, now -- rp) @@ -226,9 +219,6 @@ static void HandleSigQuit(int sigraised) exit(0); } -#if COMPILER_LIKES_PRAGMA_MARK -#pragma mark ***** Parameter Checking -#endif static const char kDefaultServiceType[] = "_http._tcp."; static const char kDefaultServiceDomain[] = "local."; @@ -236,9 +226,6 @@ enum { kDefaultPortNumber = 80 }; -#if COMPILER_LIKES_PRAGMA_MARK -#pragma mark ***** Registration -#endif typedef struct PosixService PosixService; @@ -258,13 +245,13 @@ static void RegistrationCallback(mDNS *const m, ServiceRecordSet *const thisRegi switch (status) { case mStatus_NoError: - DPRINTF(E_DBG,L_REND,"Callback: %##s Name Registered", thisRegistration->RR_SRV.resrec.name->c); + DPRINTF(E_DBG,L_REND,"Callback: %##s Name Registered\n", thisRegistration->RR_SRV.resrec.name->c); // Do nothing; our name was successfully registered. We may // get more call backs in the future. break; case mStatus_NameConflict: - DPRINTF(E_DBG,L_REND,"Callback: %##s Name Conflict", thisRegistration->RR_SRV.resrec.name->c); + DPRINTF(E_DBG,L_REND,"Callback: %##s Name Conflict\n", thisRegistration->RR_SRV.resrec.name->c); // In the event of a conflict, this sample RegistrationCallback // just calls mDNS_RenameAndReregisterService to automatically @@ -282,7 +269,7 @@ static void RegistrationCallback(mDNS *const m, ServiceRecordSet *const thisRegi break; case mStatus_MemFree: - DPRINF(E_DBG,L_REND,"Callback: %##s Memory Free", thisRegistration->RR_SRV.resrec.name->c); + DPRINTF(E_DBG,L_REND,"Callback: %##s Memory Free\n", thisRegistration->RR_SRV.resrec.name->c); // When debugging is enabled, make sure that thisRegistration // is not on our gServiceList. @@ -302,7 +289,7 @@ static void RegistrationCallback(mDNS *const m, ServiceRecordSet *const thisRegi break; default: - DPRINTF(E_DBG,L_REND,"Callback: %##s Unknown Status %ld", thisRegistration->RR_SRV.resrec.name->c, status); + DPRINTF(E_DBG,L_REND,"Callback: %##s Unknown Status %ld\n", thisRegistration->RR_SRV.resrec.name->c, status); break; } } @@ -374,7 +361,7 @@ static void DeregisterOurServices(void) mDNS_DeregisterService(&mDNSStorage, &thisServ->coreServ); - DPRINF(E_DBG,L_REND, + DPRINTF(E_DBG,L_REND, "Deregistered service %d\n", thisServ->serviceID); } @@ -406,7 +393,7 @@ mDNSInterfaceID rend_get_interface_id(char *iface) { return mDNSInterface_Any; } -* +/* * rend_callback * * This is borrowed from the OSX rend client