资源描述:
《linux下基于bluez与obex的服务》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Linux下基于bluez与obex的服务LinuxisbasedontheserviceofbluezandobexClassification:bluez/obex2009-08-1017:1260readingreview(0)collectsreportsAservicesideneedtogiveeachothertheOBEXObjectPushservicecharinel,sobeforeIopentheserverneedstodeterminetheserviceregistrytoSDPserver,us
2、esdptoolregisteredunderLinuxcommandstotheservice:sdptooladdopush;OBEXInit()isusedtoinitializeanobexinstancehandle;Argl:OBEXTRANSBLUETOOTHisusedtodeclarethetransportprotocolasbluetooth;Arg2:thecallbackfunction.Arg3:flag=OBEXFLKEEPSERVER,andafterreceivingtherequest,th
3、eservercancontinuetoreceiverequestsfromotherdients;OBEXSetUserData()setstheuser'sownvariable,whichisentirelydependentontheuserhimself;3.BtOBEXServerRegister();Aserver-sidefunctiondedicatedtothebluetoothprotocolthatlistensforrequestssentbytheclient;Theinternalfunctio
4、ncreatesasocket(callsocket(AFBLUETOOTHSOCKSTREAM,BTPROTORFCOMM)),bindthesockettothelocalbluetoothaddress,convertthesockettolistensockt,afterthesockettolistenonportfromtheclientontheconnectionrequest;The0BEX_Hand1eInput()functionisusedtoreadandprocessthereceiveddata,
5、whichwillblockifnodataarrives.Thisfunctioniscalledtheselet()function,parameterstothesystemregistrationhandleclientsocktwithserver-sidesockt,letthesystemtomonitortheeventsonthesocket,ifisthedatatotheserversocket,iscalledtheaccept()functionfortheclienttocreateanewsock
6、t,Iftheflagof0BEX_Init()isnotsettoOBEX_FL_KEEPSERVER,thentheserviceterminalsocketisturnedoffandotherclientconnectionsareforbidden;(?????:theaccept()fortheclienttocreateanewsocket,andreturnsitsdescriptor,thenthenewlycreatedsocketportistoredistributeortheoriginalchann
7、elfromtheserver,iftheredistribution,onlyregistertheserviceontheserverchannel,ifthereisnoredistribution,soismorethanoneclienttousethesamechannel?0(studyingstudying))o.・・5.Thecallback:OBEX_EV_ACCEPTHINT;OBEX_ServerAccept()returnsthesocketfortheaboveclient・Functiontocr
8、eateainternalobexinstancehandle,andcopiestheserverhandleparameterstothehandle,obtaintheserverhandlefd(accepttheclienttocreateasocket),afte