[strongSwan] Can charon pass through "vendor-specific" EAP payload to an external entity

Vijay Pandian vijay.pandian at casa-systems.com
Mon Feb 25 18:35:35 CET 2019


Hi Tobias,

Please ignore my confusion about the PLUGIN_PROVIDE(EAP_SERVER|PEER_VENDOR, type, vendor). 

After going through src/libstrongswan/plugins/plugin_feature.h, figured out that there are two separate registrations.

PLUGIN_PROVIDE(EAP_SERVER, type, vendor);
-and-
PLUGIN_PROVIDE(PEER_VENDOR, type, vendor);

Macros are everywhere :)

It would be helpful if you could suggest an existing plugin that could be used as a reference for this purpose.

Thanks,
Vijay

-----Original Message-----
From: Vijay Pandian 
Sent: Monday, February 25, 2019 11:28 AM
To: 'Tobias Brunner' <tobias at strongswan.org>; users at lists.strongswan.org
Subject: RE: [strongSwan] Can charon pass through "vendor-specific" EAP payload to an external entity

Hi Tobias,

Thanks you very much for the response. Are there any existing plugin that I could use as a base to build this new plugin? I am new to developing plugin in strongSwan.

Regarding the PLUGIN_PROVIDE(EAP_SERVER|PEER_VENDOR, type, vendor), although I could fine the EAP_SERVER defined as an enum in src/libcharon/sa/eap/eap_method.h, I could not find the definition for PEER_VENDOR anywhere in the source code. I am using strongswan-5.7.2 as my reference.

Regards,
Vijay

-----Original Message-----
From: Tobias Brunner <tobias at strongswan.org> 
Sent: Monday, February 25, 2019 5:59 AM
To: Vijay Pandian <vijay.pandian at casa-systems.com>; users at lists.strongswan.org
Subject: Re: [strongSwan] Can charon pass through "vendor-specific" EAP payload to an external entity

Hi Vijay,

> I am specifically looking for help in understanding if StrongSwan has support to handle “EAP Expanded Type” with a non-zero “Vendor-Id” as defined in IETF rfc3748 Section 5.7.

It does.

> Are there any existing plugins that would serve the purpose?

There are many plugins that implement EAP methods, although, none vendor-specific.  For the latter a plugin just has to register the plugin feature with PLUGIN_PROVIDE(EAP_SERVER|PEER_VENDOR, type, vendor) using the appropriate numeric vendor ID and type.

Regards,
Tobias


More information about the Users mailing list