(empfile, teldir, motdfil, downfil, disablefil, telfil, annfil)
(banfil, authfil, timestampfil): Make file names relative to DATADIR. (main): emp_server and files change to the data directory. fairland has to write newcap_script to the initial current directory, so it keeps it and makes file names relative to DATADIR absolute. (fixup_files): Nothing to do, remove. This fixes the following bug: fixup_files() formed file names by appending ep->name instead of the base name of ep->file to datadir. Thus, fixup_files() changed file names even when datadir had the compiled-in value. When emp_config() couldn't open econfig, it failed to call fixup_files(), and different file names got used. Note that with this revision the file names revert to the names used before fixup_files() was introduced. Closes #1146080. (print_config): Printing file names as comments is not really useful, remove. (otherfiles, ofiles): Unused, remove. (emp_config, main): Previously, pconfig had to call emp_config() even when it didn't want to read econfig, just to run fixup_files(). This is no longer necessary. Simplify.
This commit is contained in:
parent
1583d0c6a2
commit
29da4b6cf4
8 changed files with 49 additions and 92 deletions
|
@ -37,6 +37,7 @@
|
|||
#if !defined(_WIN32)
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
@ -187,6 +188,10 @@ main(int argc, char **argv)
|
|||
|
||||
if (emp_config(config_file) < 0)
|
||||
exit(EXIT_FAILURE);
|
||||
if (chdir(datadir)) {
|
||||
fprintf(stderr, "Can't chdir to %s (%s)\n", datadir, strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
#if defined(_WIN32)
|
||||
if (install_service_set)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue