]> git.llucax.com Git - z.facultad/75.74/practicos.git/blobdiff - practicas/pipi/src/ipaddr.h
Se agrega una primera aproximación al NameServer. Se implementa el parser y
[z.facultad/75.74/practicos.git] / practicas / pipi / src / ipaddr.h
index e6dfa5b3a928cad7ff91126b8f5b9ff44a07b0d0..b5c9cead49541fc8f090cdcdfa5cbce36b8673e9 100644 (file)
@@ -4,13 +4,14 @@
 #include <string>
 #include <cstdlib>
 #include <stdexcept>
 #include <string>
 #include <cstdlib>
 #include <stdexcept>
+#include <stdint.h>
 
 /// Dirección IP
 struct IPAddr
 {
 
     /// Átomo de dirección IP
 
 /// Dirección IP
 struct IPAddr
 {
 
     /// Átomo de dirección IP
-    typedef unsigned char atom;
+    typedef uint8_t atom;
 
     /// Representación interna
     atom atoms[4];
 
     /// Representación interna
     atom atoms[4];
@@ -22,13 +23,16 @@ struct IPAddr
     IPAddr(atom a1, atom a2, atom a3, atom a4);
 
     /// Constructor
     IPAddr(atom a1, atom a2, atom a3, atom a4);
 
     /// Constructor
-    IPAddr(unsigned ip);
+    IPAddr(uint32_t ip);
 
     /// Constructor
 
     /// Constructor
-    IPAddr(std::string ip) throw (std::logic_error);
+    //IPAddr(const char* ip) throw (std::logic_error);
+
+    /// Constructor
+    IPAddr(const std::string& ip) throw (std::logic_error);
 
     /// Operador de casteo a unsigned
 
     /// Operador de casteo a unsigned
-    operator unsigned () const;
+    operator uint32_t () const;
 
     /// Operador de casteo a std::string
     operator std::string () const;
 
     /// Operador de casteo a std::string
     operator std::string () const;