@ -187,6 +187,10 @@ int yon_network_save(main_window *widgets){
} else {
yon_config_remove_by_key ( DOMAIN_admanger_parameter ) ;
}
} else {
yon_config_remove_by_key ( DOMAIN_parameter ) ;
yon_config_remove_by_key ( DOMAIN_admanger_parameter ) ;
}
if ( gtk_switch_get_active ( GTK_SWITCH ( widgets - > NetworkNTPServerSwitch ) ) ) {
@ -235,6 +239,16 @@ int yon_network_save(main_window *widgets){
yon_config_remove_by_key ( hostname_parameter ) ;
}
{
int size ;
config_str users = yon_config_get_all_by_key ( NETWORK_parameter_search , & size ) ;
for ( int i = 0 ; i < size ; i + + ) {
char * parameter = yon_char_divide_search ( users [ i ] , " = " , - 1 ) ;
yon_config_remove_by_key ( parameter ) ;
free ( parameter ) ;
}
}
GList * list = gtk_container_get_children ( GTK_CONTAINER ( widgets - > NetworkConnectionsBox ) ) ;
GList * iter ;
for ( iter = list ; iter ; iter = iter - > next ) {
@ -290,17 +304,19 @@ int yon_network_save(main_window *widgets){
}
}
if ( ! main_config . configure_mode ) {
int connect_size ;
int connect_size = 0 ;
int param_size = 0 ;
config_str connections = yon_config_get_all_ by_key( NETWORK_parameter_search , & connect_size ) ;
char * connections_string = yon_char_parsed_to_string ( connections , connect_size , " " ) ;
config_str connections = yon_config_get_all_ keys_ by_key( NETWORK_parameter_search , & connect_size ) ;
config_str connection_parameters = yon_config_get_save_parameters_by_list ( & param_size , connections , connect_size ) ;
yon_char_parsed_free ( connections , connect_size ) ;
int size ;
config_str parameters = yon_config_get_save_parameters_by_key ( & size , DOMAIN_parameter , DOMAIN_admanger_parameter , NTPSERVERS_parameter , hostname_parameter , NULL ) ;
if ( parameters ) {
if ( parameters | | connection_parameters ) {
char * command_parameters = yon_char_parsed_to_string ( parameters , size , " -- " ) ;
char * command = yon_char_unite ( ubconfig_dull_command , " --target system " , command_parameters , " " , connections_string , NULL ) ;
char * connections_string = yon_char_parsed_to_string ( connection_parameters , param_size , " -- " ) ;
char * command = yon_char_unite ( ubconfig_dull_command , " --target system remove [autoinstall] " , NETWORK_parameter_all , " ; " , ubconfig_dull_command , " --target system " , yon_char_return_if_exist ( command_parameters , " " ) , " " , connections_string , NULL ) ;
if ( ! system ( yon_debug_output ( " %s \n " , command ) ) ) { }
free ( command ) ;
yon_char_parsed_free ( parameters , size ) ;
@ -392,6 +408,7 @@ void yon_network_init(main_window *widgets){
for ( int i = 0 ; i < size ; i + + ) {
char * parameter = yon_char_new ( parameters [ i ] ) ;
char * parameter_name = yon_char_divide_search ( parameter , " = " , - 1 ) ;
if ( yon_config_get_status ( parameter_name ) < - 1 ) continue ;
char * key = yon_config_parameter_get_key ( parameter_name ) ;
char * key_sub = key + yon_char_find_last ( key , ' [ ' ) ;
char * subkey = yon_config_parameter_get_key ( key_sub ) ;