diff --git a/sflphone-client-gnome/src/actions.c b/sflphone-client-gnome/src/actions.c
index f5d353f063fff3e5259b5d40204eef69f691cfa5..5239c0d38885d98c9ec8fc718ecd88f159484d8c 100644
--- a/sflphone-client-gnome/src/actions.c
+++ b/sflphone-client-gnome/src/actions.c
@@ -31,6 +31,17 @@
 #include <sys/types.h>
 #include <unistd.h>
 
+#include <netinet/in.h>
+#include <arpa/nameser.h>
+#include <resolv.h>
+
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <sys/ioctl.h>
+#include <linux/if.h>
+
+
+
 GHashTable * ip2ip_profile=NULL;
 
     void
@@ -1305,7 +1316,6 @@ void sflphone_save_history (void)
    void
 sflphone_srtp_sdes_on(callable_obj_t * c)
 {
-    DEBUG("*************** Srtp SDES ON *************");
 
     c->_srtp_state = SRTP_STATE_SDES_SUCCESS;
 
@@ -1403,3 +1413,39 @@ sflphone_call_state_changed( callable_obj_t * c, const gchar * description, cons
     calltree_update_call(current_calls, c, NULL);
     update_actions();
 }
+
+
+void sflphone_get_interface_addr_from_name(char *iface_name) {
+
+    struct ifreq ifr;
+    int fd;
+    int err;
+    static char iface_addr[18];
+    char *tmp_addr;
+
+    struct sockaddr_in *saddr_in;
+    struct in_addr *addr_in;
+
+    if((fd = socket (AF_INET, SOCK_DGRAM,0)) < 0)
+        DEBUG("getInterfaceAddrFromName error could not open socket\n");
+
+    memset (&ifr, 0, sizeof (struct ifreq));
+
+    strcpy (ifr.ifr_name, iface_name);
+    ifr.ifr_addr.sa_family = AF_INET;
+
+    if((err = ioctl(fd, SIOCGIFADDR, &ifr)) < 0)
+        DEBUG("getInterfaceAddrFromName use default interface (0.0.0.0)\n");
+
+    
+    saddr_in = (struct sockaddr_in *)&ifr.ifr_addr;
+    addr_in = &(saddr_in->sin_addr);
+
+    tmp_addr = (char *)addr_in;
+
+    snprintf(iface_addr, sizeof(iface_addr), "%d.%d.%d.%d", 
+	     UC(tmp_addr[0]), UC(tmp_addr[1]), UC(tmp_addr[2]), UC(tmp_addr[3]));
+
+    printf("************************************* %s ****************************\n", iface_addr);
+}
+
diff --git a/sflphone-client-gnome/src/actions.h b/sflphone-client-gnome/src/actions.h
index 6cf10d932fc6b6a9158e2e12aa08d92e9e621720..eaca4713faedc4ca39c5c8abf4eff6948bed5580 100644
--- a/sflphone-client-gnome/src/actions.h
+++ b/sflphone-client-gnome/src/actions.h
@@ -30,6 +30,8 @@
 #include <errors.h>
 #include <conference_obj.h>
 
+#define	UC(b)	(((int)b)&0xff)
+
 /** @file actions.h
   * @brief General functions that change the state of the application.
   * All of these functions are called when dbus signals are triggered.  Exceptions
@@ -284,5 +286,8 @@ void sflphone_request_go_clear(void);
  */
 void sflphone_call_state_changed(callable_obj_t * c, const gchar * description, const guint code);
 
-
+/**
+ * Resolve an interface address given its name
+ */
+void sflphone_get_interface_addr_from_name(char *iface_name);
 #endif
diff --git a/sflphone-client-gnome/src/config/accountconfigdialog.c b/sflphone-client-gnome/src/config/accountconfigdialog.c
index 28f45737aec30f5609a225de89a0c7e8a63b9edf..55512d1879b6ee63b768a1793c8e9c132fd26eb1 100644
--- a/sflphone-client-gnome/src/config/accountconfigdialog.c
+++ b/sflphone-client-gnome/src/config/accountconfigdialog.c
@@ -566,6 +566,7 @@ static local_interface_changed_cb(GtkWidget * widget, gpointer data UNUSED) {
 		gchar *local_address;
 
 		local_interface = (gchar *) gtk_combo_box_get_active_text (GTK_COMBO_BOX (localAddressCombo));
+		// sflphone_get_interface_addr_from_name((char *)local_interface);
 		local_address = dbus_get_address_from_interface_name (local_interface);
 
 		gtk_entry_set_text (GTK_ENTRY(publishedAddressEntry), local_address);
@@ -646,6 +647,7 @@ static same_as_local_cb(GtkWidget * widget, gpointer data UNUSED)
 		gchar * local_address;
 
 		local_interface = (gchar *) gtk_combo_box_get_active_text(GTK_COMBO_BOX(localAddressCombo));
+		// sflphone_get_interface_addr_from_name((char *)local_interface);
 		local_address = dbus_get_address_from_interface_name(local_interface);
 
 		gtk_entry_set_text(GTK_ENTRY(publishedAddressEntry), local_address);
diff --git a/sflphone-common/src/sip/sipvoiplink.cpp b/sflphone-common/src/sip/sipvoiplink.cpp
index 9b2a1e510a349d72623e19ab983274e87ea02abf..fcb88cec6248c920680b99f40ee8be0fab9182ab 100644
--- a/sflphone-common/src/sip/sipvoiplink.cpp
+++ b/sflphone-common/src/sip/sipvoiplink.cpp
@@ -395,8 +395,6 @@ std::string SIPVoIPLink::getInterfaceAddrFromName(std::string ifaceName) {
 
     if((err = ioctl(fd, SIOCGIFADDR, &ifr)) < 0)
         _debug("getInterfaceAddrFromName use default interface (0.0.0.0)\n");
-
-    // printf("Local address: %s\n", inet_ntos( ((struct sockaddr_in *) &ifr.ifr_ifru.ifru_addr)->sin_addr ));
     
     saddr_in = (struct sockaddr_in *)&ifr.ifr_addr;
     addr_in = &(saddr_in->sin_addr);