resolved-dns-server.c revision 0dd25fb9f005d8ab7ac4bc10a609d00569f8c56a
/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
/***
This file is part of systemd.
Copyright 2014 Lennart Poettering
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
systemd is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with systemd; If not, see <http://www.gnu.org/licenses/>.
***/
#include "resolved-dns-server.h"
int dns_server_new(
Manager *m,
Link *l,
int family,
const union in_addr_union *in_addr) {
assert(m);
if (!s)
return -ENOMEM;
if (source == DNS_SERVER_LINK) {
assert(l);
s->link = l;
} else if (source == DNS_SERVER_DHCP) {
assert(l);
s->link = l;
} else {
assert(!l);
}
s->manager = m;
if (ret)
*ret = s;
return 0;
}
if (!s)
return NULL;
if (s->source == DNS_SERVER_LINK) {
if (s->link)
} else if (s->source == DNS_SERVER_DHCP) {
if (s->link)
} else if (s->source == DNS_SERVER_SYSTEM) {
if (s->manager)
}
free(s);
return NULL;
}