NetworkManager/src/systemd/nm-sd.h
Thomas Haller e3a072f3c0 build: don't add systemd path the include search path
Our internal copy of systemd should not be in the search path.
Instead, let users only
  #include "systemd/nm-sd.h"
which then includes everything from systemd that we need.

We want to avoid to accidentally include anything from our
systemd-copy. Any user of that should only include "nm-sd.h",
which then includes everything that is needed further.

For example, "src/devices/wwan/nm-modem-manager.c" has
  #include <systemd/nm-daemon.h>
which in turn includes
  #include "_sd-common.h"
This works all correctly before, because #include "" will first
look in the directory where sd-daemon.h is. However, our mixing of
external systemd library and internal copy is rather dangerous.
Try to avoid it further by keeping the include paths clean.
2016-09-27 14:13:21 +02:00

43 lines
1.6 KiB
C

/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
/* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Copyright (C) 2014 - 2016 Red Hat, Inc.
*/
#ifndef __NM_SD_H__
#define __NM_SD_H__
#include "systemd/src/systemd/sd-dhcp-client.h"
#include "systemd/src/systemd/sd-dhcp6-client.h"
#include "systemd/src/systemd/sd-lldp.h"
#include "systemd/src/systemd/sd-ipv4ll.h"
/*****************************************************************************/
guint nm_sd_event_attach_default (void);
/*****************************************************************************
* expose internal systemd API
*
* FIXME: don't use any internal systemd API.
*****************************************************************************/
struct sd_dhcp_lease;
int dhcp_lease_save(struct sd_dhcp_lease *lease, const char *lease_file);
int dhcp_lease_load(struct sd_dhcp_lease **ret, const char *lease_file);
#endif /* __NM_SD_H__ */