#include <sys/wait.h>
#include <sys/uio.h>
#include <sys/un.h>
-#define _XPG4_2 1
+// #define _XPG4_2 1
#include <sys/socket.h>
#include <stdio.h>
#include <time.h>
#include <atalk/cnid_dbd_private.h>
#include <atalk/paths.h>
#include <atalk/volinfo.h>
+#include <atalk/compat.h>
#include "usockfd.h"
int err = 0;
int debug = 0;
int ret;
- char *loglevel = NULL;
- char *logfile = NULL;
sigset_t set;
struct volinfo *volinfo;
set_processname("cnid_metad");
- while (( cc = getopt( argc, argv, "ds:p:h:u:g:l:f:")) != -1 ) {
+ while (( cc = getopt( argc, argv, "vVds:p:h:u:g:l:f:")) != -1 ) {
switch (cc) {
+ case 'v':
+ case 'V':
+ printf("cnid_metad (Netatalk %s)\n", VERSION);
+ return -1;
case 'd':
debug = 1;
break;
case 's':
dbdpn = strdup(optarg);
break;
- case 'l':
- loglevel = strdup(optarg);
- break;
- case 'f':
- logfile = strdup(optarg);
- break;
default:
err++;
break;
}
}
+ /* Check for PID lockfile */
+ if (check_lockfile("cnid_metad", _PATH_CNID_METAD_LOCK))
+ return -1;
+
if (!debug && daemonize(0, 0) != 0)
exit(EXITERR_SYS);
- /* Check PID lockfile and become a daemon */
- switch(check_lockfile("cnid_metad", _PATH_CNID_METAD_LOCK)) {
- case 0:
- break;
- default:
- exit(EXITERR_SYS);
- }
+ /* Create PID lockfile */
+ if (create_lockfile("cnid_metad", _PATH_CNID_METAD_LOCK))
+ return -1;
- if (loglevel) {
- strlcpy(logconfig + 8, loglevel, 13);
- free(loglevel);
- strcat(logconfig, " ");
- }
- if (logfile) {
- strlcat(logconfig, logfile, MAXPATHLEN);
- free(logfile);
- }
- setuplog(logconfig);
+ setuplog("default:note", NULL);
if (err) {
LOG(log_error, logtype_cnid, "main: bad arguments");