Qtopia Home - Classes - Hierachy - Annotated - Functions - Qt Embedded |

# Qtopia Network Services

- Introduction
- How it works
  - The dialup plugin
  - The lan plugin
  - The Proxies page

## Introduction

Qtopia Network Services are defined by files that allow the configuration of Linux system networking services.

## How it works

Network Service Files are standard Qtopia Config files. They have three groups, with the following keys:

- [Info]
  - Name - the name presented to the user.
  - Type - the plugin which this Config parameterizes (see below).
  - UserSelectable - 0 to hide the option when adding new service.
  - Layer - only "TCP/IP" currently.
- [Help]
  - Help - long description of the service.
- [Properties]
  - Device - the network interface type (ppp, eth, etc.)
  - CardType - the pcmcia card type (network, serial, etc.)
  - ReadOnly - space-separated list of properties fields that should not be editable. The fields depend on the plugin.
  - Hide - same as ReadOnly, for for fields that should not be visible at all.

The NetworkInterface class defines the interface for plugins. Two plugins are provided with Qtopia: "dialup" and "lan", which configure `pppd` and `ethernet` respectively.

### The dialup plugin

The dialup plugin configures PPPD peer files. It has the following keys in the Network Service Config file. Most are self-explanatory or documented in the pppd documentation:

- [Properties]
  - Device - must be "ppp".
  - CardType - must be "serial".
  - SerialDevice - optional, the device, eg. "/dev/ttyU0"
  - GPRS - 1 = the service uses a GPRS modem.
  - username
  - password
  - phone - phone number to dial (non-GPRS only)
  - apn - Access Point Name (GPRS only)
  - atdial - dial string prefix, default is "ATDT".
  - gateway
  - dns1
  - dns2
  - speed
  - script - optional, program to make connection (otherwise, uses pppd).
  - connectdelay
  - crtscts - (0 or 1)
  - defaultroute - (0 or 1)
  - dialmode - (0 = Manual, 1 = Auto-off, 2 = Auto on/off)
  - idletime
  - usepeerdns - (0 or 1)

The field names supported by the Hide and ReadOnly keys are below. Note that entire tabs can be hidden by adding the tab name to Hide.

- account - the entire tab including:
  - acname
  - username
  - password
  - apn
  - phone
- modem - the entire tab including:
  - atdial
  - speed
  - connectdelay
  - crtscts
- dialing - the entire tab including:
  - dial_manual
  - dial_demand
  - dial_idle
  - idletime
- network - the entire tab including:
  - usepeerdns
  - defaultroute
  - dns
  - dns_1
  - dns_2
- proxies - the entire tab including:
  - type
  - autoconfig
  - http
  - ftp
  - noproxies

### The lan plugin

The lan plugin configures the PCMCIA networking files network.opts, wlan-ng.opts, and wireless.opts. It has the following keys in the Network Service Config file. Most are self-explanatory or documented in the PCMCIA documentation:

- AuthType
- BASICRATES
- BCNINT
- BOOTP
- BROADCAST
- CHANNEL
- DHCP
- DHCP_HOSTNAME
- DNS_1
- DNS_2
- DNS_3
- DOMAIN
- FRAG
- FREQ
- GATEWAY
- IF_PORT
- IPADDR
- IS_ADHOC
- IWCONFIG
- IWPRIV
- IWSPY
- MOUNTS
- MTU
- NETMASK
- NETWORK
- NO_CHECK
- NO_FUSER
- NWID
- OPRATES
- PRIV_GENERATOR
- PRIV_GENSTR
- PRIV_KEY128
- RATE
- RTS
- SEARCH
- SENS
- SSID
- USER_MIBS
- WEP - (NO = None, PP = Passphrase, K0 = Key 0, K1 = Key 1, K2 = Key 2, K3 = Key 3)
- WLAN_ENABLE
- dot11ExcludeUnencrypted
- dot11PrivacyInvoked
- dot11WEPDefaultKey
- dot11WEPDefaultKey0
- dot11WEPDefaultKey1
- dot11WEPDefaultKey2
- dot11WEPDefaultKey3
- dot11WEPDefaultKeyID
- start_fn
- stop_fn

The Hide and ReadOnly keys are not supported at this time.

Some Linux distributions ship network.opts, wlan-ng.opts, and wireless.opts with many partial configurations. These will override all settings created by Qtopia, which inserts its configurations before the final "*,*,*,*)" catch-all configuration.

### The Proxies page

The dialup and lan plugins share a Proxies page. The settings for this page are in the Config as:

- [Proxy]
  - type - 0 = No proxies, 1 = Automatic, 2 = Manual.
  - autoconfig
  - httphost
  - httpport
  - ftphost
  - ftpport
  - noproxies