obexd: obex_handle_input: poll event HUP ERR
Hi,
I have a problem with receiving files with obexd. After it receives header (file name etc.) it hangs up the connection withobex_handle_input: poll event HUP ERR
With obex-data-server, everything works as expected.
$ rpm -q obexd libopenobex1 bluez kernel-desktop|sort bluez-4.64-2.6.x86_64 == should I try 4.66? == kernel-desktop-2.6.34-9.3.x86_64 libopenobex1-1.5-1.8.x86_64 obexd-0.27-6.2.x86_64
$ uname -a Linux anemoi 2.6.34-9-desktop #1 SMP PREEMPT 2010-06-03 18:33:51 +0200 x86_64 x86_64 x86_64 GNU/Linux
$ strace -fo strace-obexd /usr/lib64/obex/obexd --nodaemon --opp --ftp --root=Public --root-setup=/usr/lib64/obex/obexd-setup.sh -d obexd[15862]: Enabling debug information obexd[15862]: manager_init: obexd[15862]: Loading builtin plugins obexd[15862]: driver 0x61d800 transport bluetooth registered obexd[15862]: Plugin bluetooth loaded obexd[15862]: driver 0x61d840 mimetype x-obex/folder-listing registered obexd[15862]: driver 0x61d8a0 mimetype x-obex/capability registered obexd[15862]: driver 0x61d960 mimetype x-obex/folder-listing registered obexd[15862]: driver 0x61d900 mimetype (null) registered obexd[15862]: Plugin filesystem loaded obexd[15862]: driver 0x61d9e0 service Object Push server registered obexd[15862]: Plugin opp loaded obexd[15862]: driver 0x61da80 service File Transfer server registered obexd[15862]: driver 0x61db00 service Nokia OBEX PC Suite Services registered obexd[15862]: Plugin ftp loaded obexd[15862]: driver 0x61dc20 mimetype x-bt/phonebook registered obexd[15862]: driver 0x61dc80 mimetype x-bt/vcard-listing registered obexd[15862]: driver 0x61dce0 mimetype x-bt/vcard registered obexd[15862]: driver 0x61dba0 service Phonebook Access server registered obexd[15862]: Plugin pbap loaded obexd[15862]: driver 0x61dde0 mimetype (null) registered obexd[15862]: driver 0x61dd60 service OBEX server for SyncML, using SyncEvolution registered obexd[15862]: Plugin syncevolution loaded obexd[15862]: Loading plugins /usr/lib64/obex/plugins obexd[15862]: bluetooth: listening on channel 9 obexd[15862]: bluetooth: listening on channel 10 obexd[15862]: bluetooth: FindAdapter(any) obexd[15862]: bluetooth: Registered: Object Push server, handle: 0x10008 obexd[15862]: bluetooth: Registered: File Transfer server, handle: 0x10009 obexd[15862]: bluetooth: New connection from: 00:24:7D:65:55:C5, channel 9 obexd[15862]: REQHINT(0x1), CONNECT(0x0), (null)(0x0) obexd[15862]: REQ(0x2), CONNECT(0x0), (null)(0x0) obexd[15862]: Version: 0x10. Flags: 0x00 OBEX packet length: 65535 obexd[15862]: Resizing stream chunks to 65335 obexd[15862]: Selected driver: Object Push server obexd[15862]: REQDONE(0x3), CONNECT(0x0), (null)(0x0) obexd[15862]: REQHINT(0x1), PUT(0x2), (null)(0x0) obexd[15862]: REQCHECK(0xb), PUT(0x2), (null)(0x0) obexd[15862]: OBEX_HDR_NAME: 323mm=20 10kg.txt obexd[15862]: OBEX_HDR_LENGTH: 28 obexd[15862]: OBEX_HDR_TYPE: text/plain obexd[15862]: REQDONE(0x3), PUT(0x2), (null)(0x0) obexd[15862]: obex_handle_input: poll event HUP ERR ^Cobexd[15862]: Terminating due to signal 2 obexd[15862]: Cleanup plugins obexd[15862]: driver 0x61d800 transport bluetooth unregistered obexd[15862]: driver 0x61d840 mimetype x-obex/folder-listing unregistered obexd[15862]: driver 0x61d8a0 mimetype x-obex/capability unregistered obexd[15862]: driver 0x61d900 mimetype (null) unregistered obexd[15862]: driver 0x61d9e0 service Object Push server unregistered obexd[15862]: driver 0x61da80 service File Transfer server unregistered obexd[15862]: driver 0x61db00 service Nokia OBEX PC Suite Services unregistered obexd[15862]: driver 0x61dba0 service Phonebook Access server unregistered obexd[15862]: driver 0x61dc20 mimetype x-bt/phonebook unregistered obexd[15862]: driver 0x61dc80 mimetype x-bt/vcard-listing unregistered obexd[15862]: driver 0x61dce0 mimetype x-bt/vcard unregistered obexd[15862]: driver 0x61dd60 service OBEX server for SyncML, using SyncEvolution unregistered obexd[15862]: driver 0x61dde0 mimetype (null) unregistered obexd[15862]: manager_cleanup:
strace of the process:
http://www.fi.muni.cz/~xslaby/sklad/obexd-strace
Hi,
Quoted 3 lines · Jiri Slaby
I have a problem with receiving files with obexd. After it receives header (file name etc.) it hangs up the connection with
obex_handle_input: poll event HUP ERR
libopenobex seems to be indicating REQDONE, so it doesn't look like anything is necessarily wrong with obexd here. However, you'd need to look at the HCI level trafic (output of "hcidump -XV") to determine what's really going on (e.g. is it obexd or the client that's disconnecting).
Johan
Quoted 10 lines · Johan Hedberg
Quoted 3 lines · Jiri Slaby
I have a problem with receiving files with obexd. After it receives header (file name etc.) it hangs up the connection with
obex_handle_input: poll event HUP ERRlibopenobex seems to be indicating REQDONE, so it doesn't look like anything is necessarily wrong with obexd here. However, you'd need to look at the HCI level trafic (output of "hcidump -XV") to determine what's really going on (e.g. is it obexd or the client that's disconnecting).
Attached:
# hcidump -XV HCI sniffer - Bluetooth packet analyzer ver 1.42 device: hci0 snap_len: 1028 filter: 0xffffffffffffffff
Quoted 1 line
HCI Event: Connect Request (
0x04) plen 10
bdaddr 00:24:7D:65:55:C5 class 0x5a020c type ACL
< HCI Command: Accept Connection Request (0x01|0x0009) plen 7
bdaddr 00:24:7D:65:55:C5 role 0x00
Role: MasterQuoted 1 line
HCI Event: Command Status (
0x0f) plen 4
Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
Quoted 1 line
HCI Event: Role Change (
0x12) plen 8
status 0x00 bdaddr 00:24:7D:65:55:C5 role 0x00
Role: MasterQuoted 1 line
HCI Event: Connect Complete (
0x03) plen 11
status 0x00 handle 42 bdaddr 00:24:7D:65:55:C5 type ACL encrypt 0x00
< HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
handle 42
Quoted 1 line
HCI Event: Page Scan Repetition Mode Change (
0x20) plen 7
bdaddr 00:24:7D:65:55:C5 mode 0
Quoted 1 line
HCI Event: Max Slots Change (
0x1b) plen 3
handle 42 slots 5
Quoted 1 line
HCI Event: Command Status (
0x0f) plen 4
Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 0
Quoted 1 line
HCI Event: Command Status (
0x0f) plen 4
Unknown (0x00|0x0000) status 0x00 ncmd 1
Quoted 1 line
HCI Event: Read Remote Supported Features (
0x0b) plen 11
status 0x00 handle 42
Features: 0xbf 0xee 0x0f 0xce 0x98 0x39 0x00 0x00Quoted 1 line
ACL data: handle 42 flags
0x02dlen 12
L2CAP(s): Connect req: psm 1 scid 0x0040
< ACL data: handle 42 flags 0x02 dlen 16
L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 1 status 0
Connection pending - No futher information available
< ACL data: handle 42 flags 0x02 dlen 10
L2CAP(s): Info req: type 2
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 16
L2CAP(s): Info rsp: type 2 result 0
Extended feature mask 0x0003
Flow control mode
Retransmission mode
< ACL data: handle 42 flags 0x02 dlen 16
L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 0 status 0
Connection successfulQuoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 10
L2CAP(s): Info req: type 2
< ACL data: handle 42 flags 0x02 dlen 16
L2CAP(s): Info rsp: type 2 result 0
Extended feature mask 0x0080
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 16
L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 4
MTU 5120
< ACL data: handle 42 flags 0x02 dlen 18
L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
MTU 5120
< ACL data: handle 42 flags 0x02 dlen 12
L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 0Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 18
L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
MTU 672Quoted 1 line
ACL data: handle 42 flags
0x02dlen 17
L2CAP(d): cid 0x0040 len 13 [psm 1]
SDP SS Req: tid 0x1 len 0x8
pat uuid-16 0x1105 (OBEXObjPush)
max 65535
cont 00
< HCI Command: Remote Name Request (0x01|0x0019) plen 10
bdaddr 00:24:7D:65:55:C5 mode 2 clkoffset 0x0000
< ACL data: handle 42 flags 0x02 dlen 18
L2CAP(d): cid 0x0040 len 14 [psm 1]
SDP SS Rsp: tid 0x1 len 0x9
count 1
handle 0x10000
cont 00Quoted 1 line
HCI Event: Command Status (
0x0f) plen 4
Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 21
L2CAP(d): cid 0x0040 len 17 [psm 1]
SDP SA Req: tid 0x2 len 0xc
handle 0x10000
max 1024
aid(s) 0x0004 (ProtocolDescList)
cont 00
< ACL data: handle 42 flags 0x02 dlen 36
L2CAP(d): cid 0x0040 len 32 [psm 1]
SDP SA Rsp: tid 0x2 len 0x1b
count 24
aid 0x0004 (ProtocolDescList)
< < uuid-16 0x0100 (L2CAP) > <
uuid-16 0x0003 (RFCOMM) uint 0x9 > <
uuid-16 0x0008 (OBEX) > >
cont 00Quoted 1 line
ACL data: handle 42 flags
0x02dlen 12
L2CAP(s): Connect req: psm 3 scid 0x0041
< ACL data: handle 42 flags 0x02 dlen 16
L2CAP(s): Connect rsp: dcid 0x0041 scid 0x0041 result 0 status 0
Connection successfulQuoted 1 line
HCI Event: Remote Name Req Complete (
0x07) plen 255
status 0x00 bdaddr 00:24:7D:65:55:C5 name 'Nokia 5800 gep'
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 16
L2CAP(s): Config req: dcid 0x0041 flags 0x00 clen 4
MTU 32772
< ACL data: handle 42 flags 0x02 dlen 18
L2CAP(s): Config rsp: scid 0x0041 flags 0x00 result 0 clen 4
MTU 32772
< ACL data: handle 42 flags 0x02 dlen 16
L2CAP(s): Config req: dcid 0x0041 flags 0x00 clen 4
MTU 1013Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 18
L2CAP(s): Config rsp: scid 0x0041 flags 0x00 result 0 clen 4
MTU 1013Quoted 1 line
ACL data: handle 42 flags
0x02dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): SABM: cr 1 dlci 0 pf 1 ilen 0 fcs 0x1c
< ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): UA: cr 1 dlci 0 pf 1 ilen 0 fcs 0xd7Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 18
L2CAP(d): cid 0x0041 len 14 [psm 3]
RFCOMM(s): PN CMD: cr 1 dlci 0 pf 0 ilen 10 fcs 0x70 mcc_len 8 dlci 18 frame_type 0 credit_flow 15 pri 0 ack_timer 0 frame_size 1008 max_retrans 0 credits 3
< ACL data: handle 42 flags 0x02 dlen 18
L2CAP(d): cid 0x0041 len 14 [psm 3]
RFCOMM(s): PN RSP: cr 0 dlci 0 pf 0 ilen 10 fcs 0xaa mcc_len 8 dlci 18 frame_type 0 credit_flow 14 pri 0 ack_timer 0 frame_size 1008 max_retrans 0 credits 7
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): SABM: cr 1 dlci 18 pf 1 ilen 0 fcs 0x32
< ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): UA: cr 1 dlci 18 pf 1 ilen 0 fcs 0xf9
< ACL data: handle 42 flags 0x02 dlen 12
L2CAP(d): cid 0x0041 len 8 [psm 3]
RFCOMM(s): MSC CMD: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2
dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 12
L2CAP(d): cid 0x0041 len 8 [psm 3]
RFCOMM(s): MSC CMD: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2
dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0
< ACL data: handle 42 flags 0x02 dlen 12
L2CAP(d): cid 0x0041 len 8 [psm 3]
RFCOMM(s): MSC RSP: cr 0 dlci 0 pf 0 ilen 4 fcs 0xaa mcc_len 2
dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0Quoted 1 line
ACL data: handle 42 flags
0x02dlen 12
L2CAP(d): cid 0x0041 len 8 [psm 3]
RFCOMM(s): MSC RSP: cr 1 dlci 0 pf 0 ilen 4 fcs 0x70 mcc_len 2
dlci 18 fc 0 rtc 1 rtr 1 ic 0 dv 1 b1 1 b2 1 b3 0 len 0
< ACL data: handle 42 flags 0x02 dlen 9
L2CAP(d): cid 0x0041 len 5 [psm 3]
RFCOMM(d): UIH: cr 0 dlci 18 pf 1 ilen 0 fcs 0x8 credits 33Quoted 1 line
ACL data: handle 42 flags
0x02dlen 16
L2CAP(d): cid 0x0041 len 12 [psm 3]
RFCOMM(d): UIH: cr 1 dlci 18 pf 1 ilen 7 fcs 0xd2 credits 4
OBEX: Connect cmd(f): len 7 version 1.0 flags 0 mtu 65535< ACL data: handle 42 flags 0x02 dlen 15
L2CAP(d): cid 0x0041 len 11 [psm 3]
RFCOMM(d): UIH: cr 0 dlci 18 pf 0 ilen 7 fcs 0x14
OBEX: Connect rsp(f): status 200 len 7 version 1.0 flags 0 mtu 32767 Status 200 = Success
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 89
L2CAP(d): cid 0x0041 len 85 [psm 3]
RFCOMM(d): UIH: cr 1 dlci 18 pf 1 ilen 80 fcs 0xd2 credits 1
OBEX: Put cmd(c): len 80
Name (0x01) = Unicode length 36
0000: 00 33 00 32 00 33 00 6d 00 6d 00 3d 00 32 00 30
.3.2.3.m.m.=.2.0
0010: 00 20 00 31 00 30 00 6b 00 67 00 2e 00 74 00 78 .
.1.0.k.g...t.x
0020: 00 74 00 00 .t..
Length (0xc3) = 28
Type (0x42) = Sequence length 11
0000: 74 65 78 74 2f 70 6c 61 69 6e 00 text/plain.
Time (0x44) = Sequence length 16
0000: 32 30 31 30 30 36 32 32 54 30 35 33 38 33 30 5a
20100622T053830Z
< ACL data: handle 42 flags 0x02 dlen 11
L2CAP(d): cid 0x0041 len 7 [psm 3]
RFCOMM(d): UIH: cr 0 dlci 18 pf 0 ilen 3 fcs 0x14
OBEX: Put rsp(f): status 403 len 3Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): DISC: cr 1 dlci 18 pf 1 ilen 0 fcs 0xd3
< ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): UA: cr 1 dlci 18 pf 1 ilen 0 fcs 0xf9Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
< ACL data: handle 42 flags 0x02 dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): DISC: cr 0 dlci 0 pf 1 ilen 0 fcs 0x9cQuoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 8
L2CAP(d): cid 0x0041 len 4 [psm 3]
RFCOMM(s): UA: cr 0 dlci 0 pf 1 ilen 0 fcs 0xb6
< ACL data: handle 42 flags 0x02 dlen 12
L2CAP(s): Disconn req: dcid 0x0041 scid 0x0041Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 12
L2CAP(s): Disconn rsp: dcid 0x0041 scid 0x0041
Quoted 1 line
ACL data: handle 42 flags
0x02dlen 12
L2CAP(s): Disconn req: dcid 0x0040 scid 0x0040
< ACL data: handle 42 flags 0x02 dlen 12
L2CAP(s): Disconn rsp: dcid 0x0040 scid 0x0040Quoted 1 line
HCI Event: Number of Completed Packets (
0x13) plen 5
handle 42 packets 1
Hi,
Quoted 7 lines · Jiri Slaby
Quoted 5 lines
libopenobex seems to be indicating REQDONE, so it doesn't look like anything is necessarily wrong with obexd here. However, you'd need to look at the HCI level trafic (output of "hcidump -XV") to determine what's really going on (e.g. is it obexd or the client that's disconnecting).
Attached:
Thanks.
Quoted 1 line
# hcidump -XV
<snip>
Quoted 4 lines
< ACL data: handle 42 flags
0x02dlen 11L2CAP(d): cid 0x0041 len 7 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 0 ilen 3 fcs 0x14 OBEX: Put rsp(f): status 403 len 3
So obexd is responding with "forbidden" to the client. Possible reasons:
* obexd doesn't have write access to the directory it's trying to write to
* You don't have an agent registered for obexd that could accept the request or you're not running obexd in the auto-accept mode (the -a switch).
Johan
Quoted 10 lines · Johan Hedberg
Quoted 1 line
# hcidump -XV<snip>
Quoted 4 lines
< ACL data: handle 42 flags
0x02dlen 11L2CAP(d): cid 0x0041 len 7 [psm 3] RFCOMM(d): UIH: cr 0 dlci 18 pf 0 ilen 3 fcs 0x14 OBEX: Put rsp(f): status 403 len 3So obexd is responding with "forbidden" to the client. Possible reasons:
Quoted 6 lines
* obexd doesn't have write access to the directory it's trying to write to
* You don't have an agent registered for obexd that could accept the request or you're not running obexd in the auto-accept mode (the -a switch).
Yeah, -a solved the problem. What does it mean to have an agent registered? What is agent?
Thanks.
Quoted 2 lines · Jiri Slaby
Yeah, -a solved the problem. What does it mean to have an agent registered? What is agent?
If you don't want obexd to go blindly accepting files from random remote devices you'll probably want some sort of user interaction on the server side, right? One possibility would be to have a GUI process show a "Accept file from ..." dialog every time there's an incoming request. You might also want to choose exactly where on the filesystem obexd stores the incoming file. Such choices would be made by an agent, i.e. a process separate from obexd that has through D-Bus told obexd that it can take care of incoming requests. There's an example command line agent written in python available at test/simple-agent in the obexd source tree. The actual D-Bus API of an agent is documented in doc/agent-api.txt in the same source tree.
Johan
Quoted 4 lines · Johan Hedberg
Quoted 2 lines · Jiri Slaby
Yeah, -a solved the problem. What does it mean to have an agent registered? What is agent?
Quoted 11 lines
If you don't want obexd to go blindly accepting files from random remote devices you'll probably want some sort of user interaction on the server side, right? One possibility would be to have a GUI process show a "Accept file from ..." dialog every time there's an incoming request. You might also want to choose exactly where on the filesystem obexd stores the incoming file. Such choices would be made by an agent, i.e. a process separate from obexd that has through D-Bus told obexd that it can take care of incoming requests. There's an example command line agent written in python available at test/simple-agent in the obexd source tree. The actual D-Bus API of an agent is documented in
doc/agent-api.txtin the same source tree.
I have gnome-bluetooth-2.30, but I guess it was not converted to act also as obexd Agent yet.
thanks,
Signature · 1 line
js
Quoted 17 lines · Jiri Slaby
Quoted 4 lines · Johan Hedberg
Quoted 2 lines · Jiri Slaby
Yeah, -a solved the problem. What does it mean to have an agent registered? What is agent?
Quoted 11 lines
If you don't want obexd to go blindly accepting files from random remote devices you'll probably want some sort of user interaction on the server side, right? One possibility would be to have a GUI process show a "Accept file from ..." dialog every time there's an incoming request. You might also want to choose exactly where on the filesystem obexd stores the incoming file. Such choices would be made by an agent, i.e. a process separate from obexd that has through D-Bus told obexd that it can take care of incoming requests. There's an example command line agent written in python available at test/simple-agent in the obexd source tree. The actual D-Bus API of an agent is documented in
doc/agent-api.txtin the same source tree.
Quoted 2 lines
I have gnome-bluetooth-2.30, but I guess it was not converted to act also as obexd Agent yet.
gnome-bluetooth doesn't have any Obex server bits. You'd need to use gnome-user-share to have Obex server capabilities, and it doesn't use obexd right now, but obex-data-server.
Patches welcome :)
Cheers