1:
2:
3: /*************
4: * *
5: * SENTINEL *
6: * *
7: *************/
8:
9:
10: #ifndef WWWI_MIND_DNSSOCKET_H
11: #define WWWI_MIND_DNSSOCKET_H
12:
13:
14: /*********************
15: * *
16: * PROJECT INCLUDES *
17: * *
18: *********************/
19:
20:
21: #include "mind.h"
22: #include "dnspacket.h"
23: #include "wwwi/mutex.h"
24: #include "wwwi/udpsocket.h"
25:
26:
27: using WWWI::Mutex;
28: using WWWI::UDPSocket;
29:
30:
31: /*************************
32: * *
33: * FORWARD DECLARATIONS *
34: * *
35: *************************/
36:
37:
38: /********************
39: * *
40: * CLASS DNSSOCKET *
41: * *
42: ********************/
43:
44:
45: class DNSSocket : public UDPSocket {
46: public:
47: DNSSocket(IPAddress i_ipAddress = INADDR_ANY, unsigned short i_usPort = 0);
48: virtual DNSPacketPtr RecvPacket(void);
49: virtual DNSPacketPtr RecvPacketTimed(unsigned i_uTimeoutMS);
50: virtual void SendPacket(DNSPacketConstPtr i_dppOut);
51: virtual ~DNSSocket(void);
52:
53: protected:
54: Mutex m_mx;
55:
56: };
57: DECL_POINTER_TYPES(DNSSocket)
58:
59:
60: /************
61: * *
62: * THE END *
63: * *
64: ************/
65:
66:
67: #endif
68:
69:
70: