-rw-r--r-- | libopie2/opienet/802_11_user.h | 1 | ||||
-rw-r--r-- | libopie2/opienet/dhcp.h | 2 | ||||
-rw-r--r-- | libopie2/opienet/odebugmapper.cpp | 10 | ||||
-rw-r--r-- | libopie2/opienet/odebugmapper.h | 10 | ||||
-rw-r--r-- | libopie2/opienet/omanufacturerdb.cpp | 7 | ||||
-rw-r--r-- | libopie2/opienet/omanufacturerdb.h | 8 | ||||
-rw-r--r-- | libopie2/opienet/onetutils.cpp | 9 | ||||
-rw-r--r-- | libopie2/opienet/onetutils.h | 15 | ||||
-rw-r--r-- | libopie2/opienet/onetwork.cpp | 9 | ||||
-rw-r--r-- | libopie2/opienet/onetwork.h | 31 | ||||
-rw-r--r-- | libopie2/opienet/opcap.cpp | 8 | ||||
-rw-r--r-- | libopie2/opienet/opcap.h | 52 | ||||
-rw-r--r-- | libopie2/opienet/ostation.cpp | 8 | ||||
-rw-r--r-- | libopie2/opienet/ostation.h | 9 |
14 files changed, 176 insertions, 3 deletions
diff --git a/libopie2/opienet/802_11_user.h b/libopie2/opienet/802_11_user.h index 7ae27c5..1a9a7a0 100644 --- a/libopie2/opienet/802_11_user.h +++ b/libopie2/opienet/802_11_user.h @@ -452,7 +452,8 @@ struct ctrl_end_ack_t { #define CTRL_END_ACK_LEN (2+2+6+6+4) #define IV_IV(iv) ((iv) & 0xFFFFFF) #define IV_PAD(iv) (((iv) >> 24) & 0x3F) #define IV_KEYID(iv) (((iv) >> 30) & 0x03) + #endif diff --git a/libopie2/opienet/dhcp.h b/libopie2/opienet/dhcp.h index 368e375..6ba4c53 100644 --- a/libopie2/opienet/dhcp.h +++ b/libopie2/opienet/dhcp.h @@ -39,12 +39,13 @@ * To learn more about Vixie Enterprises, see ``http://www.vix.com''. */ #ifndef DHCP_H #define DHCP_H + #define DHCP_UDP_OVERHEAD (14 + /* Ethernet header */ \ 20 + /* IP header */ \ 8) /* UDP header */ #define DHCP_SNAME_LEN 64 #define DHCP_FILE_LEN 128 #define DHCP_FIXED_NON_UDP 236 @@ -194,8 +195,9 @@ struct dhcp_packet { #define FQDN_RCODE2 5 #define FQDN_HOSTNAME 6 #define FQDN_DOMAINNAME 7 #define FQDN_FQDN 8 #define FQDN_SUBOPTION_COUNT 8 + #endif diff --git a/libopie2/opienet/odebugmapper.cpp b/libopie2/opienet/odebugmapper.cpp index 7e4ab2b..f679afb 100644 --- a/libopie2/opienet/odebugmapper.cpp +++ b/libopie2/opienet/odebugmapper.cpp @@ -4,12 +4,18 @@ */ #include <opie2/odebug.h> #include "odebugmapper.h" +using namespace Opie::Core; + +namespace Opie { +namespace Net { +namespace Private { + DebugMapper::DebugMapper() { odebug << "DebugMapper::DebugMapper()" << oendl; _map.insert( 0x8902, new QString("SIOCSPGRP") ); @@ -209,7 +215,9 @@ const QString& DebugMapper::map( int value ) const else { return *result; } } - +} +} +} diff --git a/libopie2/opienet/odebugmapper.h b/libopie2/opienet/odebugmapper.h index 66b331d..f47db47 100644 --- a/libopie2/opienet/odebugmapper.h +++ b/libopie2/opienet/odebugmapper.h @@ -6,21 +6,31 @@ #ifndef DEBUGMAPPER_H #define DEBUGMAPPER_H #include <qstring.h> #include <qintdict.h> +namespace Opie { +namespace Net { +namespace Private { + typedef QIntDict<QString> IntStringMap; class DebugMapper { public: DebugMapper(); ~DebugMapper(); const QString& map( int value ) const; private: IntStringMap _map; + class Private; + Private *d; }; +} +} +} + #endif diff --git a/libopie2/opienet/omanufacturerdb.cpp b/libopie2/opienet/omanufacturerdb.cpp index b93b752..209ec94 100644 --- a/libopie2/opienet/omanufacturerdb.cpp +++ b/libopie2/opienet/omanufacturerdb.cpp @@ -40,12 +40,16 @@ /* QT */ #include <qapplication.h> #include <qfile.h> #include <qtextstream.h> +using namespace Opie::Core; +namespace Opie { +namespace Net { + OManufacturerDB* OManufacturerDB::_instance = 0; OManufacturerDB* OManufacturerDB::instance() { if ( !OManufacturerDB::_instance ) { @@ -130,6 +134,9 @@ const QString& OManufacturerDB::lookup( const QString& macaddr ) const const QString& OManufacturerDB::lookupExt( const QString& macaddr ) const { QMap<QString,QString>::ConstIterator it = manufacturersExt.find( macaddr.upper().left(8) ); return it == manufacturersExt.end() ? lookup( macaddr ) : *it; } +} +} + diff --git a/libopie2/opienet/omanufacturerdb.h b/libopie2/opienet/omanufacturerdb.h index c2712e5..5c1940e 100644 --- a/libopie2/opienet/omanufacturerdb.h +++ b/libopie2/opienet/omanufacturerdb.h @@ -30,12 +30,15 @@ #ifndef OMANUFACTURERDB_H #define OMANUFACTURERDB_H #include <qmap.h> +namespace Opie { +namespace Net { + /** * @brief A Ethernet card vendor database. * * This class encapsulates the lookup of Ethernet vendor given a * certain Mac Address. Only the first three bytes define the vendor. */ @@ -60,10 +63,15 @@ class OManufacturerDB virtual ~OManufacturerDB(); private: QMap<QString, QString> manufacturers; QMap<QString, QString> manufacturersExt; static OManufacturerDB* _instance; + class Private; + Private *d; }; +} +} + #endif diff --git a/libopie2/opienet/onetutils.cpp b/libopie2/opienet/onetutils.cpp index 48cfa43..7794334 100644 --- a/libopie2/opienet/onetutils.cpp +++ b/libopie2/opienet/onetutils.cpp @@ -34,12 +34,15 @@ #include <opie2/omanufacturerdb.h> #include <net/if.h> #include <assert.h> #include <stdio.h> +namespace Opie { +namespace Net { + /*====================================================================================== * OMacAddress *======================================================================================*/ // static initializer for broadcast and unknown MAC Adresses const unsigned char __broadcast[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; @@ -182,12 +185,15 @@ void OPrivateIOCTL::invoke() const void OPrivateIOCTL::setParameter( int num, u_int32_t value ) { u_int32_t* arglist = (u_int32_t*) &( (OWirelessNetworkInterface*) parent() )->_iwr.u.name; arglist[num] = value; } + + +namespace Private { /*====================================================================================== * assorted functions *======================================================================================*/ void dumpBytes( const unsigned char* data, int num ) { @@ -227,6 +233,9 @@ QString modeToString( int mode ) case IW_MODE_REPEAT: return "repeater"; case IW_MODE_SECOND: return "second"; case IW_MODE_MONITOR: return "monitor"; default: assert( 0 ); } } +} +} +} diff --git a/libopie2/opienet/onetutils.h b/libopie2/opienet/onetutils.h index bddfab9..ca6815d 100644 --- a/libopie2/opienet/onetutils.h +++ b/libopie2/opienet/onetutils.h @@ -38,12 +38,16 @@ #include <qhostaddress.h> #include <qobject.h> #include <sys/types.h> struct ifreq; + +namespace Opie { +namespace Net { + class OWirelessNetworkInterface; /*====================================================================================== * OMacAddress *======================================================================================*/ @@ -69,12 +73,14 @@ class OMacAddress static const OMacAddress& unknown; // 44:44:44:44:44:44 private: unsigned char _bytes[6]; friend bool operator==( const OMacAddress &m1, const OMacAddress &m2 ); + class Private; + Private *d; }; bool operator==( const OMacAddress &m1, const OMacAddress &m2 ); @@ -85,12 +91,15 @@ bool operator==( const OMacAddress &m1, const OMacAddress &m2 ); class OHostAddress : public QHostAddress { /*public: OHostAddress(); ~OHostAddress(); */ + private: + class Private; + Private *d; }; /*====================================================================================== * OPrivateIOCTL *======================================================================================*/ @@ -112,21 +121,27 @@ class OPrivateIOCTL : public QObject private: u_int32_t _ioctl; u_int16_t _getargs; u_int16_t _setargs; + class Private; + Private *d; }; /*====================================================================================== * Miscellaneous *======================================================================================*/ +namespace Private { void dumpBytes( const unsigned char* data, int num ); QString modeToString( int ); int stringToMode( const QString& ); +} +} +} #define IW_PRIV_TYPE_MASK 0x7000 #define IW_PRIV_TYPE_NONE 0x0000 #define IW_PRIV_TYPE_BYTE 0x1000 #define IW_PRIV_TYPE_CHAR 0x2000 #define IW_PRIV_TYPE_INT 0x4000 diff --git a/libopie2/opienet/onetwork.cpp b/libopie2/opienet/onetwork.cpp index e5b091f..ab3e77f 100644 --- a/libopie2/opienet/onetwork.cpp +++ b/libopie2/opienet/onetwork.cpp @@ -54,19 +54,25 @@ #include <linux/sockios.h>
#include <net/if_arp.h>
#include <stdarg.h>
#ifndef NODEBUG
#include <opie2/odebugmapper.h>
+ + +using namespace Opie::Core; +using namespace Opie::Net::Private; DebugMapper* debugmapper = new DebugMapper();
#endif
/*======================================================================================
* ONetwork
*======================================================================================*/
+namespace Opie { +namespace Net { ONetwork* ONetwork::_instance = 0;
ONetwork::ONetwork()
{
odebug << "ONetwork::ONetwork()" << oendl;
odebug << "ONetwork: This code has been compiled against Wireless Extensions V" << WIRELESS_EXT << oendl;
@@ -1234,6 +1240,9 @@ void OOrinocoMonitoringInterface::setEnabled( bool b ) QString OOrinocoMonitoringInterface::name() const
{
return "orinoco";
}
+ +} +} diff --git a/libopie2/opienet/onetwork.h b/libopie2/opienet/onetwork.h index 93b129f..a953296 100644 --- a/libopie2/opienet/onetwork.h +++ b/libopie2/opienet/onetwork.h @@ -53,12 +53,15 @@ #include <qvaluelist.h> #include <qdict.h> #include <qmap.h> #include <qobject.h> #include <qhostaddress.h> +namespace Opie { +namespace Net { + class ONetworkInterface; class OWirelessNetworkInterface; class OChannelHopper; class OMonitoringInterface; /*====================================================================================== @@ -120,12 +123,14 @@ class ONetwork : public QObject protected: ONetwork(); private: static ONetwork* _instance; InterfaceMap _interfaces; + class Private; + Private *d; }; /*====================================================================================== * ONetworkInterface *======================================================================================*/ @@ -231,12 +236,15 @@ class ONetworkInterface : public QObject protected: struct ifreq& ifr() const; virtual void init(); bool ioctl( int call ) const; bool ioctl( int call, struct ifreq& ) const; + private: + class Private; + Private *d; }; /*====================================================================================== * OChannelHopper *======================================================================================*/ @@ -293,12 +301,14 @@ class OChannelHopper : public QObject private: OWirelessNetworkInterface* _iface; int _interval; int _tid; QValueList<int> _channels; QValueList<int>::Iterator _channel; + class Private; + Private *d; }; /*====================================================================================== * OWirelessNetworkInterface *======================================================================================*/ @@ -452,12 +462,14 @@ class OWirelessNetworkInterface : public ONetworkInterface mutable struct iwreq _iwr; QMap<int,int> _channels; struct iw_range _range; private: OChannelHopper* _hopper; + class Private; + Private *d; }; /*====================================================================================== * OMonitoringInterface *======================================================================================*/ @@ -476,12 +488,15 @@ class OMonitoringInterface virtual QString name() const = 0; protected: OWirelessNetworkInterface* _if; bool _prismHeader; + private: + class Private; + Private *d; }; /*====================================================================================== * OCiscoMonitoring @@ -494,12 +509,15 @@ class OCiscoMonitoringInterface : public OMonitoringInterface OCiscoMonitoringInterface( ONetworkInterface*, bool _prismHeader ); virtual ~OCiscoMonitoringInterface(); virtual void setEnabled( bool ); virtual QString name() const; virtual void setChannel( int ); + private: + class Private; + Private *d; }; /*====================================================================================== * OWlanNGMonitoringInterface @@ -513,12 +531,15 @@ class OWlanNGMonitoringInterface : public OMonitoringInterface virtual ~OWlanNGMonitoringInterface(); public: virtual void setEnabled( bool ); virtual QString name() const; virtual void setChannel( int ); + private: + class Private; + Private *d; }; /*====================================================================================== * OHostAPMonitoringInterface @@ -531,12 +552,16 @@ class OHostAPMonitoringInterface : public OMonitoringInterface OHostAPMonitoringInterface( ONetworkInterface*, bool _prismHeader ); virtual ~OHostAPMonitoringInterface(); public: virtual void setEnabled( bool ); virtual QString name() const; + + private: + class Private; + Private *d; }; /*====================================================================================== * OOrinocoMonitoringInterface *======================================================================================*/ @@ -550,10 +575,16 @@ class OOrinocoMonitoringInterface : public OMonitoringInterface public: virtual void setChannel( int ); virtual void setEnabled( bool ); virtual QString name() const; + private: + class Private; + Private *d; }; +} +} + #endif // ONETWORK_H diff --git a/libopie2/opienet/opcap.cpp b/libopie2/opienet/opcap.cpp index fdd519c..4081d4f 100644 --- a/libopie2/opienet/opcap.cpp +++ b/libopie2/opienet/opcap.cpp @@ -42,12 +42,17 @@ #include <sys/types.h> #include <unistd.h> /* LOCAL */ #include "udp_ports.h" +using namespace Opie::Core; + +namespace Opie { +namespace Net { + /*====================================================================================== * OPacket *======================================================================================*/ OPacket::OPacket( int datalink, packetheaderstruct header, const unsigned char* data, QObject* parent ) :QObject( parent, "Generic" ), _hdr( header ), _data( data ) @@ -1341,7 +1346,8 @@ bool OPacketCapturer::swapped() const QString OPacketCapturer::version() const { return QString().sprintf( "%d.%d", pcap_major_version( _pch ), pcap_minor_version( _pch ) ); } - +} +} diff --git a/libopie2/opienet/opcap.h b/libopie2/opienet/opcap.h index b873b49..dc609a3 100644 --- a/libopie2/opienet/opcap.h +++ b/libopie2/opienet/opcap.h @@ -61,14 +61,16 @@ extern "C" // work around a bpf/pcap conflict in recent headers /* TYPEDEFS */ typedef struct timeval timevalstruct; typedef struct pcap_pkthdr packetheaderstruct; /* FORWARDS */ -class OPacketCapturer; class QSocketNotifier; +namespace Opie { +namespace Net { +class OPacketCapturer; /*====================================================================================== * OPacket - A frame on the wire *======================================================================================*/ /** @brief A class representing a data frame on the wire. @@ -138,12 +140,15 @@ class OPacket : public QObject QString _dumpStructure( QObjectList* ) const; private: const packetheaderstruct _hdr; // pcap packet header const unsigned char* _data; // pcap packet data const unsigned char* _end; // end of pcap packet data + private: + class Private; + Private *d; }; QTextStream& operator<<( QTextStream& s, const OPacket& p ); /*====================================================================================== * OEthernetPacket - DLT_EN10MB frame @@ -160,12 +165,15 @@ class OEthernetPacket : public QObject OMacAddress sourceAddress() const; OMacAddress destinationAddress() const; int type() const; private: const struct ether_header* _ether; + private: + class Private; + Private *d; }; /*====================================================================================== * OPrismHeaderPacket - DLT_PRISM_HEADER frame *======================================================================================*/ @@ -178,12 +186,14 @@ class OPrismHeaderPacket : public QObject virtual ~OPrismHeaderPacket(); unsigned int signalStrength() const; private: const struct prism_hdr* _header; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanPacket - DLT_IEEE802_11 frame *======================================================================================*/ @@ -207,12 +217,14 @@ class OWaveLanPacket : public QObject int subType() const; int version() const; bool usesWep() const; private: const struct ieee_802_11_header* _wlanhdr; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementPacket - type: management (T_MGMT) *======================================================================================*/ @@ -236,12 +248,14 @@ class OWaveLanManagementPacket : public QObject bool canCFP_REQ() const; bool canPrivacy() const; private: const struct ieee_802_11_mgmt_header* _header; const struct ieee_802_11_mgmt_body* _body; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementSSID *======================================================================================*/ @@ -255,12 +269,14 @@ class OWaveLanManagementSSID : public QObject virtual ~OWaveLanManagementSSID(); QString ID( bool decloak = false ) const; private: const struct ssid_t* _data; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementRates *======================================================================================*/ @@ -271,12 +287,14 @@ class OWaveLanManagementRates : public QObject public: OWaveLanManagementRates( const unsigned char*, const struct rates_t*, QObject* parent = 0 ); virtual ~OWaveLanManagementRates(); private: const struct rates_t* _data; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementCF *======================================================================================*/ @@ -287,12 +305,14 @@ class OWaveLanManagementCF : public QObject public: OWaveLanManagementCF( const unsigned char*, const struct cf_t*, QObject* parent = 0 ); virtual ~OWaveLanManagementCF(); private: const struct cf_t* _data; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementFH *======================================================================================*/ @@ -303,12 +323,14 @@ class OWaveLanManagementFH : public QObject public: OWaveLanManagementFH( const unsigned char*, const struct fh_t*, QObject* parent = 0 ); virtual ~OWaveLanManagementFH(); private: const struct fh_t* _data; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementDS *======================================================================================*/ @@ -321,12 +343,14 @@ class OWaveLanManagementDS : public QObject virtual ~OWaveLanManagementDS(); int channel() const; private: const struct ds_t* _data; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementTim *======================================================================================*/ @@ -337,12 +361,14 @@ class OWaveLanManagementTim : public QObject public: OWaveLanManagementTim( const unsigned char*, const struct tim_t*, QObject* parent = 0 ); virtual ~OWaveLanManagementTim(); private: const struct tim_t* _data; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementIBSS *======================================================================================*/ @@ -353,12 +379,14 @@ class OWaveLanManagementIBSS : public QObject public: OWaveLanManagementIBSS( const unsigned char*, const struct ibss_t*, QObject* parent = 0 ); virtual ~OWaveLanManagementIBSS(); private: const struct ibss_t* _data; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanManagementChallenge *======================================================================================*/ @@ -369,12 +397,14 @@ class OWaveLanManagementChallenge : public QObject public: OWaveLanManagementChallenge( const unsigned char*, const struct challenge_t*, QObject* parent = 0 ); virtual ~OWaveLanManagementChallenge(); private: const struct challenge_t* _data; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanDataPacket - type: data (T_DATA) *======================================================================================*/ @@ -385,12 +415,14 @@ class OWaveLanDataPacket : public QObject public: OWaveLanDataPacket( const unsigned char*, const struct ieee_802_11_data_header*, OWaveLanPacket* parent = 0 ); virtual ~OWaveLanDataPacket(); private: const struct ieee_802_11_data_header* _header; + class Private; + Private *d; }; /*====================================================================================== * OWaveLanControlPacket - type: control (T_CTRL) *======================================================================================*/ @@ -403,12 +435,14 @@ class OWaveLanControlPacket : public QObject virtual ~OWaveLanControlPacket(); QString controlType() const; private: const struct ieee_802_11_control_header* _header; + class Private; + Private *d; }; /*====================================================================================== * OLLCPacket - IEEE 802.2 Link Level Control *======================================================================================*/ @@ -419,12 +453,14 @@ class OLLCPacket : public QObject public: OLLCPacket( const unsigned char*, const struct ieee_802_11_802_2_header* data, QObject* parent = 0 ); virtual ~OLLCPacket(); private: const struct ieee_802_11_802_2_header* _header; + class Private; + Private *d; }; /*====================================================================================== * OIPPacket *======================================================================================*/ @@ -446,12 +482,14 @@ class OIPPacket : public QObject int ttl() const; int protocol() const; int checksum() const; private: const struct iphdr* _iphdr; + class Private; + Private *d; }; /*====================================================================================== * OARPPacket *======================================================================================*/ @@ -470,12 +508,14 @@ class OARPPacket : public QObject //int type() const; QString type() const; private: const struct myarphdr* _arphdr; + class Private; + Private *d; }; /*====================================================================================== * OUDPPacket *======================================================================================*/ @@ -491,12 +531,14 @@ class OUDPPacket : public QObject int toPort() const; int length() const; int checksum() const; private: const struct udphdr* _udphdr; + class Private; + Private *d; }; /*====================================================================================== * ODHCPPacket *======================================================================================*/ @@ -519,12 +561,14 @@ class ODHCPPacket : public QObject bool isReply() const; QString type() const; private: const struct dhcp_packet* _dhcphdr; unsigned char _type; + class Private; + Private *d; }; /*====================================================================================== * OTCPPacket *======================================================================================*/ @@ -542,12 +586,14 @@ class OTCPPacket : public QObject int ack() const; int window() const; int checksum() const; private: const struct tcphdr* _tcphdr; + class Private; + Private *d; }; /*====================================================================================== * OPacketCapturer *======================================================================================*/ @@ -662,10 +708,14 @@ class OPacketCapturer : public QObject bool _open; // check this before doing pcap calls pcap_t* _pch; // pcap library handle pcap_dumper_t* _pcd; // pcap dumper handle QSocketNotifier* _sn; // socket notifier for main loop mutable char _errbuf[PCAP_ERRBUF_SIZE]; // holds error strings from libpcap QMap<QString, int> _stats; // statistics; + class Private; // Private Forward declaration + Private *d; // if we need to add data }; +} +} #endif // OPCAP_H diff --git a/libopie2/opienet/ostation.cpp b/libopie2/opienet/ostation.cpp index 8c989d8..140b924 100644 --- a/libopie2/opienet/ostation.cpp +++ b/libopie2/opienet/ostation.cpp @@ -28,12 +28,17 @@ */ #include <opie2/ostation.h> #include <opie2/odebug.h> + +using namespace Opie::Core; + +namespace Opie { +namespace Net { /*====================================================================================== * OStation *======================================================================================*/ OStation::OStation() { @@ -59,6 +64,9 @@ void OStation::dump() odebug << "------- OStation::dump() ------------" << oendl; qDebug( "type: %s", (const char*) type ); qDebug( "mac: %s", (const char*) macAddress.toString() ); qDebug( "ap: %s", (const char*) apAddress.toString() ); qDebug( "ip: %s", (const char*) ipAddress.toString() ); } + +} +}
\ No newline at end of file diff --git a/libopie2/opienet/ostation.h b/libopie2/opienet/ostation.h index 1e7366d..68f1114 100644 --- a/libopie2/opienet/ostation.h +++ b/libopie2/opienet/ostation.h @@ -37,14 +37,18 @@ #include <qstring.h> #include <qhostaddress.h> #include <qobject.h> #include <sys/types.h> +namespace Opie { +namespace Net { + class OStation; + typedef QList<OStation> OStationList; /*====================================================================================== * OStation *======================================================================================*/ @@ -63,11 +67,16 @@ class OStation /* WaveLan */ QString ssid; OMacAddress apAddress; int channel; bool encrypted; + private: + class Private; + Private *d; }; +} +} #endif // OSTATION_H |