@ -120,6 +120,13 @@ static DBusMessage * wpas_dbus_error_scan_error(DBusMessage *message,
}
DBusMessage * wpas_dbus_error_no_memory ( DBusMessage * message )
{
wpa_printf ( MSG_DEBUG , " dbus: Failed to allocate memory " ) ;
return dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY , NULL ) ;
}
static const char * const dont_quote [ ] = {
" key_mgmt " , " proto " , " pairwise " , " auth_alg " , " group " , " eap " ,
" opensc_engine_path " , " pkcs11_engine_path " , " pkcs11_module_path " ,
@ -667,13 +674,11 @@ DBusMessage * wpas_dbus_handler_get_interface(DBusMessage *message,
path = wpa_s - > dbus_new_path ;
reply = dbus_message_new_method_return ( message ) ;
if ( reply = = NULL )
return dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
return wpas_dbus_error_no_memory ( message ) ;
if ( ! dbus_message_append_args ( reply , DBUS_TYPE_OBJECT_PATH , & path ,
DBUS_TYPE_INVALID ) ) {
dbus_message_unref ( reply ) ;
return dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
return wpas_dbus_error_no_memory ( message ) ;
}
return reply ;
@ -1025,11 +1030,7 @@ static int wpas_dbus_get_scan_ssids(DBusMessage *message, DBusMessageIter *var,
if ( len ! = 0 ) {
ssid = os_malloc ( len ) ;
if ( ssid = = NULL ) {
wpa_printf ( MSG_DEBUG ,
" %s[dbus]: out of memory. Cannot allocate memory for SSID " ,
__func__ ) ;
* reply = dbus_message_new_error (
message , DBUS_ERROR_NO_MEMORY , NULL ) ;
* reply = wpas_dbus_error_no_memory ( message ) ;
return - 1 ;
}
os_memcpy ( ssid , val , len ) ;
@ -1093,12 +1094,8 @@ static int wpas_dbus_get_scan_ies(DBusMessage *message, DBusMessageIter *var,
nies = os_realloc ( ies , ies_len + len ) ;
if ( nies = = NULL ) {
wpa_printf ( MSG_DEBUG ,
" %s[dbus]: out of memory. Cannot allocate memory for IE " ,
__func__ ) ;
os_free ( ies ) ;
* reply = dbus_message_new_error (
message , DBUS_ERROR_NO_MEMORY , NULL ) ;
* reply = wpas_dbus_error_no_memory ( message ) ;
return - 1 ;
}
ies = nies ;
@ -1191,11 +1188,7 @@ static int wpas_dbus_get_scan_channels(DBusMessage *message,
freqs = nfreqs ;
}
if ( freqs = = NULL ) {
wpa_printf ( MSG_DEBUG ,
" %s[dbus]: out of memory. can't allocate memory for freqs " ,
__func__ ) ;
* reply = dbus_message_new_error (
message , DBUS_ERROR_NO_MEMORY , NULL ) ;
* reply = wpas_dbus_error_no_memory ( message ) ;
return - 1 ;
}
@ -1210,11 +1203,7 @@ static int wpas_dbus_get_scan_channels(DBusMessage *message,
os_free ( freqs ) ;
freqs = nfreqs ;
if ( freqs = = NULL ) {
wpa_printf ( MSG_DEBUG ,
" %s[dbus]: out of memory. Can't allocate memory for freqs " ,
__func__ ) ;
* reply = dbus_message_new_error (
message , DBUS_ERROR_NO_MEMORY , NULL ) ;
* reply = wpas_dbus_error_no_memory ( message ) ;
return - 1 ;
}
freqs [ freqs_num ] = 0 ;
@ -1425,8 +1414,7 @@ DBusMessage * wpas_dbus_handler_signal_poll(DBusMessage *message,
nomem :
if ( reply )
dbus_message_unref ( reply ) ;
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY , NULL ) ;
return reply ;
return wpas_dbus_error_no_memory ( message ) ;
}
@ -1506,15 +1494,13 @@ DBusMessage * wpas_dbus_handler_add_network(DBusMessage *message,
reply = dbus_message_new_method_return ( message ) ;
if ( reply = = NULL ) {
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
reply = wpas_dbus_error_no_memory ( message ) ;
goto err ;
}
if ( ! dbus_message_append_args ( reply , DBUS_TYPE_OBJECT_PATH , & path ,
DBUS_TYPE_INVALID ) ) {
dbus_message_unref ( reply ) ;
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
reply = wpas_dbus_error_no_memory ( message ) ;
goto err ;
}
@ -1845,26 +1831,18 @@ DBusMessage * wpas_dbus_handler_add_blob(DBusMessage *message,
blob = os_zalloc ( sizeof ( * blob ) ) ;
if ( ! blob ) {
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
reply = wpas_dbus_error_no_memory ( message ) ;
goto err ;
}
blob - > data = os_malloc ( blob_len ) ;
if ( ! blob - > data ) {
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
blob - > name = os_strdup ( blob_name ) ;
if ( ! blob - > data | | ! blob - > name ) {
reply = wpas_dbus_error_no_memory ( message ) ;
goto err ;
}
os_memcpy ( blob - > data , blob_data , blob_len ) ;
blob - > len = blob_len ;
blob - > name = os_strdup ( blob_name ) ;
if ( ! blob - > name ) {
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
goto err ;
}
wpa_config_set_blob ( wpa_s - > conf , blob ) ;
wpas_notify_blob_added ( wpa_s , blob - > name ) ;
@ -1909,39 +1887,21 @@ DBusMessage * wpas_dbus_handler_get_blob(DBusMessage *message,
}
reply = dbus_message_new_method_return ( message ) ;
if ( ! reply ) {
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
goto out ;
}
if ( ! reply )
return wpas_dbus_error_no_memory ( message ) ;
dbus_message_iter_init_append ( reply , & iter ) ;
if ( ! dbus_message_iter_open_container ( & iter , DBUS_TYPE_ARRAY ,
DBUS_TYPE_BYTE_AS_STRING ,
& array_iter ) ) {
& array_iter ) | |
! dbus_message_iter_append_fixed_array ( & array_iter , DBUS_TYPE_BYTE ,
& ( blob - > data ) , blob - > len ) | |
! dbus_message_iter_close_container ( & iter , & array_iter ) ) {
dbus_message_unref ( reply ) ;
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
goto out ;
reply = wpas_dbus_error_no_memory ( message ) ;
}
if ( ! dbus_message_iter_append_fixed_array ( & array_iter , DBUS_TYPE_BYTE ,
& ( blob - > data ) , blob - > len ) ) {
dbus_message_unref ( reply ) ;
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
goto out ;
}
if ( ! dbus_message_iter_close_container ( & iter , & array_iter ) ) {
dbus_message_unref ( reply ) ;
reply = dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
NULL ) ;
goto out ;
}
out :
return reply ;
}
@ -2026,9 +1986,7 @@ DBusMessage * wpas_dbus_handler_autoscan(DBusMessage *message,
tmp = os_strdup ( arg ) ;
if ( tmp = = NULL ) {
reply = dbus_message_new_error ( message ,
DBUS_ERROR_NO_MEMORY ,
NULL ) ;
reply = wpas_dbus_error_no_memory ( message ) ;
} else {
os_free ( wpa_s - > conf - > autoscan ) ;
wpa_s - > conf - > autoscan = tmp ;
@ -4058,8 +4016,7 @@ DBusMessage * wpas_dbus_handler_subscribe_preq(
name = os_strdup ( dbus_message_get_sender ( message ) ) ;
if ( ! name )
return dbus_message_new_error ( message , DBUS_ERROR_NO_MEMORY ,
" out of memory " ) ;
return wpas_dbus_error_no_memory ( message ) ;
wpa_s - > preq_notify_peer = name ;