resolved.c revision b1d4f8e154bf61b5de1b27461ef8e9c8c5e838a1
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen This file is part of systemd.
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen Copyright 2014 Tom Gundersen <teg@jklm.no>
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen systemd is free software; you can redistribute it and/or modify it
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen under the terms of the GNU Lesser General Public License as published by
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen the Free Software Foundation; either version 2.1 of the License, or
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen (at your option) any later version.
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen systemd is distributed in the hope that it will be useful, but
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen WITHOUT ANY WARRANTY; without even the implied warranty of
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen Lesser General Public License for more details.
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen You should have received a copy of the GNU Lesser General Public License
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen along with systemd; If not, see <http://www.gnu.org/licenses/>.
74b2466e14a1961bf3ac0e8a60cfaceec705bd59Lennart Poettering _cleanup_(manager_freep) Manager *m = NULL;
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen log_error("This program takes no arguments.");
da927ba997d68401563b927f92e6e40e021a8e5cMichal Schmidt log_error_errno(r, "SELinux setup failed: %m");
682265d5e2157882861b0091c6b81fa92699b72aTom Gundersen r = get_user_creds(&user, &uid, &gid, NULL, NULL);
da927ba997d68401563b927f92e6e40e021a8e5cMichal Schmidt log_error_errno(r, "Cannot resolve user name %s: %m", user);
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen /* Always create the directory where resolv.conf will live */
682265d5e2157882861b0091c6b81fa92699b72aTom Gundersen r = mkdir_safe_label("/run/systemd/resolve", 0755, uid, gid);
da927ba997d68401563b927f92e6e40e021a8e5cMichal Schmidt log_error_errno(r, "Could not create runtime directory: %m");
4d506d6bb757af3b99e0876234c465e6898c5ea4Lennart Poettering assert_se(sigprocmask_many(SIG_BLOCK, NULL, SIGTERM, SIGINT, SIGUSR1, -1) >= 0);
da927ba997d68401563b927f92e6e40e021a8e5cMichal Schmidt log_error_errno(r, "Could not create manager: %m");
da927ba997d68401563b927f92e6e40e021a8e5cMichal Schmidt log_warning_errno(r, "Failed to parse configuration file: %m");
da927ba997d68401563b927f92e6e40e021a8e5cMichal Schmidt log_error_errno(r, "Failed to start manager: %m");
4e945a6f7971fd7d1f6b2c62ee3afdaff3c95ce4Lennart Poettering /* Write finish default resolv.conf to avoid a dangling
da927ba997d68401563b927f92e6e40e021a8e5cMichal Schmidt log_warning_errno(r, "Could not create resolv.conf: %m");
091a364c802e34a58f3260c9cb5db9b75c62215cTom Gundersen "STATUS=Processing requests...");
b37d45c9ab5f645502695e47d268af1a54216e0eTom Gundersen "STOPPING=1\n"
af4ec4309e8f82aad87a8d574785c12f8763d5f8Lennart Poettering "STATUS=Shutting down...");