chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
sd-journal: check if the pointers passed are the same
[elogind.git]
/
src
/
getty-generator
/
getty-generator.c
diff --git
a/src/getty-generator/getty-generator.c
b/src/getty-generator/getty-generator.c
index b2e4f52c3ca88ab55b0f051021c8d87d79632a60..4b7a60a4ecef0da55a5302df22cedf2c9da82be9 100644
(file)
--- a/
src/getty-generator/getty-generator.c
+++ b/
src/getty-generator/getty-generator.c
@@
-28,6
+28,7
@@
#include "mkdir.h"
#include "unit-name.h"
#include "virt.h"
#include "mkdir.h"
#include "unit-name.h"
#include "virt.h"
+#include "fileio.h"
static const char *arg_dest = "/tmp";
static const char *arg_dest = "/tmp";
@@
-38,16
+39,15
@@
static int add_symlink(const char *fservice, const char *tservice) {
assert(fservice);
assert(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 = strjoin(arg_dest,"/getty.target.wants/", tservice, NULL
);
if (!from || !to) {
if (!from || !to) {
- log_error("Out of memory");
- r = -ENOMEM;
+ r = log_oom();
goto finish;
}
goto finish;
}
- mkdir_parents(to, 0755);
+ mkdir_parents
_label
(to, 0755);
r = symlink(from, to);
if (r < 0) {
r = symlink(from, to);
if (r < 0) {
@@
-55,7
+55,7
@@
static int add_symlink(const char *fservice, const char *tservice) {
/* In case console=hvc0 is passed this will very likely result in EEXIST */
r = 0;
else {
/* In case console=hvc0 is passed this will very likely result in EEXIST */
r = 0;
else {
- log_error("Failed to create symlink
from %s to %s: %m", from
, to);
+ log_error("Failed to create symlink
%s: %m"
, to);
r = -errno;
}
}
r = -errno;
}
}
@@
-77,10
+77,8
@@
static int add_serial_getty(const char *tty) {
log_debug("Automatically adding serial getty for /dev/%s.", tty);
n = unit_name_replace_instance("serial-getty@.service", tty);
log_debug("Automatically adding serial getty for /dev/%s.", tty);
n = unit_name_replace_instance("serial-getty@.service", tty);
- if (!n) {
- log_error("Out of memory");
- return -ENOMEM;
- }
+ if (!n)
+ return log_oom();
r = add_symlink("serial-getty@.service", n);
free(n);
r = add_symlink("serial-getty@.service", n);
free(n);
@@
-99,20
+97,20
@@
int main(int argc, char *argv[]) {
char *active;
const char *j;
char *active;
const char *j;
- if (argc >
2
) {
- log_error("This program takes
on
e or no arguments.");
+ if (argc >
1 && argc != 4
) {
+ log_error("This program takes
thre
e or no arguments.");
return EXIT_FAILURE;
}
return EXIT_FAILURE;
}
+ if (argc > 1)
+ arg_dest = argv[1];
+
log_set_target(LOG_TARGET_SAFE);
log_parse_environment();
log_open();
umask(0022);
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.");
if (detect_container(NULL) > 0) {
log_debug("Automatically adding console shell.");
@@
-134,7
+132,7
@@
int main(int argc, char *argv[]) {
/* Automatically add in a serial getty on the kernel
* console */
/* Automatically add in a serial getty on the kernel
* console */
- if (tty_is_vc(tty))
+ if (
isempty(tty) ||
tty_is_vc(tty))
free(active);
else {
int k;
free(active);
else {
int k;
@@
-160,7
+158,7
@@
int main(int argc, char *argv[]) {
int k;
if (asprintf(&p, "/sys/class/tty/%s", j) < 0) {
int k;
if (asprintf(&p, "/sys/class/tty/%s", j) < 0) {
- log_
error("Out of memory"
);
+ log_
oom(
);
r = EXIT_FAILURE;
goto finish;
}
r = EXIT_FAILURE;
goto finish;
}