[alexandr@cyclon ussp-push]$ make
gcc -I/usr/local/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -c obex_main.c -o obex_main.o
obex_main.c: In function `__obex_connect':
obex_main.c:224: structure has no member named `userdata'
make: *** [obex_main.o] Ошибка 1
вот такая вот проблема хотя посмотрев соответствующий файл то всё оказалось на месте.
typedef struct client_context
{
gboolean serverdone;
gboolean clientdone;
gchar *get_name; /* Name of last get-request */
int rsp; /* error code */
int opcode;
char *arg; /* response storage place */
guint32 con_id; /* connection ide */
int fd;
gpointer userdata;
} client_context_t;
obex_t *__obex_connect(void *addr, int *err)
{
obex_t *handle;
obex_object_t *oo; // OBEX Object
obex_headerdata_t hv;
client_context_t *gt;
obex_ctrans_t custfunc;
gt = malloc(sizeof(client_context_t));
if( gt == NULL )
return NULL;
memset(gt, 0, sizeof(client_context_t));
gt->userdata = cobex_open(addr);
if( gt->userdata == NULL ) {
printf("cobex_open() failed");
*err = -1;
return NULL;
}
if(! (handle = OBEX_Init(OBEX_TRANS_CUST, obex_event, 0))) {
printf( "OBEX_Init failed:%s", strerror(errno));
close(gt->fd);
*err = -1;
return NULL;
}
custfunc.userdata = gt->userdata;
custfunc.connect = cobex_connect;
custfunc.disconnect = cobex_disconnect;
custfunc.write = cobex_write;
custfunc.handleinput = cobex_handle_input;
custfunc.listen = cobex_connect; // Listen and connect is 100% same on cable
if(OBEX_RegisterCTransport(handle, &custfunc) < 0) {
printf("Custom transport callback-registration failed");
close(gt->fd);
*err = -1;
return NULL;
}
printf( "Registered transport\n" );
OBEX_SetUserData(handle, gt);
printf( "\nset user data\n" );
// create new object
oo = OBEX_ObjectNew(handle, OBEX_CMD_CONNECT);
printf( "\ncreated new objext\n" );
*err = OBEX_Request(handle, oo);
printf( "\nstarted a new request\n" );
if( *err )
goto exit;
*err = handle_response(handle, BT_SERVICE);
printf("\nConnection return code: %d, id: %d\n", *err, gt->con_id);
if( *err )
goto exit;
printf("Connection established\n");
return handle;
exit:
obex_disconnect(handle);
return NULL;
}
Самое интересное то что выше этоой строки уже используется эта же структура с таким же мембером и ничего а сдесь не работает.
Помогите рабораться.
Заранее спасибо!!!
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Проблема сос сборкой программы... (2003)
- Форум Клиент, сервер и их правильная работа. (2005)
- Форум Уничтожение дочернего процесса (2004)
- Форум [C] Получить данные на TCP сокет (2008)
- Форум Сокеты в Си (продолжене) (2005)
- Форум Accept блокирует работу (2017)
- Форум Не понимаю почему не работает (2013)
- Форум Многопользовательский чат (2013)
- Форум Кто нибудь занимался кодингом под bluetooth? (2014)
- Форум Сокеты передача сообщений между компьютерами. Помогите найти ошибку. (2012)