X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fgetty-generator%2Fgetty-generator.c;h=85600263f9cce42a8ce8310bb5488473ad580e7b;hb=07719a21b6425d378b36bb8d7f47ad5ec5296d28;hp=b2e4f52c3ca88ab55b0f051021c8d87d79632a60;hpb=a6903061530cac5fbaa99a080a93221c02c349f9;p=elogind.git diff --git a/src/getty-generator/getty-generator.c b/src/getty-generator/getty-generator.c index b2e4f52c3..85600263f 100644 --- a/src/getty-generator/getty-generator.c +++ b/src/getty-generator/getty-generator.c @@ -38,8 +38,8 @@ static int add_symlink(const char *fservice, const char *tservice) { assert(fservice); assert(tservice); - asprintf(&from, SYSTEM_DATA_UNIT_PATH "/%s", fservice); - asprintf(&to, "%s/getty.target.wants/%s", arg_dest, tservice); + from = strappend(SYSTEM_DATA_UNIT_PATH "/", fservice); + to = join(arg_dest,"/getty.target.wants/", tservice, NULL); if (!from || !to) { log_error("Out of memory"); @@ -99,20 +99,20 @@ int main(int argc, char *argv[]) { char *active; const char *j; - if (argc > 2) { - log_error("This program takes one or no arguments."); + if (argc > 1 && argc != 4) { + log_error("This program takes three or no arguments."); return EXIT_FAILURE; } + if (argc > 1) + arg_dest = argv[1]; + log_set_target(LOG_TARGET_SAFE); log_parse_environment(); log_open(); umask(0022); - if (argc > 1) - arg_dest = argv[1]; - if (detect_container(NULL) > 0) { log_debug("Automatically adding console shell.");