From aeb53fcd725fe291afa6ffb683373c8e589afa64 Mon Sep 17 00:00:00 2001 From: Sander Vrijders Date: Sun, 5 Jun 2016 16:49:32 +0200 Subject: ipcpd: Adds a shim over IEEE 802.2 over IEEE 802.3 This adds a shim over LLC over Ethernet. It uses the raw socket API to send messages directly over an interface. --- src/lib/dif_config.proto | 2 ++ src/lib/ipcp.c | 2 ++ src/lib/irm.c | 3 +++ 3 files changed, 7 insertions(+) (limited to 'src/lib') diff --git a/src/lib/dif_config.proto b/src/lib/dif_config.proto index 05b35ea7..dbdf19e5 100644 --- a/src/lib/dif_config.proto +++ b/src/lib/dif_config.proto @@ -14,4 +14,6 @@ message dif_config_msg { // Config for shim UDP optional uint32 ip_addr = 12; optional uint32 dns_addr = 13; + // Config for the shim Ethernet LLC + optional string if_name = 14; } \ No newline at end of file diff --git a/src/lib/ipcp.c b/src/lib/ipcp.c index ec681f9e..0d75b73e 100644 --- a/src/lib/ipcp.c +++ b/src/lib/ipcp.c @@ -125,6 +125,8 @@ pid_t ipcp_create(char * ipcp_name, exec_name = IPCP_NORMAL_EXEC; else if (ipcp_type == IPCP_SHIM_UDP) exec_name = IPCP_SHIM_UDP_EXEC; + else if (ipcp_type == IPCP_SHIM_ETH_LLC) + exec_name = IPCP_SHIM_ETH_LLC_EXEC; else if (ipcp_type == IPCP_LOCAL) exec_name = IPCP_LOCAL_EXEC; else diff --git a/src/lib/irm.c b/src/lib/irm.c index cff5a76a..6bd16576 100644 --- a/src/lib/irm.c +++ b/src/lib/irm.c @@ -139,6 +139,9 @@ int irm_bootstrap_ipcp(instance_name_t * api, break; case IPCP_LOCAL: break; + case IPCP_SHIM_ETH_LLC: + config.if_name = conf->if_name; + break; default: return -1; } -- cgit v1.2.3