mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-03-01 15:01:48 +01:00
Currently "src/" mostly contains the source code of the daemon. I say mostly, because that is not true, there are also the device, settings, wwan, ppp plugins, the initrd generator, the pppd and dhcp helper, and probably more. Also we have source code under libnm-core/, libnm/, clients/, and shared/ directories. That is all confusing. We should have one "src" directory, that contains subdirectories. Those subdirectories should contain individual parts (libraries or applications), that possibly have dependencies on other subdirectories. There should be a flat hierarchy of directories under src/, which contains individual modules. As the name "src/" is already taken, that prevents any sensible restructuring of the code. As a first step, move "src/" to "src/core/". This gives space to reorganize the code better by moving individual components into "src/". For inspiration, look at systemd's "src/" directory. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/743
68 lines
3.6 KiB
C
68 lines
3.6 KiB
C
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
/*
|
|
* Copyright (C) 2015 Red Hat, Inc.
|
|
*/
|
|
|
|
#ifndef __NETWORKMANAGER_NDISC_PRIVATE_H__
|
|
#define __NETWORKMANAGER_NDISC_PRIVATE_H__
|
|
|
|
#include "nm-ndisc.h"
|
|
|
|
/* Functions only used by ndisc implementations */
|
|
|
|
struct _NMNDiscDataInternal {
|
|
NMNDiscData public;
|
|
GArray *gateways;
|
|
GArray *addresses;
|
|
GArray *routes;
|
|
GArray *dns_servers;
|
|
GArray *dns_domains;
|
|
};
|
|
|
|
typedef struct _NMNDiscDataInternal NMNDiscDataInternal;
|
|
|
|
void nm_ndisc_ra_received(NMNDisc *ndisc, gint64 now_msec, NMNDiscConfigMap changed);
|
|
void nm_ndisc_rs_received(NMNDisc *ndisc);
|
|
|
|
gboolean nm_ndisc_add_gateway(NMNDisc *ndisc, const NMNDiscGateway *new_item, gint64 now_msec);
|
|
gboolean
|
|
nm_ndisc_complete_and_add_address(NMNDisc *ndisc, const NMNDiscAddress *new_item, gint64 now_msec);
|
|
gboolean nm_ndisc_add_route(NMNDisc *ndisc, const NMNDiscRoute *new_item, gint64 now_msec);
|
|
gboolean nm_ndisc_add_dns_server(NMNDisc *ndisc, const NMNDiscDNSServer *new_item, gint64 now_msec);
|
|
gboolean nm_ndisc_add_dns_domain(NMNDisc *ndisc, const NMNDiscDNSDomain *new_item, gint64 now_msec);
|
|
|
|
/*****************************************************************************/
|
|
|
|
#define _NMLOG_DOMAIN LOGD_IP6
|
|
#define _NMLOG(level, ...) _LOG(level, _NMLOG_DOMAIN, ndisc, __VA_ARGS__)
|
|
|
|
#define _LOG(level, domain, self, ...) \
|
|
G_STMT_START \
|
|
{ \
|
|
const NMLogLevel __level = (level); \
|
|
const NMLogDomain __domain = (domain); \
|
|
\
|
|
if (nm_logging_enabled(__level, __domain)) { \
|
|
NMNDisc *const __self = (self); \
|
|
char __prefix[64]; \
|
|
const char * __ifname = __self ? nm_ndisc_get_ifname(__self) : NULL; \
|
|
\
|
|
_nm_log(__level, \
|
|
__domain, \
|
|
0, \
|
|
__ifname, \
|
|
NULL, \
|
|
"%s: " _NM_UTILS_MACRO_FIRST(__VA_ARGS__), \
|
|
(__self ? nm_sprintf_buf(__prefix, \
|
|
"%s[%p,%s%s%s]", \
|
|
_NMLOG_PREFIX_NAME, \
|
|
__self, \
|
|
NM_PRINT_FMT_QUOTE_STRING(__ifname)) \
|
|
: _NMLOG_PREFIX_NAME) _NM_UTILS_MACRO_REST(__VA_ARGS__)); \
|
|
} \
|
|
} \
|
|
G_STMT_END
|
|
|
|
/*****************************************************************************/
|
|
|
|
#endif /* __NETWORKMANAGER_NDISC_PRIVATE_H__ */
|