summaryrefslogtreecommitdiffstats
path: root/input/storage.c
diff options
context:
space:
mode:
authorClaudio Takahasi <claudio.takahasi@openbossa.org>2007-03-19 14:58:44 +0000
committerClaudio Takahasi <claudio.takahasi@openbossa.org>2007-03-19 14:58:44 +0000
commitf2c6a6f2debcccfb51d239834c3cf91a2c3a6c40 (patch)
tree2a83d19fc07684f6713dd901f46f04858a78bc3d /input/storage.c
parent0ac929228aa1eb823f37776e2bbb84855417c66e (diff)
Moving input functions to the right files
Diffstat (limited to 'input/storage.c')
-rw-r--r--input/storage.c31
1 files changed, 27 insertions, 4 deletions
diff --git a/input/storage.c b/input/storage.c
index fd8d4bcb..3793a275 100644
--- a/input/storage.c
+++ b/input/storage.c
@@ -44,8 +44,8 @@
#include <glib.h>
-#include "textfile.h"
#include "logging.h"
+#include "textfile.h"
#include "storage.h"
@@ -171,14 +171,14 @@ int store_device_info(bdaddr_t *src, bdaddr_t *dst, struct hidp_connadd_req *req
return err;
}
-int read_device_name(bdaddr_t *local, bdaddr_t *peer, char **name)
+int read_device_name(bdaddr_t *src, bdaddr_t *dst, char **name)
{
char filename[PATH_MAX + 1], addr[18], *str;
int len;
- create_filename(filename, PATH_MAX, local, "names");
+ create_filename(filename, PATH_MAX, src, "names");
- ba2str(peer, addr);
+ ba2str(dst, addr);
str = textfile_get(filename, addr);
if (!str)
return -ENOENT;
@@ -202,6 +202,29 @@ int read_device_name(bdaddr_t *local, bdaddr_t *peer, char **name)
return 0;
}
+int read_device_class(bdaddr_t *src, bdaddr_t *dst, uint32_t *cls)
+{
+ char filename[PATH_MAX + 1], *str;
+ char addr[18];
+
+ ba2str(src, addr);
+ create_name(filename, PATH_MAX, STORAGEDIR, addr, "classes");
+
+ ba2str(dst, addr);
+ str = textfile_get(filename, addr);
+ if (!str)
+ return -ENOENT;
+
+ if (sscanf(str, "%x", cls) != 1) {
+ g_free(str);
+ return -ENOENT;
+ }
+
+ g_free(str);
+
+ return 0;
+}
+
int encrypt_link(bdaddr_t *src, bdaddr_t *dst)
{
char filename[PATH_MAX + 1];