summaryrefslogtreecommitdiff
path: root/doc/ipconfig-api.txt
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2009-08-14 22:12:26 -0700
committerMarcel Holtmann <marcel@holtmann.org>2009-08-14 22:12:26 -0700
commit971f424319fad8bb0c9b593235080b0ce6394501 (patch)
treef3e79d58dd836574ddcc04c5b91496c2f520ab59 /doc/ipconfig-api.txt
parenta4c2f9ece63554272d206f197e0ed4712a551a43 (diff)
downloadconnman-971f424319fad8bb0c9b593235080b0ce6394501.tar.gz
connman-971f424319fad8bb0c9b593235080b0ce6394501.tar.bz2
connman-971f424319fad8bb0c9b593235080b0ce6394501.zip
Add initial text for IP handling documentation
Diffstat (limited to 'doc/ipconfig-api.txt')
-rw-r--r--doc/ipconfig-api.txt41
1 files changed, 41 insertions, 0 deletions
diff --git a/doc/ipconfig-api.txt b/doc/ipconfig-api.txt
new file mode 100644
index 00000000..179e86fc
--- /dev/null
+++ b/doc/ipconfig-api.txt
@@ -0,0 +1,41 @@
+IP configuration handling
+*************************
+
+
+IP basics
+=========
+
+The core IP handling is designed around network interfaces or more precise
+what the Linux kernel handles as struct net_device. Via RTNL every interface
+is tracked and an IP device created for it.
+
+ +--------+ +---- eth0 -----+
+ | | | |
+ | RTNL +-----+---->| IP device |
+ | | | | |
+ +--------+ | +---------------+
+ |
+ | +---- wlan0 ----+
+ | | |
+ +---->| IP device |
+ | |
+ +---------------+
+
+The IP device tracks link configuration, IP address setting and routing
+information for that interface. Every IP device also contains a configuration
+element. That element contains an operation table for callbacks based on
+different events.
+
+ struct connman_ipconfig_ops {
+ void (*up) (struct connman_ipconfig *);
+ void (*down) (struct connman_ipconfig *);
+ void (*lower_up) (struct connman_ipconfig *);
+ void (*lower_down) (struct connman_ipconfig *);
+ void (*ip_bound) (struct connman_ipconfig *);
+ void (*ip_release) (struct connman_ipconfig *);
+ };
+
+All configuration objects created directly by RTNL are tightly bound to the
+IP device. They will trigger DHCP or other configuration helpers.
+
+