summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libsystemd-network/network-internal.c35
-rw-r--r--src/libsystemd-network/network-internal.h3
-rw-r--r--src/network/networkd-manager.c6
-rw-r--r--src/network/networkd-tunnel.c22
-rw-r--r--src/network/networkd.c3
-rw-r--r--src/network/networkd.h1
6 files changed, 1 insertions, 69 deletions
diff --git a/src/libsystemd-network/network-internal.c b/src/libsystemd-network/network-internal.c
index 261603f841..e9146d0e54 100644
--- a/src/libsystemd-network/network-internal.c
+++ b/src/libsystemd-network/network-internal.c
@@ -327,41 +327,6 @@ int net_parse_inaddr(const char *address, unsigned char *family, void *dst) {
return 0;
}
-int load_module(struct kmod_ctx *ctx, const char *mod_name) {
- struct kmod_list *modlist = NULL, *l;
- int r;
-
- assert(ctx);
- assert(mod_name);
-
- r = kmod_module_new_from_lookup(ctx, mod_name, &modlist);
- if (r < 0)
- return r;
-
- if (!modlist) {
- log_error("Failed to find module '%s'", mod_name);
- return -ENOENT;
- }
-
- kmod_list_foreach(l, modlist) {
- struct kmod_module *mod = kmod_module_get_module(l);
-
- r = kmod_module_probe_insert_module(mod, 0, NULL, NULL, NULL, NULL);
- if (r == 0)
- log_info("Inserted module '%s'", kmod_module_get_name(mod));
- else {
- log_error("Failed to insert '%s': %s", kmod_module_get_name(mod),
- strerror(-r));
- }
-
- kmod_module_unref(mod);
- }
-
- kmod_module_unref_list(modlist);
-
- return r;
-}
-
void serialize_in_addrs(FILE *f, const char *key, struct in_addr *addresses, size_t size) {
unsigned i;
diff --git a/src/libsystemd-network/network-internal.h b/src/libsystemd-network/network-internal.h
index c08cddd799..2aeecf0ce2 100644
--- a/src/libsystemd-network/network-internal.h
+++ b/src/libsystemd-network/network-internal.h
@@ -24,7 +24,6 @@
#include <netinet/ether.h>
#include <netinet/in.h>
#include <stdbool.h>
-#include <libkmod.h>
#include "udev.h"
#include "condition-util.h"
@@ -67,8 +66,6 @@ int net_parse_inaddr(const char *address, unsigned char *family, void *dst);
int net_get_unique_predictable_data(struct udev_device *device, uint8_t result[8]);
-int load_module(struct kmod_ctx *ctx, const char *mod_name);
-
void serialize_in_addrs(FILE *f, const char *key, struct in_addr *addresses, size_t size);
int deserialize_in_addrs(struct in_addr **addresses, size_t *size, const char *string);
int deserialize_in6_addrs(struct in6_addr **addresses, size_t *size, const char *string);
diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c
index c4a325de42..4b35ea0d29 100644
--- a/src/network/networkd-manager.c
+++ b/src/network/networkd-manager.c
@@ -21,7 +21,6 @@
#include <sys/socket.h>
#include <linux/if.h>
-#include <libkmod.h>
#include "conf-parser.h"
#include "path-util.h"
@@ -120,10 +119,6 @@ int manager_new(Manager **ret) {
return -ENOMEM;
}
- m->kmod_ctx = kmod_new(NULL, NULL);
- if (!m->kmod_ctx)
- return -ENOMEM;
-
m->links = hashmap_new(uint64_hash_func, uint64_compare_func);
if (!m->links)
return -ENOMEM;
@@ -150,7 +145,6 @@ void manager_free(Manager *m) {
free(m->state_file);
- kmod_unref(m->kmod_ctx);
udev_monitor_unref(m->udev_monitor);
udev_unref(m->udev);
sd_bus_unref(m->bus);
diff --git a/src/network/networkd-tunnel.c b/src/network/networkd-tunnel.c
index e3ceb8b52b..60b16ba849 100644
--- a/src/network/networkd-tunnel.c
+++ b/src/network/networkd-tunnel.c
@@ -24,7 +24,6 @@
#include <net/if.h>
#include <linux/ip.h>
#include <linux/if_tunnel.h>
-#include <libkmod.h>
#include "sd-rtnl.h"
#include "networkd.h"
@@ -443,27 +442,6 @@ int netdev_create_tunnel(Link *link, sd_rtnl_message_handler_t callback) {
assert(netdev->ifname);
assert(netdev->manager);
assert(netdev->manager->rtnl);
- assert(netdev->manager->kmod_ctx);
-
- /* Load kernel module first */
- switch(netdev->kind) {
- case NETDEV_KIND_IPIP:
- case NETDEV_KIND_GRE:
- case NETDEV_KIND_SIT:
- r = load_module(netdev->manager->kmod_ctx,
- netdev_kind_to_string(netdev->kind));
- if (r < 0) {
- log_error_netdev(netdev,
- "Could not load Kernel module: %s . Ignoring",
- netdev_kind_to_string(netdev->kind));
- return r;
- }
- break;
- case NETDEV_KIND_VTI:
- break;
- default:
- return -ENOTSUP;
- }
r = sd_rtnl_message_new_link(netdev->manager->rtnl, &m, RTM_NEWLINK, 0);
if (r < 0) {
diff --git a/src/network/networkd.c b/src/network/networkd.c
index cd7dd3ca0f..d8f31a490d 100644
--- a/src/network/networkd.c
+++ b/src/network/networkd.c
@@ -71,8 +71,7 @@ int main(int argc, char *argv[]) {
(1ULL << CAP_NET_ADMIN) |
(1ULL << CAP_NET_BIND_SERVICE) |
(1ULL << CAP_NET_BROADCAST) |
- (1ULL << CAP_NET_RAW) |
- (1ULL << CAP_SYS_MODULE));
+ (1ULL << CAP_NET_RAW));
if (r < 0)
goto out;
diff --git a/src/network/networkd.h b/src/network/networkd.h
index 82d8d706b5..6f77c7785f 100644
--- a/src/network/networkd.h
+++ b/src/network/networkd.h
@@ -275,7 +275,6 @@ struct Manager {
LIST_HEAD(Network, networks);
usec_t network_dirs_ts_usec;
- struct kmod_ctx *kmod_ctx;
};
extern const char* const network_dirs[];