* [PATCH obexd] Remove test/main.c
@ 2011-09-01 12:14 Luiz Augusto von Dentz
2011-09-27 9:39 ` Johan Hedberg
0 siblings, 1 reply; 2+ messages in thread
From: Luiz Augusto von Dentz @ 2011-09-01 12:14 UTC (permalink / raw)
To: linux-bluetooth
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
It is not useful anymore since gwobex will be removed and we
have already tools/test-client and tools/test-server for gobex.
---
Makefile.am | 6 -
test/main.c | 316 -----------------------------------------------------------
2 files changed, 0 insertions(+), 322 deletions(-)
delete mode 100644 test/main.c
diff --git a/Makefile.am b/Makefile.am
index 5f0b2eb..be888ec 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -104,12 +104,6 @@ plugindir = $(libdir)/obex/plugins
plugin_LTLIBRARIES =
-noinst_PROGRAMS += test/obex-test
-
-test_obex_test_SOURCES = $(gwobex_sources) test/main.c
-
-test_obex_test_LDADD = @OPENOBEX_LIBS@ @BLUEZ_LIBS@ @GLIB_LIBS@
-
src/plugin.$(OBJEXT): src/builtin.h
src/builtin.h: src/genbuiltin $(builtin_sources)
diff --git a/test/main.c b/test/main.c
deleted file mode 100644
index 37b307c..0000000
--- a/test/main.c
+++ /dev/null
@@ -1,316 +0,0 @@
-/*
- *
- * OBEX Test
- *
- * Copyright (C) 2007-2010 Marcel Holtmann <marcel@holtmann.org>
- *
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <stdio.h>
-#include <errno.h>
-#include <unistd.h>
-#include <stdlib.h>
-
-#include <glib.h>
-
-#include <bluetooth/bluetooth.h>
-#include <bluetooth/rfcomm.h>
-#include <bluetooth/sdp.h>
-#include <bluetooth/sdp_lib.h>
-#include <gw-obex.h>
-
-enum {
- CONNECT,
- PULLPHONEBOOK,
- PULLVCARDLISTING,
- INVALID
-};
-
-static int sdp_search(const bdaddr_t *src, const bdaddr_t *dst,
- uint16_t uuid, uint8_t *channel)
-{
- sdp_session_t *session;
- sdp_list_t *search, *attributes, *rsp;
- uuid_t svclass;
- uint16_t attr;
- int err;
-
- session = sdp_connect(src, dst, SDP_WAIT_ON_CLOSE);
- if (session == NULL)
- return -1;
-
- sdp_uuid16_create(&svclass, uuid);
- search = sdp_list_append(NULL, &svclass);
-
- attr = SDP_ATTR_PROTO_DESC_LIST;
- attributes = sdp_list_append(NULL, &attr);
-
- err = sdp_service_search_attr_req(session, search,
- SDP_ATTR_REQ_INDIVIDUAL, attributes, &rsp);
- if (err < 0) {
- sdp_close(session);
- return -1;
- }
-
- for (; rsp; rsp = rsp->next) {
- sdp_record_t *rec = (sdp_record_t *) rsp->data;
- sdp_list_t *protos;
-
- if (!sdp_get_access_protos(rec, &protos)) {
- uint8_t ch = sdp_get_proto_port(protos, RFCOMM_UUID);
- if (ch > 0) {
- *channel = ch;
- sdp_close(session);
- return 0;
- }
- }
- }
-
- sdp_close(session);
-
- return -1;
-}
-
-static int rfcomm_connect(const bdaddr_t *src, const bdaddr_t *dst,
- uint8_t channel)
-{
- struct sockaddr_rc addr;
- int sk;
-
- sk = socket(PF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM);
- if (sk < 0)
- return -EIO;
-
- memset(&addr, 0, sizeof(addr));
- addr.rc_family = AF_BLUETOOTH;
- bacpy(&addr.rc_bdaddr, src);
-
- if (bind(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
- close(sk);
- return -EIO;
- }
-
- memset(&addr, 0, sizeof(addr));
- addr.rc_family = AF_BLUETOOTH;
- bacpy(&addr.rc_bdaddr, dst);
- addr.rc_channel = channel;
-
- if (connect(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
- close(sk);
- return -EIO;
- }
-
- return sk;
-}
-
-static gchar *option_device = NULL;
-static gint option_channel = 0;
-static gchar *option_path = NULL;
-static gboolean option_ftp = FALSE;
-static gboolean option_pbap = FALSE;
-
-static gchar *option_connect = NULL;
-static gchar *option_pullphonebook = NULL;
-static gchar *option_setphonebook = NULL;
-static gchar *option_pullvcardlisting = NULL;
-
-static GOptionEntry options[] = {
- { "device", 'i', 0, G_OPTION_ARG_STRING, &option_device,
- "Specify local device interface", "DEV" },
- { "channel", 'C', 0, G_OPTION_ARG_INT, &option_channel,
- "Specify remote RFCOMM channel", "CHANNEL" },
- { "path", 'P', 0, G_OPTION_ARG_STRING, &option_path,
- "Specify initial path to set", "PATH" },
- { "ftp", 'f', 0, G_OPTION_ARG_NONE, &option_ftp,
- "Use File Transfer target" },
- { "pbap", 'p', 0, G_OPTION_ARG_NONE, &option_pbap,
- "Use Phonebook Access target" },
-
- { "connect", 0, 0, G_OPTION_ARG_STRING, &option_connect,
- "Connect remote OBEX session", "DEV" },
- { "pullphonebook", 0, 0, G_OPTION_ARG_STRING, &option_pullphonebook,
- "Pull phonebook from remote device", "DEV" },
- { "setphonebook", 0, 0, G_OPTION_ARG_STRING, &option_setphonebook,
- "Select phonebook on remote device", "DEV" },
- { "pullvcardlisting", 0, 0, G_OPTION_ARG_STRING, &option_pullvcardlisting,
- "Pull vCard listing from remote device", "DEV" },
-
- { NULL },
-};
-
-int main(int argc, char *argv[])
-{
- GOptionContext *context;
- GError *err = NULL;
- bdaddr_t src, dst;
- int sk;
-
- GwObex *obex;
- uint16_t uuid = OBEX_OBJPUSH_SVCLASS_ID;
- uint8_t channel;
- gchar *buf;
- const gchar *target = NULL;
- gint error, buf_len, target_len = 0;
- int mode = INVALID;
-
- context = g_option_context_new(NULL);
- g_option_context_add_main_entries(context, options, NULL);
-
- if (g_option_context_parse(context, &argc, &argv, &err) == FALSE) {
- if (err != NULL) {
- g_printerr("%s\n", err->message);
- g_error_free(err);
- } else
- g_printerr("An unknown error occurred\n");
- exit(EXIT_FAILURE);
- }
-
- g_option_context_free(context);
-
- if (option_device != NULL) {
- str2ba(option_device, &dst);
- g_free(option_device);
- } else
- bacpy(&src, BDADDR_ANY);
-
- bacpy(&dst, BDADDR_ANY);
-
- if (option_connect != NULL) {
- str2ba(option_connect, &dst);
- g_free(option_connect);
- mode = CONNECT;
- }
-
- if (option_pullphonebook != NULL) {
- str2ba(option_pullphonebook, &dst);
- g_free(option_pullphonebook);
- mode = PULLPHONEBOOK;
- option_pbap = TRUE;
- }
-
- if (option_setphonebook != NULL) {
- str2ba(option_setphonebook, &dst);
- g_free(option_setphonebook);
- mode = CONNECT;
- option_pbap = TRUE;
- if (option_path == NULL)
- option_path = g_strdup("telecom");
- }
-
- if (option_pullvcardlisting != NULL) {
- str2ba(option_pullvcardlisting, &dst);
- g_free(option_pullvcardlisting);
- mode = PULLVCARDLISTING;
- option_pbap = TRUE;
- //if (option_path == NULL)
- // option_path = g_strdup("telecom");
- }
-
- if (option_ftp == TRUE) {
- uuid = OBEX_FILETRANS_SVCLASS_ID;
- target = OBEX_FTP_UUID;
- target_len = OBEX_FTP_UUID_LEN;
- }
-
- if (option_pbap == TRUE) {
- uuid = PBAP_PSE_SVCLASS_ID;
- target = OBEX_PBAP_UUID;
- target_len = OBEX_PBAP_UUID_LEN;
- }
-
- if (bacmp(&dst, BDADDR_ANY) == 0) {
- fprintf(stderr, "Failed to provide action with address\n");
- exit(1);
- }
-
- if (option_channel < 1) {
- if (sdp_search(&src, &dst, uuid, &channel) < 0) {
- fprintf(stderr, "Failed to get RFCOMM channel\n");
- exit(1);
- }
- } else
- channel = option_channel;
-
- sk = rfcomm_connect(&src, &dst, channel);
- if (sk < 0) {
- fprintf(stderr, "Failed to connect RFCOMM channel\n");
- exit(1);
- }
-
- obex = gw_obex_setup_fd(sk, target, target_len, NULL, &error);
- if (obex == NULL) {
- fprintf(stderr, "Failed to create OBEX session\n");
- close(sk);
- exit(1);
- }
-
- if (option_path != NULL) {
- if (gw_obex_chdir(obex, option_path, &error) == FALSE) {
- fprintf(stderr, "Failed to change directory\n");
- gw_obex_close(obex);
- close(sk);
- exit(1);
- }
- }
-
- switch (mode) {
- case CONNECT:
- break;
-
- case PULLPHONEBOOK:
- {
- unsigned char apparam[] = { 0x04, 0x02, 0xff, 0xff };
- //unsigned char apparam[] = { 0x04, 0x02, 0x00, 0x00 };
-
- if (gw_obex_get_buf_with_apparam(obex,
- "telecom/pb.vcf", "x-bt/phonebook",
- apparam, sizeof(apparam),
- &buf, &buf_len, &error) == TRUE) {
- //printf("%s\n", buf);
- //g_free(buf);
- }
- }
- break;
-
- case PULLVCARDLISTING:
- {
- unsigned char apparam[] = { 0x04, 0x02, 0xff, 0xff };
-
- if (gw_obex_get_buf_with_apparam(obex,
- "", "x-bt/vcard-listing",
- apparam, sizeof(apparam),
- &buf, &buf_len, &error) == TRUE) {
- //printf("%s\n", buf);
- //g_free(buf);
- }
- }
- break;
- }
-
- gw_obex_close(obex);
-
- close(sk);
-
- g_free(option_path);
-
- return 0;
-}
--
1.7.6
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH obexd] Remove test/main.c
2011-09-01 12:14 [PATCH obexd] Remove test/main.c Luiz Augusto von Dentz
@ 2011-09-27 9:39 ` Johan Hedberg
0 siblings, 0 replies; 2+ messages in thread
From: Johan Hedberg @ 2011-09-27 9:39 UTC (permalink / raw)
To: Luiz Augusto von Dentz; +Cc: linux-bluetooth
Hi Luiz,
On Thu, Sep 01, 2011, Luiz Augusto von Dentz wrote:
> It is not useful anymore since gwobex will be removed and we
> have already tools/test-client and tools/test-server for gobex.
> ---
> Makefile.am | 6 -
> test/main.c | 316 -----------------------------------------------------------
> 2 files changed, 0 insertions(+), 322 deletions(-)
> delete mode 100644 test/main.c
Applied. Thanks.
Johan
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2011-09-27 9:39 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-01 12:14 [PATCH obexd] Remove test/main.c Luiz Augusto von Dentz
2011-09-27 9:39 ` Johan Hedberg
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.