r3543 - in trunk: libminisip/include/libminisip/signaling/sip libminisip/source libminisip/source/subsystem_signaling/sip minisip/minisip/gui/gtkgui minisip/share
mikma at minisip.org
mikma at minisip.org
Sat Dec 1 19:52:45 CET 2007
Author: mikma
Date: 2007-12-01 19:52:45 +0100 (Sat, 01 Dec 2007)
New Revision: 3543
Modified:
trunk/libminisip/include/libminisip/signaling/sip/SipSoftPhoneConfiguration.h
trunk/libminisip/source/Minisip.cxx
trunk/libminisip/source/subsystem_signaling/sip/SipSoftPhoneConfiguration.cxx
trunk/minisip/minisip/gui/gtkgui/SettingsDialog.cxx
trunk/minisip/minisip/gui/gtkgui/SettingsDialog.h
trunk/minisip/share/minisip.glade
Log:
Add choice between IPv4 single stack, and IPv4+IPv6 dual stack option
to settings dialog.
Modified: trunk/libminisip/include/libminisip/signaling/sip/SipSoftPhoneConfiguration.h
===================================================================
--- trunk/libminisip/include/libminisip/signaling/sip/SipSoftPhoneConfiguration.h 2007-12-01 18:19:18 UTC (rev 3542)
+++ trunk/libminisip/include/libminisip/signaling/sip/SipSoftPhoneConfiguration.h 2007-12-01 18:52:45 UTC (rev 3543)
@@ -116,6 +116,7 @@
std::string userDefinedStunServer;
bool useAnat;
+ bool useIpv6;
std::string soundDeviceIn;
std::string soundDeviceOut;
Modified: trunk/libminisip/source/Minisip.cxx
===================================================================
--- trunk/libminisip/source/Minisip.cxx 2007-12-01 18:19:18 UTC (rev 3542)
+++ trunk/libminisip/source/Minisip.cxx 2007-12-01 18:52:45 UTC (rev 3543)
@@ -339,7 +339,9 @@
#endif
MRef<IpProvider *> ipProvider = IpProvider::create( phoneConf );
MRef<IpProvider *> ip6Provider;
- ip6Provider = IpProvider::create( phoneConf, true );
+ if( phoneConf->useIpv6 ){
+ ip6Provider = IpProvider::create( phoneConf, true );
+ }
//#ifdef DEBUG_OUTPUT
// mout << BOLD << "init 5/9: Creating SIP transport layer" << PLAIN << endl;
//#endif
Modified: trunk/libminisip/source/subsystem_signaling/sip/SipSoftPhoneConfiguration.cxx
===================================================================
--- trunk/libminisip/source/subsystem_signaling/sip/SipSoftPhoneConfiguration.cxx 2007-12-01 18:19:18 UTC (rev 3542)
+++ trunk/libminisip/source/subsystem_signaling/sip/SipSoftPhoneConfiguration.cxx 2007-12-01 18:52:45 UTC (rev 3543)
@@ -83,6 +83,7 @@
stunDomain(""),
useUserDefinedStunServer(false),
useAnat(false),
+ useIpv6(false),
soundDeviceIn(""),
soundDeviceOut(""),
videoDevice(""),
@@ -421,6 +422,7 @@
/************************************************************
* Advanced settings
************************************************************/
+ backend->saveBool( "use_ipv6", useIpv6 );
list< MRef<SipTransportConfig*> >::iterator j;
for( j = sipStackConfig->transports.begin();
j != sipStackConfig->transports.end(); j++ ){
@@ -796,6 +798,8 @@
}while( true );
+ useIpv6 = backend->loadBool( "use_ipv6", true );
+
list< MRef<SipTransportConfig*> >::iterator j;
for( j = sipStackConfig->transports.begin();
j != sipStackConfig->transports.end(); j++ ){
Modified: trunk/minisip/minisip/gui/gtkgui/SettingsDialog.cxx
===================================================================
--- trunk/minisip/minisip/gui/gtkgui/SettingsDialog.cxx 2007-12-01 18:19:18 UTC (rev 3542)
+++ trunk/minisip/minisip/gui/gtkgui/SettingsDialog.cxx 2007-12-01 18:52:45 UTC (rev 3543)
@@ -797,6 +797,9 @@
refXml->get_widget( "networkInterfacesCombo", networkInterfacesCombo );
refXml->get_widget( "networkInterfacesEntry", networkInterfacesEntry );
+ refXml->get_widget( "ipv4Radio", ipv4Radio );
+ refXml->get_widget( "ipv46Radio", ipv46Radio );
+
refXml->get_widget( "transportView", transportView );
refXml->get_widget( "sipSpin", sipSpin );
@@ -843,6 +846,13 @@
string preferredIfaceIP = NetworkFunctions::getInterfaceIPStr( config->networkInterfaceName );
networkInterfacesEntry->set_text( preferredIfaceIP );
}
+
+ if( config->useIpv6 ){
+ ipv46Radio->set_active( true );
+ }
+ else{
+ ipv4Radio->set_active( true );
+ }
sipSpin->set_value( config->sipStack->getStackConfig()->preferedLocalSipPort );
sipsSpin->set_value( config->sipStack->getStackConfig()->preferedLocalSipsPort );
@@ -880,6 +890,8 @@
config->networkInterfaceName = ifaceSel;
}
+ config->useIpv6 = ipv46Radio->get_active();
+
config->sipStack->getStackConfig()->preferedLocalSipPort = sipSpin->get_value_as_int();
config->sipStack->getStackConfig()->preferedLocalSipsPort = sipsSpin->get_value_as_int();
Modified: trunk/minisip/minisip/gui/gtkgui/SettingsDialog.h
===================================================================
--- trunk/minisip/minisip/gui/gtkgui/SettingsDialog.h 2007-12-01 18:19:18 UTC (rev 3542)
+++ trunk/minisip/minisip/gui/gtkgui/SettingsDialog.h 2007-12-01 18:52:45 UTC (rev 3543)
@@ -267,6 +267,8 @@
*/
Gtk::Combo * networkInterfacesCombo;
Gtk::Entry * networkInterfacesEntry;
+ Gtk::RadioButton * ipv4Radio;
+ Gtk::RadioButton * ipv46Radio;
Gtk::TreeView * transportView;
Modified: trunk/minisip/share/minisip.glade
===================================================================
--- trunk/minisip/share/minisip.glade 2007-12-01 18:19:18 UTC (rev 3542)
+++ trunk/minisip/share/minisip.glade 2007-12-01 18:52:45 UTC (rev 3543)
@@ -1381,77 +1381,6 @@
<property name="spacing">0</property>
<child>
- <widget class="GtkHBox" id="hbox73">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">0</property>
-
- <child>
- <widget class="GtkLabel" id="label200">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b><big>Choose Network Interface</big></b></property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">12</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">12</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkCombo" id="networkInterfacesCombo">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="value_in_list">False</property>
- <property name="allow_empty">True</property>
- <property name="case_sensitive">False</property>
- <property name="enable_arrow_keys">True</property>
- <property name="enable_arrows_always">False</property>
-
- <child internal-child="entry">
- <widget class="GtkEntry" id="networkInterfacesEntry">
- <property name="visible">True</property>
- <property name="editable">False</property>
- <property name="visibility">True</property>
- <property name="max_length">0</property>
- <property name="text" translatable="yes"></property>
- <property name="has_frame">True</property>
- <property name="invisible_char">*</property>
- <property name="activates_default">False</property>
- </widget>
- </child>
-
- <child internal-child="list">
- <widget class="GtkList" id="list1">
- <property name="visible">True</property>
- <property name="selection_mode">GTK_SELECTION_BROWSE</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">12</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">6</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
<widget class="GtkLabel" id="label201">
<property name="visible">True</property>
<property name="label" translatable="yes"><b><big>SIP network transport</big></b></property>
@@ -1498,6 +1427,129 @@
<property name="spacing">6</property>
<child>
+ <widget class="GtkHBox" id="hbox73">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="GtkLabel" id="label200">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes"><b>Network Interface:</b></property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">True</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.5</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkCombo" id="networkInterfacesCombo">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="value_in_list">False</property>
+ <property name="allow_empty">True</property>
+ <property name="case_sensitive">False</property>
+ <property name="enable_arrow_keys">True</property>
+ <property name="enable_arrows_always">False</property>
+
+ <child internal-child="entry">
+ <widget class="GtkEntry" id="networkInterfacesEntry">
+ <property name="visible">True</property>
+ <property name="editable">False</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ </child>
+
+ <child internal-child="list">
+ <widget class="GtkList" id="list1">
+ <property name="visible">True</property>
+ <property name="selection_mode">GTK_SELECTION_BROWSE</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox92">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="ipv4Radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">IPv4 only</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkRadioButton" id="ipv46Radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">IPv4 and IPv6 (dual stack)</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">ipv4Radio</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
<widget class="GtkTable" id="table18">
<property name="visible">True</property>
<property name="n_rows">2</property>
More information about the Minisip-devel
mailing list