<div dir="ltr">Hi Matthew,<br><br>I will apply these changes and try. <br><br>Alternately, I saved the working configuration from windows client using export and used in ubuntu 8.0.4 by importing. It is able to connect but not able to access the remote network. The vpn router's log shows that the tunnel is established and shrew soft vpn client also shows tunnel is established. But the same configuration on the client and vpn router able to establish in windows and able to access the remote machines. <br>
<br>Anyway, let me try to apply your new fixes and see if it solves the problem and update you.<br><br>Best Regards<br>Prakash<br><br><div class="gmail_quote">On Wed, Aug 20, 2008 at 6:48 PM, Matthew Grooms <span dir="ltr"><<a href="mailto:mgrooms@shrew.net">mgrooms@shrew.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">P.M.S.Prakash wrote:<br>
</div><div class="Ih2E3d"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Matthew,<br>
<br>
iked problem is resolved. Since other ipsec software "racoon" was installed, it was giving the error. I have uninstalled it and I am able to run iked now.<br>
<br>
</blockquote>
<br></div>
Glad you figured this out. A conflict with racoon is usually the cause.<div class="Ih2E3d"><br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Since I am not able to select FQDN option from ikea, even though group1 is set to agressive mode, it is failing to connect to the VPN router.<br>
<br>
</blockquote>
<br></div>
Right. I forgot to switch some cases around after making aggressive the first element in the combobox. Try the attached patch which should work. Its still against original sources so beware. You must revert the other patch ( see source/ikea/*.orig files ) for it to apply cleanly. Once I hear back from you, I will commit the changes if they look good.<br>

<br>
Thanks,<br><font color="#888888">
<br>
-Matthew<br>
<br>
</font><br>Index: source/ikea/site.ui<br>
===================================================================<br>
--- source/ikea/site.ui (revision 486)<br>
+++ source/ikea/site.ui (working copy)<br>
@@ -130,39 +130,6 @@<br>
                             <enum>Sunken</enum><br>
                         </property><br>
                     </widget><br>
-                    <widget class="QComboBox"><br>
-                        <item><br>
-                            <property name="text"><br>
-                                <string>disabled</string><br>
-                            </property><br>
-                        </item><br>
-                        <item><br>
-                            <property name="text"><br>
-                                <string>ike config pull</string><br>
-                            </property><br>
-                        </item><br>
-                        <item><br>
-                            <property name="text"><br>
-                                <string>ike config push</string><br>
-                            </property><br>
-                        </item><br>
-                        <item><br>
-                            <property name="text"><br>
-                                <string>dhcp over ipsec</string><br>
-                            </property><br>
-                        </item><br>
-                        <property name="name"><br>
-                            <cstring>comboBoxConfigMethod</cstring><br>
-                        </property><br>
-                        <property name="geometry"><br>
-                            <rect><br>
-                                <x>121</x><br>
-                                <y>70</y><br>
-                                <width>130</width><br>
-                                <height>21</height><br>
-                            </rect><br>
-                        </property><br>
-                    </widget><br>
                     <widget class="QLabel"><br>
                         <property name="name"><br>
                             <cstring>textLabelConfigMethod</cstring><br>
@@ -198,6 +165,39 @@<br>
                             <set>AlignRight</set><br>
                         </property><br>
                     </widget><br>
+                    <widget class="QComboBox"><br>
+                        <item><br>
+                            <property name="text"><br>
+                                <string>disabled</string><br>
+                            </property><br>
+                        </item><br>
+                        <item><br>
+                            <property name="text"><br>
+                                <string>ike config pull</string><br>
+                            </property><br>
+                        </item><br>
+                        <item><br>
+                            <property name="text"><br>
+                                <string>ike config push</string><br>
+                            </property><br>
+                        </item><br>
+                        <item><br>
+                            <property name="text"><br>
+                                <string>dhcp over ipsec</string><br>
+                            </property><br>
+                        </item><br>
+                        <property name="name"><br>
+                            <cstring>comboBoxConfigMethod</cstring><br>
+                        </property><br>
+                        <property name="geometry"><br>
+                            <rect><br>
+                                <x>121</x><br>
+                                <y>70</y><br>
+                                <width>130</width><br>
+                                <height>21</height><br>
+                            </rect><br>
+                        </property><br>
+                    </widget><br>
                 </widget><br>
                 <widget class="QGroupBox"><br>
                     <property name="name"><br>
@@ -347,6 +347,25 @@<br>
                             <set>AlignHCenter</set><br>
                         </property><br>
                     </widget><br>
+                    <widget class="QLineEdit"><br>
+                        <property name="name"><br>
+                            <cstring>lineEditMTU</cstring><br>
+                        </property><br>
+                        <property name="geometry"><br>
+                            <rect><br>
+                                <x>10</x><br>
+                                <y>90</y><br>
+                                <width>41</width><br>
+                                <height>21</height><br>
+                            </rect><br>
+                        </property><br>
+                        <property name="text"><br>
+                            <string>1380</string><br>
+                        </property><br>
+                        <property name="alignment"><br>
+                            <set>AlignRight</set><br>
+                        </property><br>
+                    </widget><br>
                     <widget class="QComboBox"><br>
                         <item><br>
                             <property name="text"><br>
@@ -370,25 +389,6 @@<br>
                             </rect><br>
                         </property><br>
                     </widget><br>
-                    <widget class="QLineEdit"><br>
-                        <property name="name"><br>
-                            <cstring>lineEditMTU</cstring><br>
-                        </property><br>
-                        <property name="geometry"><br>
-                            <rect><br>
-                                <x>10</x><br>
-                                <y>90</y><br>
-                                <width>41</width><br>
-                                <height>21</height><br>
-                            </rect><br>
-                        </property><br>
-                        <property name="text"><br>
-                            <string>1380</string><br>
-                        </property><br>
-                        <property name="alignment"><br>
-                            <set>AlignRight</set><br>
-                        </property><br>
-                    </widget><br>
                 </widget><br>
             </widget><br>
             <widget class="QWidget"><br>
@@ -1793,12 +1793,12 @@<br>
                     <widget class="QComboBox"><br>
                         <item><br>
                             <property name="text"><br>
-                                <string>main</string><br>
+                                <string>aggressive</string><br>
                             </property><br>
                         </item><br>
                         <item><br>
                             <property name="text"><br>
-                                <string>aggressive</string><br>
+                                <string>main</string><br>
                             </property><br>
                         </item><br>
                         <property name="name"><br>
@@ -2544,73 +2544,73 @@<br>
         <sender>comboBoxAddressMethod</sender><br>
         <signal>activated(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdateGeneral()</slot><br>
     </connection><br>
     <connection><br>
         <sender>checkBoxAddressAuto</sender><br>
         <signal>stateChanged(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdateGeneral()</slot><br>
     </connection><br>
     <connection><br>
         <sender>comboBoxNATTMode</sender><br>
         <signal>activated(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdateClient()</slot><br>
     </connection><br>
     <connection><br>
         <sender>comboBoxFragMode</sender><br>
         <signal>activated(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdateClient()</slot><br>
     </connection><br>
     <connection><br>
         <sender>checkBoxDNSEnable</sender><br>
         <signal>stateChanged(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdateNameResolution()</slot><br>
     </connection><br>
     <connection><br>
         <sender>checkBoxDNSAuto</sender><br>
         <signal>stateChanged(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdateNameResolution()</slot><br>
     </connection><br>
     <connection><br>
         <sender>checkBoxPolicyAuto</sender><br>
         <signal>stateChanged(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdatePolicy()</slot><br>
     </connection><br>
     <connection><br>
         <sender>comboBoxP1Exchange</sender><br>
         <signal>activated(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>UpdateExchange()</slot><br>
+        <slot>UpdatePhase1()</slot><br>
     </connection><br>
     <connection><br>
         <sender>comboBoxP1Cipher</sender><br>
         <signal>activated(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>UpdateCipher()</slot><br>
+        <slot>UpdatePhase1()</slot><br>
     </connection><br>
     <connection><br>
         <sender>comboBoxP2Transform</sender><br>
         <signal>activated(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>UpdateTransform()</slot><br>
+        <slot>UpdatePhase2()</slot><br>
     </connection><br>
     <connection><br>
         <sender>listViewPolicies</sender><br>
         <signal>selectionChanged()</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdatePolicy()</slot><br>
     </connection><br>
     <connection><br>
         <sender>comboBoxAuthMethod</sender><br>
         <signal>activated(int)</signal><br>
         <receiver>site</receiver><br>
-        <slot>UpdateAuth()</slot><br>
+        <slot>UpdateAuthentication()</slot><br>
     </connection><br>
     <connection><br>
         <sender>comboBoxLocalIDType</sender><br>
@@ -2664,7 +2664,7 @@<br>
         <sender>comboBoxConfigMethod</sender><br>
         <signal>activated(const QString&amp;)</signal><br>
         <receiver>site</receiver><br>
-        <slot>Update()</slot><br>
+        <slot>UpdateGeneral()</slot><br>
     </connection><br>
 </connections><br>
 <tabstops><br>
@@ -2731,15 +2731,17 @@<br>
     <slot access="private">init()</slot><br>
     <slot>ModPolicy()</slot><br>
     <slot>DelPolicy()</slot><br>
-    <slot>Update()</slot><br>
-    <slot>UpdateExchange()</slot><br>
-    <slot>UpdateCipher()</slot><br>
-    <slot>UpdateTransform()</slot><br>
-    <slot>UpdateAuth()</slot><br>
+    <slot>UpdateGeneral()</slot><br>
+    <slot>UpdateClient()</slot><br>
+    <slot>UpdateNameResolution()</slot><br>
+    <slot>UpdateAuthentication()</slot><br>
     <slot>UpdateLocalID()</slot><br>
     <slot>UpdateRemoteID()</slot><br>
     <slot>SelectLocalID()</slot><br>
     <slot>SelectRemoteID()</slot><br>
+    <slot>UpdatePhase1()</slot><br>
+    <slot>UpdatePhase2()</slot><br>
+    <slot>UpdatePolicy()</slot><br>
     <slot>InputCAFile()</slot><br>
     <slot>InputCertFile()</slot><br>
     <slot>InputPKeyFile()</slot><br>
Index: source/ikea/site.ui.h<br>
===================================================================<br>
--- source/ikea/site.ui.h       (revision 486)<br>
+++ source/ikea/site.ui.h       (working copy)<br>
@@ -41,6 +41,9 @@<br>
<br>
 #include "ikea.h"<br>
<br>
+#define EXCH_AGGR_MODE         0<br>
+#define EXCH_MAIN_MODE         1<br>
+<br>
 #define AUTH_HYBRID_RSA_XAUTH  0<br>
 #define AUTH_MUTUAL_RSA_XAUTH  1<br>
 #define AUTH_MUTUAL_PSK_XAUTH  2<br>
@@ -203,11 +206,11 @@<br>
<br>
        // update dialog<br>
<br>
-       Update();<br>
-       UpdateAuth();<br>
-       UpdateExchange();<br>
-       UpdateCipher();<br>
-       UpdateTransform();<br>
+       UpdateGeneral();<br>
+       UpdateAuthentication();<br>
+       UpdatePhase1();<br>
+       UpdatePhase2();<br>
+       UpdatePolicy();<br>
 }<br>
<br>
 void site::ModPolicy()<br>
@@ -470,11 +473,11 @@<br>
        if( config.get_string( "phase1-exchange",<br>
                text, MAX_CONFSTRING, 0 ) )<br>
        {<br>
+               if( !strcmp( text, "aggressive" ) )<br>
+                       comboBoxP1Exchange->setCurrentItem( EXCH_AGGR_MODE );<br>
+<br>
                if( !strcmp( text, "main" ) )<br>
-                       comboBoxP1Exchange->setCurrentItem( 0 );<br>
-<br>
-               if( !strcmp( text, "aggressive" ) )<br>
-                       comboBoxP1Exchange->setCurrentItem( 1 );<br>
+                       comboBoxP1Exchange->setCurrentItem( EXCH_MAIN_MODE );<br>
        }<br>
<br>
        // authentication mode ( default hybrid rsa xauth )<br>
@@ -498,8 +501,6 @@<br>
                        comboBoxAuthMethod->setCurrentItem( 4 );<br>
        }<br>
<br>
-       UpdateAuth();<br>
-<br>
        // local identity type<br>
        //<br>
        // NOTE : Requires phase1 exchange type & authentication mode<br>
@@ -714,10 +715,11 @@<br>
<br>
        // update dialog<br>
<br>
-       Update();<br>
-       UpdateExchange();<br>
-       UpdateCipher();<br>
-       UpdateTransform();<br>
+       UpdateGeneral();<br>
+       UpdateAuthentication();<br>
+       UpdatePhase1();<br>
+       UpdatePhase2();<br>
+       UpdatePolicy();<br>
<br>
        return true;<br>
 }<br>
@@ -1060,22 +1062,13 @@<br>
<br>
        // phase1 exchange type<br>
<br>
-       if( !comboBoxP1Exchange->currentItem() )<br>
-       {<br>
-               // main mode<br>
-<br>
+       if( comboBoxP1Exchange->currentItem() == EXCH_AGGR_MODE )<br>
                config.set_string( "phase1-exchange",<br>
-                       "main",<br>
-                       strlen( "main" ) );<br>
-       }<br>
-       else<br>
-       {<br>
-               // aggressive mode<br>
+                       "aggressive", strlen( "aggressive" ) );<br>
<br>
+       if( comboBoxP1Exchange->currentItem() == EXCH_MAIN_MODE )<br>
                config.set_string( "phase1-exchange",<br>
-                       "aggressive",<br>
-                       strlen( "aggressive" ) );<br>
-       }<br>
+                       "main", strlen( "main" ) );<br>
<br>
        // phase1 dh group<br>
<br>
@@ -1276,9 +1269,10 @@<br>
        return true;<br>
 }<br>
<br>
+void site::UpdateGeneral()<br>
+{<br>
+       QString addrmeth = comboBoxAddressMethod->currentText();<br>
<br>
-void site::Update()<br>
-{<br>
        // auto configuration<br>
<br>
        long aconf = comboBoxConfigMethod->currentItem();<br>
@@ -1301,8 +1295,14 @@<br>
                comboBoxAddressMethod->insertItem( "Use existing adapter and current address" );<br>
        }<br>
<br>
-       // local adapter mode<br>
+       // adapter mode<br>
<br>
+       combobox_setbytext( ( char * ) addrmeth.ascii(), comboBoxAddressMethod );<br>
+<br>
+       bool addrmeth_changed = false;<br>
+       if( addrmeth != comboBoxAddressMethod->currentText() )<br>
+               addrmeth_changed = true;<br>
+<br>
        if( !comboBoxAddressMethod->currentItem() )<br>
        {<br>
                // virtual<br>
@@ -1317,7 +1317,8 @@<br>
                        case 1: // ike config push<br>
                        case 2: // ike config pull<br>
                                checkBoxAddressAuto->setEnabled( true );<br>
-                               checkBoxAddressAuto->setChecked( true );<br>
+                               if( addrmeth_changed )<br>
+                                       checkBoxAddressAuto->setChecked( true );<br>
                                break;<br>
<br>
                        case 3: // dhcp over ipsec<br>
@@ -1352,6 +1353,14 @@<br>
                lineEditNetmask->setEnabled( false );<br>
        }<br>
<br>
+       UpdateClient();<br>
+       UpdateNameResolution();<br>
+}<br>
+<br>
+void site::UpdateClient()<br>
+{<br>
+       long aconf = comboBoxConfigMethod->currentItem();<br>
+<br>
        // nat traversal mode<br>
<br>
        if( !comboBoxNATTMode->currentItem() )<br>
@@ -1394,7 +1403,7 @@<br>
                lineEditFragSize->setEnabled( true );<br>
        }<br>
<br>
-       // client long banner<br>
+       // login banner<br>
<br>
        if( aconf == 0 )<br>
        {<br>
@@ -1403,7 +1412,12 @@<br>
        }<br>
        else<br>
                checkBoxBanner->setEnabled( true );<br>
+}<br>
<br>
+void site::UpdateNameResolution()<br>
+{<br>
+       long aconf = comboBoxConfigMethod->currentItem();<br>
+<br>
        // dns enabled<br>
<br>
        if( checkBoxDNSEnable->isChecked() )<br>
@@ -1444,175 +1458,10 @@<br>
                textLabelDNSSuffix->setEnabled( false );<br>
                lineEditDNSSuffix->setEnabled( false );<br>
        }<br>
-<br>
-       // policy configuration<br>
-<br>
-       if( checkBoxPolicyAuto->isChecked() )<br>
-       {<br>
-               // automatic<br>
-<br>
-               listViewPolicies->setEnabled( false );<br>
-<br>
-               pushButtonPolicyAdd->setEnabled( false );<br>
-               pushButtonPolicyMod->setEnabled( false );<br>
-               pushButtonPolicyDel->setEnabled( false );<br>
-       }<br>
-       else<br>
-       {<br>
-               // manual<br>
-<br>
-               listViewPolicies->setEnabled( true );<br>
-<br>
-               pushButtonPolicyAdd->setEnabled( true );<br>
-<br>
-               // policy item selection<br>
-<br>
-               if( listViewPolicies->selectedItem() != NULL )<br>
-               {<br>
-                       // have selection<br>
-<br>
-                       pushButtonPolicyMod->setEnabled( true );<br>
-                       pushButtonPolicyDel->setEnabled( true );<br>
-               }<br>
-               else<br>
-               {<br>
-                       // no selection<br>
-<br>
-                       pushButtonPolicyMod->setEnabled( false );<br>
-                       pushButtonPolicyDel->setEnabled( false );<br>
-               }<br>
-       }<br>
 }<br>
<br>
-void site::UpdateExchange()<br>
+void site::UpdateAuthentication()<br>
 {<br>
-       // exchange mode<br>
-<br>
-       if( !comboBoxP1Exchange->currentItem() )<br>
-       {<br>
-               // main mode ( auto allowed )<br>
-<br>
-               QString text = comboBoxP1DHGroup->currentText();<br>
-<br>
-               comboBoxP1DHGroup->clear();<br>
-               comboBoxP1DHGroup->insertItem( "auto" );<br>
-               comboBoxP1DHGroup->insertItem( "group 1" );<br>
-               comboBoxP1DHGroup->insertItem( "group 2" );<br>
-               comboBoxP1DHGroup->insertItem( "group 5" );<br>
-               comboBoxP1DHGroup->insertItem( "group 14" );<br>
-               comboBoxP1DHGroup->insertItem( "group 15" );<br>
-<br>
-               combobox_setbytext( ( char * ) text.ascii(), comboBoxP1DHGroup );<br>
-       }<br>
-       else<br>
-       {<br>
-               // aggressive mode ( auto not allowed )<br>
-<br>
-               QString text = comboBoxP1DHGroup->currentText();<br>
-<br>
-               comboBoxP1DHGroup->clear();<br>
-               comboBoxP1DHGroup->insertItem( "group 1" );<br>
-               comboBoxP1DHGroup->insertItem( "group 2" );<br>
-               comboBoxP1DHGroup->insertItem( "group 5" );<br>
-               comboBoxP1DHGroup->insertItem( "group 14" );<br>
-               comboBoxP1DHGroup->insertItem( "group 15" );<br>
-<br>
-               combobox_setbytext( ( char * ) text.ascii(), comboBoxP1DHGroup );<br>
-       }<br>
-<br>
-       UpdateAuth();<br>
-}<br>
-<br>
-void site::UpdateCipher()<br>
-{<br>
-       // chipher type<br>
-<br>
-       QString text = comboBoxP1Keylen->currentText();<br>
-<br>
-       switch( comboBoxP1Cipher->currentItem() )<br>
-       {<br>
-               case 1: // aes<br>
-               {<br>
-                       comboBoxP1Keylen->setEnabled( true );<br>
-                       comboBoxP1Keylen->clear();<br>
-                       comboBoxP1Keylen->insertItem( "auto" );<br>
-                       comboBoxP1Keylen->insertItem( "128" );<br>
-                       comboBoxP1Keylen->insertItem( "192" );<br>
-                       comboBoxP1Keylen->insertItem( "256" );<br>
-                       break;<br>
-               }<br>
-<br>
-               case 2: // blowfish<br>
-               {<br>
-                       comboBoxP1Keylen->setEnabled( true );<br>
-                       comboBoxP1Keylen->clear();<br>
-                       comboBoxP1Keylen->insertItem( "auto" );<br>
-                       for( long b = 128; b <= 256; b += 8 )<br>
-                               comboBoxP1Keylen->insertItem(<br>
-                                       QString::number( b, 10 ) );<br>
-                       break;<br>
-               }<br>
-<br>
-               default: // all others<br>
-               {<br>
-                       comboBoxP1Keylen->setCurrentItem( 0 );<br>
-                       comboBoxP1Keylen->setEnabled( false );<br>
-                       break;<br>
-               }<br>
-       }<br>
-<br>
-       if( !comboBoxP1Cipher->currentItem() )<br>
-               comboBoxP1Keylen->setCurrentItem( 0 );<br>
-       else<br>
-               combobox_setbytext( ( char * ) text.ascii(), comboBoxP1Keylen );<br>
-}<br>
-<br>
-void site::UpdateTransform()<br>
-{<br>
-       // chipher type<br>
-<br>
-       QString text = comboBoxP2Keylen->currentText();<br>
-<br>
-       switch( comboBoxP2Transform->currentItem() )<br>
-       {<br>
-               case 1: // aes<br>
-               {<br>
-                       comboBoxP2Keylen->setEnabled( true );<br>
-                       comboBoxP2Keylen->clear();<br>
-                       comboBoxP2Keylen->insertItem( "auto" );<br>
-                       comboBoxP2Keylen->insertItem( "128" );<br>
-                       comboBoxP2Keylen->insertItem( "192" );<br>
-                       comboBoxP2Keylen->insertItem( "256" );<br>
-                       break;<br>
-               }<br>
-<br>
-               case 2: // blowfish<br>
-               {<br>
-                       comboBoxP2Keylen->setEnabled( true );<br>
-                       comboBoxP2Keylen->clear();<br>
-                       comboBoxP2Keylen->insertItem( "auto" );<br>
-                       for( long b = 128; b <= 256; b += 8 )<br>
-                               comboBoxP2Keylen->insertItem(<br>
-                                       QString::number( b, 10 ) );<br>
-                       break;<br>
-               }<br>
-<br>
-               default: // all others<br>
-               {<br>
-                       comboBoxP2Keylen->setCurrentItem( 0 );<br>
-                       comboBoxP2Keylen->setEnabled( false );<br>
-                       break;<br>
-               }<br>
-       }<br>
-<br>
-       if( !comboBoxP2Transform->currentItem() )<br>
-               comboBoxP2Keylen->setCurrentItem( 0 );<br>
-       else<br>
-               combobox_setbytext( ( char * ) text.ascii(), comboBoxP2Keylen );<br>
-}<br>
-<br>
-void site::UpdateAuth()<br>
-{<br>
        // authentication method<br>
<br>
        long auth = comboBoxAuthMethod->currentItem();<br>
@@ -1643,22 +1492,23 @@<br>
                {<br>
                        comboBoxLocalIDType->clear();<br>
<br>
-                       if( !comboBoxP1Exchange->currentItem() )<br>
+                       if( comboBoxP1Exchange->currentItem() == EXCH_AGGR_MODE )<br>
                        {<br>
-                               // main mode<br>
+                               // aggressive mode<br>
<br>
                                comboBoxLocalIDType->insertItem( IDTXT_ASN1 );<br>
+                               comboBoxLocalIDType->insertItem( IDTXT_FQDN );<br>
+                               comboBoxLocalIDType->insertItem( IDTXT_UFQDN );<br>
                                comboBoxLocalIDType->insertItem( IDTXT_ADDR );<br>
+                               comboBoxLocalIDType->insertItem( IDTXT_KEYID );<br>
                        }<br>
-                       else<br>
+<br>
+                       if( comboBoxP1Exchange->currentItem() == EXCH_MAIN_MODE )<br>
                        {<br>
-                               // aggressive mode<br>
+                               // main mode<br>
<br>
                                comboBoxLocalIDType->insertItem( IDTXT_ASN1 );<br>
-                               comboBoxLocalIDType->insertItem( IDTXT_FQDN );<br>
-                               comboBoxLocalIDType->insertItem( IDTXT_UFQDN );<br>
                                comboBoxLocalIDType->insertItem( IDTXT_ADDR );<br>
-                               comboBoxLocalIDType->insertItem( IDTXT_KEYID );<br>
                        }<br>
<br>
                        break;<br>
@@ -1669,14 +1519,8 @@<br>
                {<br>
                        comboBoxLocalIDType->clear();<br>
<br>
-                       if( !comboBoxP1Exchange->currentItem() )<br>
+                       if( comboBoxP1Exchange->currentItem() == EXCH_AGGR_MODE )<br>
                        {<br>
-                               // main mode<br>
-<br>
-                               comboBoxLocalIDType->insertItem( IDTXT_ADDR );<br>
-                       }<br>
-                       else<br>
-                       {<br>
                                // aggressive mode<br>
<br>
                                comboBoxLocalIDType->insertItem( IDTXT_FQDN );<br>
@@ -1685,6 +1529,13 @@<br>
                                comboBoxLocalIDType->insertItem( IDTXT_KEYID );<br>
                        }<br>
<br>
+                       if( comboBoxP1Exchange->currentItem() == EXCH_MAIN_MODE )<br>
+                       {<br>
+                               // main mode<br>
+<br>
+                               comboBoxLocalIDType->insertItem( IDTXT_ADDR );<br>
+                       }<br>
+<br>
                        break;<br>
                }<br>
        }<br>
@@ -1709,22 +1560,23 @@<br>
                {<br>
                        comboBoxRemoteIDType->clear();<br>
<br>
-                       if( !comboBoxP1Exchange->currentItem() )<br>
+                       if( comboBoxP1Exchange->currentItem() == EXCH_AGGR_MODE )<br>
                        {<br>
-                               // main mode<br>
+                               // aggressive mode<br>
<br>
                                comboBoxRemoteIDType->insertItem( IDTXT_ASN1 );<br>
+                               comboBoxRemoteIDType->insertItem( IDTXT_FQDN );<br>
+                               comboBoxRemoteIDType->insertItem( IDTXT_UFQDN );<br>
                                comboBoxRemoteIDType->insertItem( IDTXT_ADDR );<br>
+                               comboBoxRemoteIDType->insertItem( IDTXT_KEYID );<br>
                        }<br>
-                       else<br>
+<br>
+                       if( comboBoxP1Exchange->currentItem() == EXCH_MAIN_MODE )<br>
                        {<br>
-                               // aggressive mode<br>
+                               // main mode<br>
<br>
                                comboBoxRemoteIDType->insertItem( IDTXT_ASN1 );<br>
-                               comboBoxRemoteIDType->insertItem( IDTXT_FQDN );<br>
-                               comboBoxRemoteIDType->insertItem( IDTXT_UFQDN );<br>
                                comboBoxRemoteIDType->insertItem( IDTXT_ADDR );<br>
-                               comboBoxRemoteIDType->insertItem( IDTXT_KEYID );<br>
                        }<br>
<br>
                        break;<br>
@@ -1735,14 +1587,8 @@<br>
                {<br>
                        comboBoxRemoteIDType->clear();<br>
<br>
-                       if( !comboBoxP1Exchange->currentItem() )<br>
+                       if( comboBoxP1Exchange->currentItem() == EXCH_AGGR_MODE )<br>
                        {<br>
-                               // main mode<br>
-<br>
-                               comboBoxRemoteIDType->insertItem( IDTXT_ADDR );<br>
-                       }<br>
-                       else<br>
-                       {<br>
                                // aggressive mode<br>
<br>
                                comboBoxRemoteIDType->insertItem( IDTXT_FQDN );<br>
@@ -1751,6 +1597,13 @@<br>
                                comboBoxRemoteIDType->insertItem( IDTXT_KEYID );<br>
                        }<br>
<br>
+                       if( comboBoxP1Exchange->currentItem() == EXCH_MAIN_MODE )<br>
+                       {<br>
+                               // main mode<br>
+<br>
+                               comboBoxRemoteIDType->insertItem( IDTXT_ADDR );<br>
+                       }<br>
+<br>
                        break;<br>
                }<br>
        }<br>
@@ -1930,7 +1783,172 @@<br>
        UpdateRemoteID();<br>
 }<br>
<br>
+void site::UpdatePhase1()<br>
+{<br>
+       // exchange mode<br>
<br>
+       if( comboBoxP1Exchange->currentItem() == EXCH_AGGR_MODE )<br>
+       {<br>
+               // aggressive mode ( auto not allowed )<br>
+<br>
+               QString text = comboBoxP1DHGroup->currentText();<br>
+<br>
+               comboBoxP1DHGroup->clear();<br>
+               comboBoxP1DHGroup->insertItem( "group 1" );<br>
+               comboBoxP1DHGroup->insertItem( "group 2" );<br>
+               comboBoxP1DHGroup->insertItem( "group 5" );<br>
+               comboBoxP1DHGroup->insertItem( "group 14" );<br>
+               comboBoxP1DHGroup->insertItem( "group 15" );<br>
+<br>
+               combobox_setbytext( ( char * ) text.ascii(), comboBoxP1DHGroup );<br>
+       }<br>
+<br>
+       if( comboBoxP1Exchange->currentItem() == EXCH_MAIN_MODE )<br>
+       {<br>
+               // main mode ( auto allowed )<br>
+<br>
+               QString text = comboBoxP1DHGroup->currentText();<br>
+<br>
+               comboBoxP1DHGroup->clear();<br>
+               comboBoxP1DHGroup->insertItem( "auto" );<br>
+               comboBoxP1DHGroup->insertItem( "group 1" );<br>
+               comboBoxP1DHGroup->insertItem( "group 2" );<br>
+               comboBoxP1DHGroup->insertItem( "group 5" );<br>
+               comboBoxP1DHGroup->insertItem( "group 14" );<br>
+               comboBoxP1DHGroup->insertItem( "group 15" );<br>
+<br>
+               combobox_setbytext( ( char * ) text.ascii(), comboBoxP1DHGroup );<br>
+       }<br>
+<br>
+       // chipher type<br>
+<br>
+       QString text = comboBoxP1Keylen->currentText();<br>
+<br>
+       switch( comboBoxP1Cipher->currentItem() )<br>
+       {<br>
+               case 1: // aes<br>
+               {<br>
+                       comboBoxP1Keylen->setEnabled( true );<br>
+                       comboBoxP1Keylen->clear();<br>
+                       comboBoxP1Keylen->insertItem( "auto" );<br>
+                       comboBoxP1Keylen->insertItem( "128" );<br>
+                       comboBoxP1Keylen->insertItem( "192" );<br>
+                       comboBoxP1Keylen->insertItem( "256" );<br>
+                       break;<br>
+               }<br>
+<br>
+               case 2: // blowfish<br>
+               {<br>
+                       comboBoxP1Keylen->setEnabled( true );<br>
+                       comboBoxP1Keylen->clear();<br>
+                       comboBoxP1Keylen->insertItem( "auto" );<br>
+                       for( long b = 128; b <= 256; b += 8 )<br>
+                               comboBoxP1Keylen->insertItem(<br>
+                                       QString::number( b, 10 ) );<br>
+                       break;<br>
+               }<br>
+<br>
+               default: // all others<br>
+               {<br>
+                       comboBoxP1Keylen->setCurrentItem( 0 );<br>
+                       comboBoxP1Keylen->setEnabled( false );<br>
+                       break;<br>
+               }<br>
+       }<br>
+<br>
+       if( !comboBoxP1Cipher->currentItem() )<br>
+               comboBoxP1Keylen->setCurrentItem( 0 );<br>
+       else<br>
+               combobox_setbytext( ( char * ) text.ascii(), comboBoxP1Keylen );<br>
+<br>
+       UpdateAuthentication();<br>
+}<br>
+<br>
+void site::UpdatePhase2()<br>
+{<br>
+       // transform type<br>
+<br>
+       QString text = comboBoxP2Keylen->currentText();<br>
+<br>
+       switch( comboBoxP2Transform->currentItem() )<br>
+       {<br>
+               case 1: // aes<br>
+               {<br>
+                       comboBoxP2Keylen->setEnabled( true );<br>
+                       comboBoxP2Keylen->clear();<br>
+                       comboBoxP2Keylen->insertItem( "auto" );<br>
+                       comboBoxP2Keylen->insertItem( "128" );<br>
+                       comboBoxP2Keylen->insertItem( "192" );<br>
+                       comboBoxP2Keylen->insertItem( "256" );<br>
+                       break;<br>
+               }<br>
+<br>
+               case 2: // blowfish<br>
+               {<br>
+                       comboBoxP2Keylen->setEnabled( true );<br>
+                       comboBoxP2Keylen->clear();<br>
+                       comboBoxP2Keylen->insertItem( "auto" );<br>
+                       for( long b = 128; b <= 256; b += 8 )<br>
+                               comboBoxP2Keylen->insertItem(<br>
+                                       QString::number( b, 10 ) );<br>
+                       break;<br>
+               }<br>
+<br>
+               default: // all others<br>
+               {<br>
+                       comboBoxP2Keylen->setCurrentItem( 0 );<br>
+                       comboBoxP2Keylen->setEnabled( false );<br>
+                       break;<br>
+               }<br>
+       }<br>
+<br>
+       if( !comboBoxP2Transform->currentItem() )<br>
+               comboBoxP2Keylen->setCurrentItem( 0 );<br>
+       else<br>
+               combobox_setbytext( ( char * ) text.ascii(), comboBoxP2Keylen );<br>
+}<br>
+<br>
+void site::UpdatePolicy()<br>
+{<br>
+       // policy configuration<br>
+<br>
+       if( checkBoxPolicyAuto->isChecked() )<br>
+       {<br>
+               // automatic<br>
+<br>
+               listViewPolicies->setEnabled( false );<br>
+<br>
+               pushButtonPolicyAdd->setEnabled( false );<br>
+               pushButtonPolicyMod->setEnabled( false );<br>
+               pushButtonPolicyDel->setEnabled( false );<br>
+       }<br>
+       else<br>
+       {<br>
+               // manual<br>
+<br>
+               listViewPolicies->setEnabled( true );<br>
+<br>
+               pushButtonPolicyAdd->setEnabled( true );<br>
+<br>
+               // policy item selection<br>
+<br>
+               if( listViewPolicies->selectedItem() != NULL )<br>
+               {<br>
+                       // have selection<br>
+<br>
+                       pushButtonPolicyMod->setEnabled( true );<br>
+                       pushButtonPolicyDel->setEnabled( true );<br>
+               }<br>
+               else<br>
+               {<br>
+                       // no selection<br>
+<br>
+                       pushButtonPolicyMod->setEnabled( false );<br>
+                       pushButtonPolicyDel->setEnabled( false );<br>
+               }<br>
+       }<br>
+}<br>
+<br>
 void site::InputCAFile()<br>
 {<br>
        QString types(<br>
@@ -1986,3 +2004,4 @@<br>
<br>
        return;<br>
 }<br>
+<br>
<br></blockquote></div><br></div>