Rename controlcookie file to pidfile.
This commit is contained in:
parent
c64f64b875
commit
a05fa7f882
3 changed files with 40 additions and 40 deletions
|
@ -33,7 +33,7 @@
|
|||
#include "xalloc.h"
|
||||
|
||||
char controlcookie[65];
|
||||
extern char *controlcookiename;
|
||||
extern char *pidfilename;
|
||||
|
||||
static bool control_return(connection_t *c, int type, int error) {
|
||||
return send_request(c, "%d %d %d", CONTROL, type, error);
|
||||
|
@ -135,16 +135,16 @@ bool init_control(void) {
|
|||
bin2hex(controlcookie, controlcookie, sizeof controlcookie / 2);
|
||||
controlcookie[sizeof controlcookie - 1] = 0;
|
||||
|
||||
FILE *f = fopen(controlcookiename, "w");
|
||||
FILE *f = fopen(pidfilename, "w");
|
||||
if(!f) {
|
||||
logger(LOG_ERR, "Cannot write control socket cookie file %s: %s", controlcookiename, strerror(errno));
|
||||
logger(LOG_ERR, "Cannot write control socket cookie file %s: %s", pidfilename, strerror(errno));
|
||||
return false;
|
||||
}
|
||||
|
||||
#ifdef HAVE_FCHMOD
|
||||
fchmod(fileno(f), 0600);
|
||||
#else
|
||||
chmod(controlcookiename, 0600);
|
||||
chmod(pidfilename, 0600);
|
||||
#endif
|
||||
|
||||
fprintf(f, "%s %s %d\n", controlcookie, myport, getpid());
|
||||
|
@ -154,5 +154,5 @@ bool init_control(void) {
|
|||
}
|
||||
|
||||
void exit_control(void) {
|
||||
unlink(controlcookiename);
|
||||
unlink(pidfilename);
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ static bool show_version = false;
|
|||
|
||||
static char *name = NULL;
|
||||
static char *identname = NULL; /* program name for syslog */
|
||||
static char *controlcookiename = NULL; /* cookie file location */
|
||||
static char *pidfilename = NULL; /* pid file location */
|
||||
static char controlcookie[1024];
|
||||
char *netname = NULL;
|
||||
char *confbase = NULL;
|
||||
|
@ -56,7 +56,7 @@ static struct option const long_options[] = {
|
|||
{"net", required_argument, NULL, 'n'},
|
||||
{"help", no_argument, NULL, 1},
|
||||
{"version", no_argument, NULL, 2},
|
||||
{"controlcookie", required_argument, NULL, 5},
|
||||
{"pidfile", required_argument, NULL, 5},
|
||||
{NULL, 0, NULL, 0}
|
||||
};
|
||||
|
||||
|
@ -67,11 +67,11 @@ static void usage(bool status) {
|
|||
else {
|
||||
printf("Usage: %s [options] command\n\n", program_name);
|
||||
printf("Valid options are:\n"
|
||||
" -c, --config=DIR Read configuration options from DIR.\n"
|
||||
" -n, --net=NETNAME Connect to net NETNAME.\n"
|
||||
" --controlcookie=FILENAME Read control socket from FILENAME.\n"
|
||||
" --help Display this help and exit.\n"
|
||||
" --version Output version information and exit.\n"
|
||||
" -c, --config=DIR Read configuration options from DIR.\n"
|
||||
" -n, --net=NETNAME Connect to net NETNAME.\n"
|
||||
" --pidfile=FILENAME Read control cookie from FILENAME.\n"
|
||||
" --help Display this help and exit.\n"
|
||||
" --version Output version information and exit.\n"
|
||||
"\n"
|
||||
"Valid commands are:\n"
|
||||
" start Start tincd.\n"
|
||||
|
@ -130,7 +130,7 @@ static bool parse_options(int argc, char **argv) {
|
|||
break;
|
||||
|
||||
case 5: /* open control socket here */
|
||||
controlcookiename = xstrdup(optarg);
|
||||
pidfilename = xstrdup(optarg);
|
||||
break;
|
||||
|
||||
case '?':
|
||||
|
@ -279,16 +279,16 @@ static void make_names(void) {
|
|||
xasprintf(&confbase, "%s", installdir);
|
||||
}
|
||||
}
|
||||
if(!controlcookiename)
|
||||
xasprintf(&controlcookiename, "%s/cookie", confbase);
|
||||
if(!pidfilename)
|
||||
xasprintf(&pidfilename, "%s/pid", confbase);
|
||||
RegCloseKey(key);
|
||||
if(*installdir)
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
if(!controlcookiename)
|
||||
xasprintf(&controlcookiename, "%s/run/%s.cookie", LOCALSTATEDIR, identname);
|
||||
if(!pidfilename)
|
||||
xasprintf(&pidfilename, "%s/run/%s.pid", LOCALSTATEDIR, identname);
|
||||
|
||||
if(netname) {
|
||||
if(!confbase)
|
||||
|
@ -482,13 +482,13 @@ int main(int argc, char *argv[], char *envp[]) {
|
|||
* ancestors are writable only by trusted users, which we don't verify.
|
||||
*/
|
||||
|
||||
FILE *f = fopen(controlcookiename, "r");
|
||||
FILE *f = fopen(pidfilename, "r");
|
||||
if(!f) {
|
||||
fprintf(stderr, "Could not open control socket cookie file %s: %s\n", controlcookiename, strerror(errno));
|
||||
fprintf(stderr, "Could not open pid file %s: %s\n", pidfilename, strerror(errno));
|
||||
return 1;
|
||||
}
|
||||
if(fscanf(f, "%1024s %128s %20d", controlcookie, port, &pid) != 3) {
|
||||
fprintf(stderr, "Could not parse control socket cookie file %s\n", controlcookiename);
|
||||
fprintf(stderr, "Could not parse pid file %s\n", pidfilename);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
40
src/tincd.c
40
src/tincd.c
|
@ -89,7 +89,7 @@ bool use_logfile = false;
|
|||
|
||||
char *identname = NULL; /* program name for syslog */
|
||||
char *logfilename = NULL; /* log file location */
|
||||
char *controlcookiename = NULL;
|
||||
char *pidfilename = NULL;
|
||||
char **g_argv; /* a copy of the cmdline arguments */
|
||||
|
||||
static int status = 1;
|
||||
|
@ -106,7 +106,7 @@ static struct option const long_options[] = {
|
|||
{"chroot", no_argument, NULL, 'R'},
|
||||
{"user", required_argument, NULL, 'U'},
|
||||
{"logfile", optional_argument, NULL, 4},
|
||||
{"controlcookie", required_argument, NULL, 5},
|
||||
{"pidfile", required_argument, NULL, 5},
|
||||
{NULL, 0, NULL, 0}
|
||||
};
|
||||
|
||||
|
@ -122,18 +122,18 @@ static void usage(bool status) {
|
|||
program_name);
|
||||
else {
|
||||
printf("Usage: %s [option]...\n\n", program_name);
|
||||
printf( " -c, --config=DIR Read configuration options from DIR.\n"
|
||||
" -D, --no-detach Don't fork and detach.\n"
|
||||
" -d, --debug[=LEVEL] Increase debug level or set it to LEVEL.\n"
|
||||
" -n, --net=NETNAME Connect to net NETNAME.\n"
|
||||
" -L, --mlock Lock tinc into main memory.\n"
|
||||
" --logfile[=FILENAME] Write log entries to a logfile.\n"
|
||||
" --controlcookie=FILENAME Write control socket cookie to FILENAME.\n"
|
||||
" --bypass-security Disables meta protocol security, for debugging.\n"
|
||||
" -o [HOST.]KEY=VALUE Set global/host configuration value.\n"
|
||||
" -R, --chroot chroot to NET dir at startup.\n"
|
||||
" -U, --user=USER setuid to given USER at startup.\n" " --help Display this help and exit.\n"
|
||||
" --version Output version information and exit.\n\n");
|
||||
printf( " -c, --config=DIR Read configuration options from DIR.\n"
|
||||
" -D, --no-detach Don't fork and detach.\n"
|
||||
" -d, --debug[=LEVEL] Increase debug level or set it to LEVEL.\n"
|
||||
" -n, --net=NETNAME Connect to net NETNAME.\n"
|
||||
" -L, --mlock Lock tinc into main memory.\n"
|
||||
" --logfile[=FILENAME] Write log entries to a logfile.\n"
|
||||
" --pidfile=FILENAME Write PID and control socket cookie to FILENAME.\n"
|
||||
" --bypass-security Disables meta protocol security, for debugging.\n"
|
||||
" -o [HOST.]KEY=VALUE Set global/host configuration value.\n"
|
||||
" -R, --chroot chroot to NET dir at startup.\n"
|
||||
" -U, --user=USER setuid to given USER at startup.\n" " --help Display this help and exit.\n"
|
||||
" --version Output version information and exit.\n\n");
|
||||
printf("Report bugs to tinc@tinc-vpn.org.\n");
|
||||
}
|
||||
}
|
||||
|
@ -215,7 +215,7 @@ static bool parse_options(int argc, char **argv) {
|
|||
break;
|
||||
|
||||
case 5: /* open control socket here */
|
||||
controlcookiename = xstrdup(optarg);
|
||||
pidfilename = xstrdup(optarg);
|
||||
break;
|
||||
|
||||
case '?':
|
||||
|
@ -256,8 +256,8 @@ static void make_names(void) {
|
|||
else
|
||||
xasprintf(&confbase, "%s", installdir);
|
||||
}
|
||||
if(!controlcookiename)
|
||||
xasprintf(&controlcookiename, "%s/cookie", confbase);
|
||||
if(!pidfilename)
|
||||
xasprintf(&pidfilename, "%s/pid", confbase);
|
||||
}
|
||||
RegCloseKey(key);
|
||||
if(*installdir)
|
||||
|
@ -268,8 +268,8 @@ static void make_names(void) {
|
|||
if(!logfilename)
|
||||
xasprintf(&logfilename, LOCALSTATEDIR "/log/%s.log", identname);
|
||||
|
||||
if(!controlcookiename)
|
||||
xasprintf(&controlcookiename, LOCALSTATEDIR "/run/%s.cookie", identname);
|
||||
if(!pidfilename)
|
||||
xasprintf(&pidfilename, LOCALSTATEDIR "/run/%s.pid", identname);
|
||||
|
||||
if(netname) {
|
||||
if(!confbase)
|
||||
|
@ -285,7 +285,7 @@ static void make_names(void) {
|
|||
static void free_names(void) {
|
||||
if (identname) free(identname);
|
||||
if (netname) free(netname);
|
||||
if (controlcookiename) free(controlcookiename);
|
||||
if (pidfilename) free(pidfilename);
|
||||
if (logfilename) free(logfilename);
|
||||
if (confbase) free(confbase);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue