diff options
Diffstat (limited to 'network/manager.c')
| -rw-r--r-- | network/manager.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/network/manager.c b/network/manager.c index 6740f100..52e6bffa 100644 --- a/network/manager.c +++ b/network/manager.c @@ -225,6 +225,7 @@ static DBusHandlerResult create_connection(DBusConnection *conn,  	const char *addr;  	const char *str;  	char *path; +	uint16_t id;  	dbus_error_init(&derr);  	if (!dbus_message_get_args(msg, &derr, @@ -236,12 +237,14 @@ static DBusHandlerResult create_connection(DBusConnection *conn,  		return DBUS_HANDLER_RESULT_HANDLED;  	} -	/* FIXME: Check for supported/implemented client connection */ +	id = bnep_service_id(str); +	if ((id != BNEP_SVC_GN) && (id != BNEP_SVC_NAP)) +		return err_invalid_args(conn, msg, "Not supported");  	path = g_new0(char, 32);  	snprintf(path, 32, NETWORK_PATH "/connection%d", uid++); -	if (connection_register(conn, path, addr, str) == -1) { +	if (connection_register(conn, path, addr, id) == -1) {  		err_failed(conn, msg, "D-Bus path registration failed");  		g_free(path);  		return DBUS_HANDLER_RESULT_HANDLED;  | 
