USERNAME PASSWORD LOST PASSWORD? REGISTER
"A Complete Mobile Application Development Environment"
Advertisement

Downloads
Documentation
Forums
Blog
Press
Bug Tracking
Creator IDs
Contact Us




Connection Manager Plug-Ins PDF Print E-mail
Documentation »  ACCESS Linux Platform Native Development »  Networking Guide »  Connection Manager Plug-Ins

Plug-ins are embedded in Linux shared code modules (libraries). A plug-in module can define several plug-ins. A module is identified by a filename (with a .so extension), an internal name, a version, a defined entry point, and a list of plug-ins. Modules also define one or more UI objects common to all plug-ins in the module.

Plug-ins are enumerated by the connection manager server at boot time. The server loads them in an arbitrary order and asks them to register by calling the plug-in entry point. Each plug-in can delay its registration to resolve dependencies problems. If several modules have the same internal name, the Connection Manager uses the one with the highest version. This way, updated plug-in modules in RAM can override ROM-based ones.

A Connection Manager plug-in is responsible for one or more communication devices or protocols. In short, a plug-in is defined by:

  • A system-unique name (e.g. "BT"), and an internationalized friendly name (e.g. "Bluetooth")
  • A connection callback that deals with low-level Linux routines to start services or protocols, or open devices
  • A control callback, for disconnecting, dynamic availability, priority, intercepting profile changes, etc.
  • One or more configuration user interfaces

Once registered, a plug-in has an associated record in the Connection Database and a unique database ID.

Plug-In Parameters ^TOP^

The following sections describe the parameters for each included plug-in. Also see "Plug-In Profile Samples."

IPIF Plug-in [IPIF]

The IPIF (IP Interface) plug-in resides in the layer below NetOut. The IPIF plug-in manages the configuration of IP networking interfaces and other associated configuration information such as network routes, domain name resolver configuration entries, etc. It also controls DHCP when automatic configuration is enabled.

The IPIF plug-in has a user interface that is accessed via the TCP/IP tab in the Connection application for Internet profiles. This tab allows the user to set certain configuration parameters such as automatic (IP address is supplied by DHCP or zero-conf) or manual mode (IP address is supplied by the user), DNS servers, and DNS suffixes.

Table 2.1  IPIF plug-in parameters Ā 

Name

Type

UI Access

Description

DDev

string

Name of the interface to configure. REQUIRED.

LoIP

string

Yes

Local IP address, in dotted notation. This parameter can be supplied by the lower plug-in. If this parameter is missing, automatic mode is assumed and the DHCP client is started for this connection. If no DHCP server is found, a zero-conf address is used. For Point-To-Point connections, the address can be provided by the remote server. Always exported.

ReIP

string

Remote IP address for Point-To-Point links, in dotted notation. Provided by the lower plug-in. If this parameter is present a default route is added, using this address as a default gateway. Mutually exclusive with GWys.

GWys

string

Yes

List of default gateways, in dotted notation separated by spaces.

NetM

string

Yes

Subnet mask, in dotted notation. In automatic mode it is computed automatically. Not relevant when ReIP is present.

Brod

string

Yes

Broadcast address, in dotted notation. In automatic mode, it is computed automatically.

DNSs

string

Yes

List of DNS servers, in dotted notation separated by spaces. This parameter can be supplied by the lower plugin.

Doms

string

Yes

List of DNS domain suffixes separated by spaces.

Mtic

unsigned integer

Interface metric (defaults to 1 if not available). A metric is a value that is assigned to an IP route for a particular network interface that identifies the cost that is associated with using that route.

_MTU

unsigned integer

Maximum transmit unit in bytes. Defaults to the value provided by the lower-level plug-ins.

DHcl

string

A client ID to be past to the DHCP server when getting an IP address in automatic mode.

DHhn

string

An host name to be past to the DHCP server when getting an IP address in automatic mode.

PNam

string

Yes

If the user wants to name the following set of proxy parameters.

PAdt

integer

Yes

List of different proxy address format: standard (DNS compliant), IPv4 or IPv6.

PAdr

string

Yes

Proxy address. Its value is checked following the selected proxy address format.

PPrt

integer

Yes

Proxy port. The value must be included between 0 and 65535.

PAut

integer

Yes

Proxy authentication type: HTTP_BASIC, HTTP_DIGEST or WTLS_SS.

PAId

string

Yes

Proxy authentication user ID.

PAPw

string

Yes

Proxy authentication password.

IPIF IN Plug-in [IPIFIN]

The IPIF IN plug-in manages the configuration of incoming connections. As it is designed for the moment its main goal is to provide to the client information about his IP configuration such as an IPV4 address, the default gateway to use or the DNS IP address. In fact it provides to the client all information given by a DHCP server. Thus, its main job is to enable a DHCP server for the network interface which requests it.

Table 2.2  IPIF IN plug-in parameters

Name

Type

UI Access

Description

DDev

string

Name of the interface which allows incoming connections. REQUIRED.

DHCP

unsigned integer

If true (default value) DHCP server is enabled. However the possibility to use ZeroConf (zcip) is kept by setting this parameter to 0. In this case, this plug-in only assigns an IP address to the DDev interface using ZeroConf protocol. Thus, each newly connecting devices must use ZeroConf to retrieve an IP address

Ethernet plug-in [Ethernet]

The Ethernet plug-in manages Ethernet parameters.

Table 2.3  Ethernet plug-in parameters

Name

Type

UI Access

Description

DDev

string

Name of the Ethernet interface to use. Always exported.

Dlay

unsigned integer

Delay in seconds at connection time.

XOpt

string

Extra options to iproute2 for advanced configuration. Added after "ip link set interface". e.g. "arp on multicast off".

USB plug-in [Ethernet]

There is no real USB plug-in to provide USBNet connections. Use the Ethernet plug-in and set the device parameter (DDev) to usb0.

PPP plug-in [PPP]

The PPP plug-in configures PPP connections using pppd. The PPP plug-in has a user interface that is accessed via the PPP tab in the Connection application for Internet profiles. This tab allows the user to set certain configuration parameters such as user name, password, timeout, Maximum Receive Unit (MRU) size, authentication type, etc.

Table 2.4  PPP plug-in parameters

Name

Type

UI Access

Description

DDev

string

Name of the PPP interface created. Always exported.

LoIP

string

Local IP address, in dotted notation. Exported when the local IP address is provided by the remote server.

ReIP

string

Remote IP address, in dotted notation. Exported when the remote IP address is provided by the remote server.

DNSs

string

List of DNS servers, in dotted notation separated by spaces. Exported when the DNS servers are provided by the remote server.

User

string

Yes

Username for authentication with the peer.

Pass

unsigned integer

Yes

ID of the password for authentication with the host.

ConT

unsigned integer

Yes

Timeout in milliseconds when connecting. The default is 10 seconds (10000).

IdlT

unsigned integer

Yes

Timeout in seconds before declaring the link idle and disconnecting.

XOpt

string

Extra options to pppd for advanced configuration. e.g. "mru 296 asyncmap 000A0000".

LogF

string

Filename of the login script to use at connection time.

NDPA

integer

1 to remove default pppd arguments or 0 to keep them (default).

Serial plug-in [Serial]

The Serial plug-in configures serial devices using POSIX termios.

Table 2.5  Serial plug-in parameters.

Name

Type

UI Access

Description

DevN

string

The name of the serial device (ttySx). Must be an available serial port on the device. REQUIRED.

Baud

unsigned integer

The serial line speed. The value must be in {300,600,1200,2400,4800,9600(default),19200,38400,57600,115200}.

Bits

unsigned integer

The serial line character size. The value must be in {8(default),7,6,5}.

Stop

unsigned integer

The number of stop bits. The value must be in {2,1(default)}.

Prty

unsigned integer

The number of parity bits. The value must be in {2,1,0(default)}.

FCtl

string

The flux control. Possible values are 'none' (default), 'soft' (for XON/XOFF), 'hard' (for RTS/CTS), 'both'.

Bluetooth plug-in [Bluetooth]

The Bluetooth plug-in enables an IP connection thanks to BlueZ PAN stack. The Bluetooth plug-in has a user interface that is accessed via the Bluetooth form in the Connection application for Internet profiles. This form allows the user to set important connection parameters.

The NetOut profile describes cases where the Bluetooth device is a slave PANU.

Table 2.6  Bluetooth plug-in parameters for outgoing connections (NetOut)

Name

Type

UI Access

Description

DDev

string

The interface name (bnepX) created by the Bluetooth connection. Always exported.

Addr

string

Yes

The Bluetooth address of the remote device to connect. If no address is specified, then do a search and connect to the selected device

Topo

unsigned integer

Yes

The topology of the Bluetooth network that the user try to access. Possible values are combinations of PANU=1, GN=2 and NAP=4. REQUIRED.

_Sec

unsigned integer

Yes

Security options for Bluetooth communications None=0, Authenticate=1, Encrypt=2, Secure=3.

Hci

unsigned integer

Used when the device has more than one Bluetooth device. In that case this parameter is used to define the Bluetooth device to use for the connection.

The NetIn profile describes cases where the Bluetooth device behaves as a master (when listening to incoming connections).

Table 2.7  Bluetooth plug-in parameters for incoming connections (NetIn) [BluetoothIn]

Name

Type

UI Access

Description

DDev

string

The interface name created by the Bluetooth connection. Always exported.

Topo

unsigned integer

The topology of the Bluetooth network that the user try to create. Possible values are combinations of PANU=1, GN=2 and NAP=4.

Hci

unsigned integer

Used when the device has more than one Bluetooth device. In that case this parameter is used to define the Bluetooth device to use for the connection.

VPN plug-in [VPN]

See "VPN Framework.".

Table 2.8  VPN plug-in parameters

Name

Type

UI Access

Description

UPro

unsigned integer

ID of the used profile for the VPN connection. REQUIRED.

ReHt

string

Yes

An IP address of the VPN server. REQUIRED.

Cert

string

Yes

Filename of the X.509 certificate to use for encryption/authentication

PShK

unsigned integer

Yes

ID the pre-shared key to use for encryption/authentication

User

string

Yes

Username for authentication

Pass

unsigned integer

Yes

ID of the password for authentication

EMod

string

The encryption tunnel mode. The value must be "psk" or "X509".The default is "psk" except when there is no pre-shared key specified.

Prot

unsigned integer

For protocol encapsulation (like L2TP over IPSEC). The value must be in the IP protocol range (see netinet/in.h)

Port

unsigned integer

For protocol encapsulation (like L2TP over IPSEC). The value must be lower than 65536.

NoVA

unsigned integer

Is the password managed by the VPN plug-in?
0 for Yes (default).

IPSEC plug-in [IPSEC]

See "VPN Framework.".

Table 2.9  IPSEC plug-in parameters

Name

Type

UI Access

Description

DDev

string

Name of the virtual interface created. Always exported.

LoIP

string

VPN Local IP address or VPN Subnet IP address, in dotted notation. Exported when the local IP address is provided by the remote server.

ReHt

string

VPN Remote IP address, in dotted notation. Exported when the remote IP address is provided by the remote server.

GWys

string

VPN gateways, in dotted notation separated by spaces. Exported.

NetM

string

VPN Subnet mask, in dotted notation. Exported.

Aggr

unsigned integer

Aggressive mode for IPSEC interoperability. Possible values are 0 (disable, default) or 1 (enable).

CisM

unsigned integer

A CISCO mode. Possible values are
0 (disable, default) or 1 (enable).

GroupN

unsigned integer

CISCO group name.

PFSe

unsigned integer

Perfect Forwarding Secrecy mode. Possible values are 0 (disable) or 1 (enable, default).

L2TP plug-in [L2TP]

See "VPN Framework."


NOTE: There are no parameters for the L2TP plug-in.

Phone plug-in [Phone]

The Phone Plug-in is used to manage the connection between a Phone Application and the Telephony Server. This plug-in specifies the name of the Phone Driver used by the Telephony Server to communicate with the phone module.

See the chapter on Telephony Manager in the Telephony Guide.

Table 2.10  Phone plug-in parameters

Name

Type

UI Access

Description

PDrv

string

Name of the Phone Driver to use. REQUIRED.

Data Call plug-in [DataCall]

See the chapter on Telephony Manager in the Telephony Guide.

Table 2.11  Data Call plug-in parameters

Name

Type

UI Access

Description

Type

unsigned integer

Yes

Type of data call: Circuit Switch (0), Packet Switch (1)

Dial

string

Yes

Dial number in case of Circuit Switch data call.

Apna

string

Yes

Address of the Access Point Network in case of Packet Switch data call.

User

string

Yes

User name. Only used with Direct IP connection.

Pass

string

Yes

Password. Only used with Direct IP connection.

IPIF6 Plug-in [IPIF6]

The IPIF6 (IP Interface) plug-in resides in the layer below NetOut. The IPIF6 plug-in manages the configuration of IPv6 networking interfaces, and other associated configuration information such as network routes, domain name resolver configuration entries, etc. It also controls DHCP when automatic configuration is enabled. This is the equivalent of the IPIF plug-in for IPv4.

Table 2.12  IPIF6 plug-in parameters

Name

Type

UI Access

Description

DDev

string

Name of the interface to configure. REQUIRED.

LIPs

string

Yes

List of local IP addresses to add, in dotted notation with the prefix length in CIDR notation. This parameter can be supplied by the lower plug-in. Always exported.

DNSs

string

Yes

List of DNS servers, in IPv6 notation separated by spaces. This parameter can be supplied by the lower plug-in.

Doms

string

Yes

List of DNS domain suffixes separated by spaces.

Mtic

unsigned integer

Interface metric (defaults to 1 if not available). A metric is a value that is assigned to an IP route for a particular network interface that identifies the cost that is associated with using that route.

_MTU

unsigned integer

Maximum transmit unit in bytes. Defaults to the value provided by the lower-level plug-ins.

TunIP Plug-in [TunIP]

The TunIP plug-in manages the configuration of IPv6-in-Ipv4 tunnels.

Table 2.13  TunIP plug-in parameters

Name

Type

UI Access

Description

DDev

string

Name of the virtual interface created. Exported.

ReHt

string

Yes

Remote Host address in dotted notation. If no remote is given, a "6to4" tunnel is done.

UPro

unsigned integer

ID of the used profile for the VPN connection. REQUIRED.

_TTL

unsigned integer

TTL of the tunnel. The default is 64.

NetAccess Plug-in [NetAccess]

The NetAccess manages virtual connections for using one IPv4 physical connection.

Table 2.14  NetAccess plug-in parameters

Name

Type

UI Access

Description

CPro

string

Yes

Connection profile to use to connect the VPN (default value: any profile).

UPro

unsigned integer

ID of the used profile for the VPN connection. Exported.

CMod

unsigned integer

Yes

Connection Mode: Auto(0,default value), Ask(1), Confirm(2).

ReHt

string

Remote Host. If it's a domain name, NetAccess rewrites it in an IPv4 dotted notation. Exported.

Plug-ins UI

Each plug-in can expose UI parameters for profile edition in the Network Panel. There are parameters to enable or disable the display and the edition for a plug-in.

Table 2.15  Common parameters for UI

Name

Type

UI Access

Description

UIVi

unsigned integer

Display the plug-in when editing the profile. Values are 0 (no display for the plug-in) and 1 (default, display)

Lock

unsigned integer

Disable parameters edition for the plug-in. Values are 0 (default, edition enabled) and 1 (edition disabled)

Plug-In Profile Samples ^TOP^

The following is an example of a profile using the device foo. It is configured using DHCP:


P1 = "NetOut/IPIF/Ethernet:DDev='foo'" 

The following is an example of a subprofile:


"Mydevice" = "Ethernet:DDev='foo'" 

The following profile is equivalent to P1:


P2 = "NetOut/IPIF/Mydevice" 

The following example shows a manually configured profile with the local IP address set. The subnet mask and broadcast address are automatically set:


P3 = "NetOut/
IPIF:LoIP='192.168.1.10',GWys='192.168.1.1',DNSs='192.168.2.1',Doms='bar.org'/
Mydevice" 

The following example shows a PPP connection using a direct serial link:


P4 = "NetOut/IPIF/PPP:User='foo',Pass=707/Serial:DevN='ttyS0'" 

The following example shows a PPP connection with the local IP address manually set and a script:


P5 = "NetOut/IPIF:LoIP='192.168.2.10'/PPP:User='foo',Pass=707,LogF='/etc/ppp/
modem.chat'/Serial:DevN='ttyS0'" 

The following example shows a VPN IPSEC connection with user/pass authentication, aggressive mode, and CISCO compatibility:


P6 = "VPN:Host='myoffice.com',User='foo',Pass=6384/IPIF/IPSEC:SCer=1,Aggr=1/
NetAccess" 

The following example shows a VPN L2TP over IPSEC connection with pre-shared key:


P7 = 
"VPN:Host='myoffice.com',User='foo',Pass=2589,PShK=7543,EMod='psk',Prot=17,Port
=1701/IPIF/PPP/L2TP:Auth='chap'/IPSEC/NetAccess" 

The following example shows a USB connection:


P8 = "NetOut/
IPIF:LoIP='192.168.1.10',GWys='192.168.1.1',DNSs='192.168.2.1
',Doms='bar.org'/Ethernet:DDev='usb0'"  

 

Add as favourites (39) | Quote this article on your site | Views: 397

Be first to comment this article
RSS comments

Write Comment
  • Please keep the topic of messages relevant to the subject of the article.
  • Personal verbal attacks will be deleted.
  • Please don't use comments to plug your web site. Such material will be removed.
  • Just ensure to *Refresh* your browser for a new security code to be displayed prior to clicking on the 'Send' button.
  • Keep in mind that the above process only applies if you simply entered the wrong security code.
Name:
E-mail
Homepage
Title:
BBCode:Web AddressEmail AddressBold TextItalic TextUnderlined TextQuoteCodeOpen ListList ItemClose List
Comment:



Code:* Code
I wish to be contacted by email regarding additional comments

Powered by AkoComment Tweaked Special Edition v.1.4.6
AkoComment © Copyright 2004 by Arthur Konze - www.mamboportal.com
All right reserved

 


© 2008 ACCESS Developer Network    |    Joomla! is Free Software released under the GNU/GPL License.    |    ACCESS Global Website
Events Support Community Platforms Home