]> arthur.barton.de Git - netatalk.git/blobdiff - etc/afpd/main.c
Merge remote branch 'origin/master' into branch-allea
[netatalk.git] / etc / afpd / main.c
index e8365a2848770efd0366e0e78d78e77e0ab403cc..c549fa09a49349aaee6f4c5e24c6d6ca015b7bbd 100644 (file)
 #include <stdlib.h>
 #include <string.h>
 #include <signal.h>
-
 #include <sys/param.h>
 #include <sys/uio.h>
-#include <atalk/logger.h>
 #include <sys/time.h>
 #include <sys/socket.h>
 #include <sys/poll.h>
 #include <sys/wait.h>
 #include <sys/resource.h>
 
+#include <atalk/logger.h>
 #include <atalk/adouble.h>
-
-#include <netatalk/at.h>
 #include <atalk/compat.h>
 #include <atalk/dsi.h>
-#include <atalk/atp.h>
-#include <atalk/asp.h>
 #include <atalk/afp.h>
 #include <atalk/paths.h>
 #include <atalk/util.h>
 #include <atalk/server_child.h>
 #include <atalk/server_ipc.h>
+#include <atalk/errchk.h>
 #include <atalk/globals.h>
 
 #include "afp_config.h"
@@ -56,6 +52,7 @@ static char **argv = NULL;
 
 unsigned char  nologin = 0;
 struct afp_options default_options;
+
 static AFPConfig *configs;
 static server_child *server_children;
 static sig_atomic_t reloadconfig = 0;
@@ -133,11 +130,7 @@ static void fd_reset_listening_sockets(void)
 /* ------------------ */
 static void afp_goaway(int sig)
 {
-        AFPConfig *config;
-
-#ifndef NO_DDP
-    asp_kill(sig);
-#endif /* ! NO_DDP */
+    AFPConfig *config;
 
     switch( sig ) {
 
@@ -228,16 +221,16 @@ static int setlimits(void)
     struct rlimit rlim;
 
     if (getrlimit(RLIMIT_NOFILE, &rlim) != 0) {
-        LOG(log_error, logtype_afpd, "setlimits: %s", strerror(errno));
-        exit(1);
+        LOG(log_warning, logtype_afpd, "setlimits: reading current limits failed: %s", strerror(errno));
+        return -1;
     }
     if (rlim.rlim_cur != RLIM_INFINITY && rlim.rlim_cur < 65535) {
         rlim.rlim_cur = 65535;
         if (rlim.rlim_max != RLIM_INFINITY && rlim.rlim_max < 65535)
             rlim.rlim_max = 65535;
         if (setrlimit(RLIMIT_NOFILE, &rlim) != 0) {
-            LOG(log_error, logtype_afpd, "setlimits: %s", strerror(errno));
-            exit(1);
+            LOG(log_warning, logtype_afpd, "setlimits: increasing limits failed: %s", strerror(errno));
+            return -1;
         }
     }
     return 0;
@@ -393,9 +386,9 @@ int main(int ac, char **av)
     }
     pthread_sigmask(SIG_UNBLOCK, &sigs, NULL);
 
-    /* Register CNID  */
+    /* Initialize */
     cnid_init();
-
+    
     /* watch atp, dsi sockets and ipc parent/child file descriptor. */
 
     if (default_options.flags & OPTION_KEEPSESSIONS) {