diff options
| -rw-r--r-- | input/device.c | 23 | ||||
| -rw-r--r-- | input/device.h | 23 | ||||
| -rw-r--r-- | input/manager.c | 9 | 
3 files changed, 27 insertions, 28 deletions
diff --git a/input/device.c b/input/device.c index 8f255fd7..7e7325fb 100644 --- a/input/device.c +++ b/input/device.c @@ -61,29 +61,6 @@  #define UPDOWN_ENABLED		1 -struct fake_input { -	GIOChannel	*io; -	int		rfcomm; /* RFCOMM socket */ -	int		uinput;	/* uinput socket */ -	uint8_t		ch;	/* RFCOMM channel number */ -}; - -struct pending_connect { -	DBusConnection *conn; -	DBusMessage *msg; -}; - -struct input_device { -	bdaddr_t		src; -	bdaddr_t		dst; -	char			*name; -	uint8_t			major; -	uint8_t			minor; -	struct hidp_connadd_req hidp; /* FIXME: Use dynamic alloc? */ -	struct fake_input	*fake; -	struct pending_connect *pending_connect; -}; -  static struct input_device *input_device_new(bdaddr_t *src, bdaddr_t *dst)  {  	struct input_device *idev; diff --git a/input/device.h b/input/device.h index b51056e2..604d7b79 100644 --- a/input/device.h +++ b/input/device.h @@ -21,6 +21,29 @@   *   */ +struct fake_input { +	GIOChannel	*io; +	int		rfcomm; /* RFCOMM socket */ +	int		uinput;	/* uinput socket */ +	uint8_t		ch;	/* RFCOMM channel number */ +}; + +struct pending_connect { +	DBusConnection *conn; +	DBusMessage *msg; +}; + +struct input_device { +	bdaddr_t		src; +	bdaddr_t		dst; +	char			*name; +	uint8_t			major; +	uint8_t			minor; +	struct hidp_connadd_req hidp; /* FIXME: Use dynamic alloc? */ +	struct fake_input	*fake; +	struct pending_connect *pending_connect; +}; +  int input_device_register(DBusConnection *conn, bdaddr_t *src, bdaddr_t *dst,  				struct hidp_connadd_req *hidp, const char **path);  int fake_input_register(DBusConnection *conn, bdaddr_t *src, diff --git a/input/manager.c b/input/manager.c index 143471bc..38020a22 100644 --- a/input/manager.c +++ b/input/manager.c @@ -103,7 +103,6 @@ static void pending_req_free(struct pending_req *pr)  	g_free(pr);  } -#if 0  static int path_bdaddr_cmp(const char *path, const bdaddr_t *bdaddr)  {  	struct input_device *idev; @@ -117,7 +116,7 @@ static int path_bdaddr_cmp(const char *path, const bdaddr_t *bdaddr)  	return bacmp(&idev->dst, bdaddr);  } -#endif +  static int get_record(struct pending_req *pr, uint32_t handle,  					DBusPendingCallNotifyFunction cb)  { @@ -589,6 +588,7 @@ static DBusHandlerResult manager_create_device(DBusConnection *conn,  	DBusError derr;  	char adapter[18], adapter_path[32];  	const char *addr; +	GSList *l;  	bdaddr_t dst;  	uint32_t cls = 0;  	int dev_id; @@ -603,13 +603,12 @@ static DBusHandlerResult manager_create_device(DBusConnection *conn,  	}  	str2ba(addr, &dst); -#if 0 -	/* FIXME */ +  	l = g_slist_find_custom(mgr->paths, &dst,  			(GCompareFunc) path_bdaddr_cmp);  	if (l)  		return err_already_exists(conn, msg, "Input Already exists"); -#endif +  	/* FIXME: Move the following code to pending_req_new() */  	ba2str(&mgr->src, adapter);  	dev_id = hci_devid(adapter);  | 
