);
fclose(fp);
- /* Now try to restart the service. This will not have the intended effect on Solaris, but who the hell uses Solaris anymore? */
+ /* Now try to restart the service. This will not have the intended effect on Solaris, but who uses Solaris anymore? */
rv = system("systemctl restart xinetd >/dev/null 2>&1");
if (rv != 0) {
rv = system("service xinetd restart >/dev/null 2>&1");
int curr;
char buf[1024];
char aaa[128];
- int relh = 0;
- int home = 0;
- char relhome[PATH_MAX]="";
char ctdldir[PATH_MAX]=CTDLDIR;
struct passwd *pw;
gid_t gid;
setup_type = atoi(aaa);
}
else if (!strncmp(argv[a], "-h", 2)) {
- relh=argv[a][2]!='/';
- if (!relh) {
- safestrncpy(ctdl_home_directory, &argv[a][2], sizeof ctdl_home_directory);
- } else {
- safestrncpy(relhome, &argv[a][2], sizeof relhome);
- }
- home = 1;
+ safestrncpy(ctdldir, &argv[a][2], sizeof ctdldir);
}
}
- calc_dirs_n_files(relh, home, relhome, ctdldir, 0);
- SetTitles();
+ if (chdir(ctdldir) != 0) {
+ fprintf(stderr, "sendcommand: %s: %s\n", ctdldir, strerror(errno));
+ exit(errno);
+ }
- enable_home = ( relh | home );
+ SetTitles();
/*
* Connect to the running Citadel server.