diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-10-17 17:38:53 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-10-17 17:38:53 +0000 |
commit | 1e0dd58661c9097fb41218ee7e3515f2d8ba8dac (patch) | |
tree | a263b4ad0c1f7fba6013f5d9854db4cb4962df82 /knetworkmanager-0.8/src/knetworkmanager-connection_setting_ipv4.h | |
download | knetworkmanager8-1e0dd58661c9097fb41218ee7e3515f2d8ba8dac.tar.gz knetworkmanager8-1e0dd58661c9097fb41218ee7e3515f2d8ba8dac.zip |
Add dead-ended knetworkmanager 0.8 source
Add copy of same for knetworkmanager 0.9 starting point
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/knetworkmanager8@1259314 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'knetworkmanager-0.8/src/knetworkmanager-connection_setting_ipv4.h')
-rw-r--r-- | knetworkmanager-0.8/src/knetworkmanager-connection_setting_ipv4.h | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/knetworkmanager-0.8/src/knetworkmanager-connection_setting_ipv4.h b/knetworkmanager-0.8/src/knetworkmanager-connection_setting_ipv4.h new file mode 100644 index 0000000..7788769 --- /dev/null +++ b/knetworkmanager-0.8/src/knetworkmanager-connection_setting_ipv4.h @@ -0,0 +1,112 @@ +/*************************************************************************** + * + * knetworkmanager-devicestore_dbus.h - A NetworkManager frontend for KDE + * + * Copyright (C) 2005, 2006 Novell, Inc. + * + * Author: Helmut Schaa <hschaa@suse.de>, <helmut.schaa@gmx.de> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + **************************************************************************/ + +#ifndef KNETWORKMANAGER_CONNECTION_SETTING_IPV4_H +#define KNETWORKMANAGER_CONNECTION_SETTING_IPV4_H + +#include <stdint.h> +#include <tqhostaddress.h> +#include <tqmap.h> +#include <tqvariant.h> +#include <tqobject.h> + +#include <tqdbusdata.h> + +#include "knetworkmanager-connection_setting.h" + +/* NM headers */ +#include <nm-setting-ip4-config.h> + +namespace ConnectionSettings +{ + +class Connection; + +class IPv4Address +{ + public: + TQHostAddress address; + TQHostAddress netmask; + TQHostAddress gateway; +}; + +// ipv4 setting +class IPv4 : public ConnectionSetting +{ + public: + enum IPV4METHOD + { + METHOD_DHCP = 1 + , METHOD_AUTO = METHOD_DHCP // DHCP is obsolete now + , METHOD_AUTOIP + , METHOD_LINK_LOCAL = METHOD_AUTOIP // AUTOIP is obsolete now + , METHOD_MANUAL + , METHOD_SHARED + }; + + IPv4(Connection* conn); + + SettingsMap toMap() const; + void fromMap(const SettingsMap&); + + void addAddress(const IPv4Address&); + void removeAddress(const IPv4Address&); + + TQValueList<IPv4Address> getAddresses() const; + void setAddresses(const TQValueList<IPv4Address>&); + + TQValueList<TQHostAddress> getDNS() const; + void setDNS(const TQValueList<TQHostAddress>&); + + TQStringList getDNSSearch() const; + void setDNSSearch(const TQStringList&); + + void setMethod(IPV4METHOD); + IPV4METHOD getMethod() const; + + void setIgnoreAutoDNS(bool); + bool getIgnoreAutoDNS() const; + + void setIgnoreAutoRoutes(bool); + bool getIgnoreAutoRoutes() const; + + bool isValid() const; + + bool useSetting(); + + TQ_UINT32 toCIDRSuffix(const TQHostAddress&) const; + TQHostAddress fromCIDRSuffix(TQ_UINT32 suffix); + + private: + TQValueList<TQHostAddress> _dns; + TQStringList _dns_search; + TQValueList<IPv4Address> _addresses; + IPV4METHOD _method; + bool _ignore_auto_dns; + bool _ignore_auto_routes; + + // TODO routes, dhcp-client-id, dhcp-hostname +}; +} +#endif /* KNETWORKMANAGER_CONNECTION_SETTING_IPV4_H */ |