Index: branches/proxy/src/lib/network/Makefile.am
===================================================================
--- branches/proxy/src/lib/network/Makefile.am	(revision 9305)
+++ branches/proxy/src/lib/network/Makefile.am	(revision 9306)
@@ -40,5 +40,7 @@
 		      synchronizeable_var/synchronizeable_bool.cc \
 		      synchronizeable_var/synchronizeable_uint.cc \
-		      synchronizeable_var/synchronizeable_ip.cc
+		      synchronizeable_var/synchronizeable_ip.cc \
+		      \
+		      ip.cc
 
 
@@ -82,5 +84,7 @@
 		 synchronizeable_var/synchronizeable_bool.h \
 		 synchronizeable_var/synchronizeable_uint.h \
-		 synchronizeable_var/synchronizeable_ip.h
+		 synchronizeable_var/synchronizeable_ip.h \
+		 \
+		 ip.h
 
 
Index: branches/proxy/src/lib/network/ip.cc
===================================================================
--- branches/proxy/src/lib/network/ip.cc	(revision 9306)
+++ branches/proxy/src/lib/network/ip.cc	(revision 9306)
@@ -0,0 +1,133 @@
+/**
+ * @file ip.cc
+ * @brief A IP class, that handles all about time.
+ *
+ * code taken from audiere.
+ */
+
+#include "ip.h"
+#include "multi_type.h"
+#include "substring.h"
+
+IP::IP()
+{
+  this->_ip = 0;
+  this->_port = 0;
+}
+
+
+IP::IP(int ip, int port)
+{
+  this->_ip = ip;
+  this->_port = port;
+}
+
+
+
+IP::IP(const std::string& ip)
+{
+  *this = IP::stringToIP(ip);
+}
+
+
+IP::IP(const IPaddress& ip)
+{
+  this->_ip = ip.host;
+  this->_port = ip.port;
+}
+
+
+IP::IP(const IP& ip)
+{
+  this->_ip = ip.ip();
+  this->_port = ip.port();
+}
+
+
+
+const IP& IP::operator=(const IP& ip)
+{
+  this->_ip = ip.ip();
+  this->_port = ip.port();
+  return *this;
+}
+
+
+
+bool IP::operator==(const IP& ip)
+{
+  return (this->_ip == ip.ip() && this->_port == ip.port());
+}
+
+
+/**
+ * @returns The retrieved IP
+ *
+ */
+IP IP::stringToIP(const std::string& ip)
+{
+  IPaddress ipaddr;
+
+  SDLNet_ResolveHost(&ipaddr, NULL, 2000);
+
+  return IP(ipaddr);
+
+  /*
+  SubString addr(ip, '.');
+  if(ip.size() != 4 )
+    return -1;
+
+  MultiType part0(ip[0]);
+  MultiType part1(ip[1]);
+  MultiType part2(ip[2]);
+  MultiType part3(ip[3]);
+  */
+}
+
+int IP::ipPart(unsigned int part) const
+{
+  switch (part)
+  {
+    case 0:
+      return  (_ip & 0xFF000000) >> 24;
+    case 1:
+      return  (_ip & 0x00FF0000) >> 16;
+    case 2:
+      return  (_ip & 0x0000FF00) >> 8;
+    case 3:
+      return  (_ip & 0x000000FF);
+    default:
+      return -1;
+  }
+
+}
+
+
+std::string IP::ipString() const
+{
+  return IP::ipToString(this->_ip);
+}
+
+
+std::string IP::ipToString(const IPaddress& ipaddr)
+{
+  int ip = SDLNet_Read32 (ipaddr.host);
+  return ipToString(ip);
+}
+
+
+
+
+
+std::string IP::ipToString(int ip)
+{
+  MultiType part0((int) (ip & 0xFF000000) >> 24);
+  MultiType part1((int) (ip & 0x00FF0000) >> 16);
+  MultiType part2((int) (ip & 0x0000FF00) >>  8);
+  MultiType part3((int) (ip & 0x000000FF) );
+
+
+  return part0.getString() + "." + part1.getString() + "." +
+         part2.getString() + "." + part3.getString();
+}
+
Index: branches/proxy/src/lib/network/ip.h
===================================================================
--- branches/proxy/src/lib/network/ip.h	(revision 9306)
+++ branches/proxy/src/lib/network/ip.h	(revision 9306)
@@ -0,0 +1,53 @@
+
+/*!
+ * @file ip.h
+ *
+ * @brief the ip class is used to transform strings to ip's and backwards
+ * it can also be used to
+ *
+ */
+
+#ifndef __IP_H__
+#define __IP_H__
+
+#include <string>
+
+#include "netdefs.h"
+
+
+//! A class to handle time itself
+class IP
+{
+  public:
+    IP();
+    IP(const std::string& ip);
+    IP(int ip, int port);
+    IP(const IPaddress& ip);
+    IP(const IP& ip);
+
+    const IP& operator=(const IP& ip);
+    bool operator==(const IP& ip);
+
+
+    int ip() const { return this->_ip; };
+    short port() const { return this->_port; };
+
+    int ipPart(unsigned int part) const;
+    std::string ipString() const;
+
+
+
+  public:
+    static IP stringToIP(const std::string& ip);
+
+
+    static std::string ipToString(const IPaddress& ipaddr);
+    static std::string ipToString(int ip);
+
+  private:
+    int           _ip;    //!< The IP in int form.
+    short         _port;  //!< The Port number of the IP
+
+};
+
+#endif /* __IP_H__ */
Index: branches/proxy/src/lib/util/ip.cc
===================================================================
--- branches/proxy/src/lib/util/ip.cc	(revision 9305)
+++ 	(revision )
@@ -1,51 +1,0 @@
-/**
- * @file ip.cc
- * @brief A IP class, that handles all about time.
- *
- * code taken from audiere.
- */
-
-#include "ip.h"
-#include "multi_type.h"
-
-IP::IP()
-{}
-
-
-IP::IP(int ip)
-{
-  this->_ip = ip;
-}
-
-IP::IP(const std::string& ip)
-{
-  this->_ip = IP::stringToIP(ip);
-}
-
-
-
-
-int IP::stringToIP(const std::string& ip)
-{
-
-}
-
-std::string IP::ipToString(const IPaddress& ipaddr)
-{
-  int ip = SDLNet_Read32 (ipaddr.host);
-  return ipToString(ip);
-}
-
-
-std::string IP::ipToString(int ip)
-{
-  MultiType part0( (ip & 0xFF000000) >> 24);
-  MultiType part1( (ip & 0x00FF0000) >> 16);
-  MultiType part2( (ip & 0x0000FF00) >>  8);
-  MultiType part3( (ip & 0x000000FF) );
-
-
-  return part0.getString() + "." + part1.getString() + "." +
-           part2.getString() + "." + part3.getString();
-}
-
Index: branches/proxy/src/lib/util/ip.h
===================================================================
--- branches/proxy/src/lib/util/ip.h	(revision 9305)
+++ 	(revision )
@@ -1,45 +1,0 @@
-
-/*!
- * @file ip.h
- * @brief Definition of Time Class.
- *
- * These are mainly Classes, that are used for wrapping around SDL_thread
- */
-
-#ifndef __IP_H__
-#define __IP_H__
-
-#include <string>
-
-#include "netdefs.h"
-
-
-//! A class to handle time itself
-class IP
-{
-  public:
-    IP();
-    IP(const std::string& ip);
-    IP(int ip);
-
-
-    int ip() const { return this->_ip; };
-    short port() const { return this->_port; };
-
-    int ip(unsigned int part) const;
-    std::string& ipString() const;
-
-
-
-  public:
-    static int stringToIP(const std::string& ip);
-    static std::string ipToString(const IPaddress& ipaddr);
-    static std::string ipToString(int ip);
-
-  private:
-    int           _ip;  //!< the IP in int form.
-    short         _port;
-
-};
-
-#endif /* __IP_H__ */
