diff --git a/vpn-daemons/vpnc/ChangeLog b/vpn-daemons/vpnc/ChangeLog index 2d9b2e11b..c17c41ede 100644 --- a/vpn-daemons/vpnc/ChangeLog +++ b/vpn-daemons/vpnc/ChangeLog @@ -1,3 +1,8 @@ +2008-03-06 Dan Williams + + * src/nm-vpnc-service-vpnc-helper.c + - (main): pass the MTU in the returned option hash table + 2007-12-31 Christopher Aillon * src/nm-vpnc-service.h: diff --git a/vpn-daemons/vpnc/src/nm-vpnc-service-vpnc-helper.c b/vpn-daemons/vpnc/src/nm-vpnc-service-vpnc-helper.c index 7c87137fb..9f31acc6c 100644 --- a/vpn-daemons/vpnc/src/nm-vpnc-service-vpnc-helper.c +++ b/vpn-daemons/vpnc/src/nm-vpnc-service-vpnc-helper.c @@ -113,6 +113,21 @@ str_to_gvalue (const char *str, gboolean try_convert) return val; } +static GValue * +uint_to_gvalue (guint32 num) +{ + GValue *val; + + if (num == 0) + return NULL; + + val = g_slice_new0 (GValue); + g_value_init (val, G_TYPE_UINT); + g_value_set_uint (val, num); + + return val; +} + static GValue * addr_to_gvalue (const char *str) { @@ -126,11 +141,7 @@ addr_to_gvalue (const char *str) if (!inet_aton (str, &temp_addr)) return NULL; - val = g_slice_new0 (GValue); - g_value_init (val, G_TYPE_UINT); - g_value_set_uint (val, temp_addr.s_addr); - - return val; + return uint_to_gvalue (temp_addr.s_addr); } static GValue * @@ -263,6 +274,11 @@ main (int argc, char *argv[]) if (val) g_hash_table_insert (config, NM_VPN_PLUGIN_IP4_CONFIG_BANNER, val); + /* Set MTU to 1412 */ + val = uint_to_gvalue (1412); + if (val) + g_hash_table_insert (config, NM_VPN_PLUGIN_IP4_CONFIG_MTU, val); + /* Send the config info to nm-vpnc-service */ send_ip4_config (connection, config);