summaryrefslogtreecommitdiffstats
path: root/lib/libsdp
diff options
context:
space:
mode:
authoremax <emax@FreeBSD.org>2004-01-09 22:44:28 +0000
committeremax <emax@FreeBSD.org>2004-01-09 22:44:28 +0000
commit67356f1515b179322ab5f61deaac067e10dbba00 (patch)
tree6ed17ae08cf9c5d4fd244460555de488ae99253b /lib/libsdp
parentff23b25ca9fe242253a4d57aa0eef0c0a8d10e81 (diff)
downloadFreeBSD-src-67356f1515b179322ab5f61deaac067e10dbba00.zip
FreeBSD-src-67356f1515b179322ab5f61deaac067e10dbba00.tar.gz
Change sdp_open_local(3) API. It now takes a path to a control socket
Teach sdpcontrol(8) how to talk to the local SDP server Update man pages s/u_int/uint Reviewed by: imp (mentor), ru
Diffstat (limited to 'lib/libsdp')
-rw-r--r--lib/libsdp/sdp.310
-rw-r--r--lib/libsdp/sdp.h2
-rw-r--r--lib/libsdp/session.c7
3 files changed, 14 insertions, 5 deletions
diff --git a/lib/libsdp/sdp.3 b/lib/libsdp/sdp.3
index 88c6ff7..e849780 100644
--- a/lib/libsdp/sdp.3
+++ b/lib/libsdp/sdp.3
@@ -73,7 +73,7 @@
.Ft void *
.Fn sdp_open "bdaddr_t const *l" "bdaddr_t const *r"
.Ft void *
-.Fn sdp_open_local "void"
+.Fn sdp_open_local "char const *control"
.Ft int32_t
.Fn sdp_close "void *xs"
.Ft int32_t
@@ -134,7 +134,13 @@ Remote BD_ADDR can not be
.Dv NG_HCI_BDADDR_ANY .
The
.Fn sdp_open_local
-function takes no arguments and opens a connection to a local SDP server.
+function takes path to the control socket and opens a connection to a local
+SDP server.
+If path to the control socket is
+.Dv NULL
+then default
+.Pa /var/run/sdp
+path will be used.
.Pp
The
.Fn sdp_close
diff --git a/lib/libsdp/sdp.h b/lib/libsdp/sdp.h
index 3987ffb..4f5fb27 100644
--- a/lib/libsdp/sdp.h
+++ b/lib/libsdp/sdp.h
@@ -469,7 +469,7 @@ typedef struct sdp_attr * sdp_attr_p;
#endif /* BYTE_ORDER */
void * sdp_open (bdaddr_t const *l, bdaddr_t const *r);
-void * sdp_open_local (void);
+void * sdp_open_local (char const *control);
int32_t sdp_close (void *xs);
int32_t sdp_error (void *xs);
diff --git a/lib/libsdp/session.c b/lib/libsdp/session.c
index 2a13039..a31f327 100644
--- a/lib/libsdp/session.c
+++ b/lib/libsdp/session.c
@@ -102,7 +102,7 @@ fail:
}
void *
-sdp_open_local(void)
+sdp_open_local(char const *control)
{
sdp_session_p ss = NULL;
struct sockaddr_un sa;
@@ -116,9 +116,12 @@ sdp_open_local(void)
goto fail;
}
+ if (control == NULL)
+ control = SDP_LOCAL_PATH;
+
sa.sun_len = sizeof(sa);
sa.sun_family = AF_UNIX;
- strlcpy(sa.sun_path, SDP_LOCAL_PATH, sizeof(sa.sun_path));
+ strlcpy(sa.sun_path, control, sizeof(sa.sun_path));
if (connect(ss->s, (struct sockaddr *) &sa, sizeof(sa)) < 0) {
ss->error = errno;
OpenPOWER on IntegriCloud