- p = startswith(pty, "/dev/pts/");
- if (!p) {
- log_error("Invalid pty name %s.", pty);
- return -EIO;
- }
-
- r = sd_bus_open_system_container(&container_bus, argv[1]);
- if (r < 0)
- return log_error_errno(r, "Failed to get container bus: %m");
-
- getty = strjoin("container-getty@", p, ".service", NULL);
- if (!getty)
- return log_oom();
-
- if (unlockpt(master) < 0)
- return log_error_errno(errno, "Failed to unlock tty: %m");
-
- r = sd_bus_call_method(container_bus,
- "org.freedesktop.systemd1",
- "/org/freedesktop/systemd1",
- "org.freedesktop.systemd1.Manager",
- "StartUnit",
- &error, NULL,
- "ss", getty, "replace");
- if (r < 0) {
- log_error("Failed to start getty service: %s", bus_error_message(&error, r));
- return r;
- }
-
- container_bus = sd_bus_unref(container_bus);
-