OpenOBEX
Data Structures | Macros | Enumerations
obex_const.h File Reference

OpenOBEX library - Free implementation of the Object Exchange protocol. More...

#include <inttypes.h>
#include <openobex/version.h>
Include dependency graph for obex_const.h:
This graph shows which files directly or indirectly include this file:

Data Structures

union  obex_headerdata_t
 OBEX object tag information. More...
 
struct  obex_ctrans_t
 Function definition for custom transports. More...
 
struct  obex_usb_intf_service_t
 USB-specific OBEX service information provided by optional Service Identification Functional Descriptor (CDC WMC specification section 6.5.2.5) More...
 
struct  obex_usb_intf_t
 USB-specific OBEX interface information. More...
 
struct  obex_irda_intf_t
 IrDA-specific OBEX interface information. More...
 
union  obex_interface_t
 Generic OBEX interface information. More...
 

Macros

#define OBEX_FL_KEEPSERVER   (1 << 1)
 Keep the server alive.
 
#define OBEX_FL_FILTERHINT   (1 << 2)
 Filter devices based on hint bit.
 
#define OBEX_FL_FILTERIAS   (1 << 3)
 Filter devices based on IAS entry.
 
#define OBEX_FL_CLOEXEC   (1 << 4)
 Set CLOEXEC flag on file descriptors.
 
#define OBEX_FL_NONBLOCK   (1 << 5)
 Set the NONBLOCK flag on file descriptors.
 
#define OBEX_FL_FIT_ONE_PACKET   (1 << 0)
 This header must fit in one packet.
 
#define OBEX_FL_STREAM_START   (1 << 1)
 Start of streaming body.
 
#define OBEX_FL_STREAM_DATA   (1 << 2)
 Set data for body stream.
 
#define OBEX_FL_STREAM_DATAEND   (1 << 3)
 Set data (or no data) for body stream and finish it.
 
#define OBEX_FL_SUSPEND   (1 << 4)
 Suspend after sending this header.
 
#define OBEX_FL_STREAM_CONTINUE   (1 << 5)
 Continue body stream after all remaining headers.
 
#define OBEX_HDR_TYPE_SHIFT   6
 
#define OBEX_HDR_TYPE_MASK   0xc0
 
#define OBEX_HDR_ID_MASK   0x3f
 
#define OBEX_HDR_EMPTY   0x00 /* Empty header (buggy OBEX servers) */
 
#define OBEX_HDR_COUNT   (OBEX_HDR_ID_COUNT | OBEX_HDR_TYPE_UINT32 )
 
#define OBEX_HDR_NAME   (OBEX_HDR_ID_NAME | OBEX_HDR_TYPE_UNICODE)
 
#define OBEX_HDR_TYPE   (OBEX_HDR_ID_TYPE | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_LENGTH   (OBEX_HDR_ID_LENGTH | OBEX_HDR_TYPE_UINT32 )
 
#define OBEX_HDR_TIME   (OBEX_HDR_ID_TIME | OBEX_HDR_TYPE_BYTES ) /* Format: ISO 8601 */
 
#define OBEX_HDR_TIME2   (OBEX_HDR_ID_TIME | OBEX_HDR_TYPE_UINT32 ) /* Deprecated use HDR_TIME instead */
 
#define OBEX_HDR_DESCRIPTION   (OBEX_HDR_ID_DESCRIPTION | OBEX_HDR_TYPE_UNICODE)
 
#define OBEX_HDR_TARGET   (OBEX_HDR_ID_TARGET | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_HTTP   (OBEX_HDR_ID_HTTP | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_BODY   (OBEX_HDR_ID_BODY | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_BODY_END   (OBEX_HDR_ID_BODY_END | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_WHO   (OBEX_HDR_ID_WHO | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_CONNECTION   (OBEX_HDR_ID_CONNECTION | OBEX_HDR_TYPE_UINT32 )
 
#define OBEX_HDR_APPARAM   (OBEX_HDR_ID_APPARAM | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_AUTHCHAL   (OBEX_HDR_ID_AUTHCHAL | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_AUTHRESP   (OBEX_HDR_ID_AUTHRESP | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_CREATOR   (OBEX_HDR_ID_CREATOR | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_WANUUID   (OBEX_HDR_ID_WANUUID | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_OBJECTCLASS   (OBEX_HDR_ID_OBJECTCLASS | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_SESSIONPARAM   (OBEX_HDR_ID_SESSIONPARAM | OBEX_HDR_TYPE_BYTES )
 
#define OBEX_HDR_SESSIONSEQ   (OBEX_HDR_ID_SESSIONSEQ | OBEX_HDR_TYPE_UINT8 )
 
#define OBEX_HDR_ACTION_ID   (OBEX_HDR_ID_ACTION_ID | OBEX_HDR_TYPE_UINT8 )
 
#define OBEX_HDR_DESTNAME   (OBEX_HDR_ID_DESTNAME | OBEX_HDR_TYPE_UNICODE)
 
#define OBEX_HDR_PERMISSIONS   (OBEX_HDR_ID_PERMISSIONS | OBEX_HDR_TYPE_UINT32 )
 
#define OBEX_HDR_SRM   (OBEX_HDR_ID_SRM | OBEX_HDR_TYPE_UINT8 )
 
#define OBEX_HDR_SRM_FLAGS   (OBEX_HDR_ID_SRM_FLAGS | OBEX_HDR_TYPE_UINT8 )
 
#define OBEX_FINAL   0x80
 
#define OBEX_DEFAULT_MTU   1024
 
#define OBEX_MINIMUM_MTU   255
 
#define OBEX_MAXIMUM_MTU   65535
 
#define OBEX_IRDA_OPT_MTU   (7 * 2039) /* 7 IrLAP frames */
 Optimum MTU for various transport (optimum for throughput).
 

Enumerations

enum  obex_mode { OBEX_MODE_CLIENT = 0 , OBEX_MODE_SERVER = 1 }
 Possible modes. More...
 
enum  obex_data_direction { OBEX_DATA_NONE = 0 , OBEX_DATA_IN = 1 , OBEX_DATA_OUT = 2 }
 Possible data direction. More...
 
enum  obex_event {
  OBEX_EV_PROGRESS = 0 , OBEX_EV_REQHINT = 1 , OBEX_EV_REQ = 2 , OBEX_EV_REQDONE = 3 ,
  OBEX_EV_LINKERR = 4 , OBEX_EV_PARSEERR = 5 , OBEX_EV_ACCEPTHINT = 6 , OBEX_EV_ABORT = 7 ,
  OBEX_EV_STREAMEMPTY = 8 , OBEX_EV_STREAMAVAIL = 9 , OBEX_EV_UNEXPECTED = 10 , OBEX_EV_REQCHECK = 11 ,
  OBEX_EV_CONTINUE = 12
}
 Possible events. More...
 
enum  obex_transport_type {
  OBEX_TRANS_IRDA = 1 , OBEX_TRANS_INET = 2 , OBEX_TRANS_CUSTOM = 3 , OBEX_TRANS_BLUETOOTH = 4 ,
  OBEX_TRANS_FD = 5 , OBEX_TRANS_USB = 6
}
 Possible transports. More...
 
enum  obex_hdr_type {
  OBEX_HDR_TYPE_INVALID = -1 , OBEX_HDR_TYPE_UNICODE = (0 << OBEX_HDR_TYPE_SHIFT) , OBEX_HDR_TYPE_BYTES = (1 << OBEX_HDR_TYPE_SHIFT) , OBEX_HDR_TYPE_UINT8 = (2 << OBEX_HDR_TYPE_SHIFT) ,
  OBEX_HDR_TYPE_UINT32 = (3 << OBEX_HDR_TYPE_SHIFT)
}
 Type part of an obex header value. More...
 
enum  obex_hdr_id {
  OBEX_HDR_ID_INVALID = -1 , OBEX_HDR_ID_COUNT = 0 , OBEX_HDR_ID_NAME = 1 , OBEX_HDR_ID_TYPE = 2 ,
  OBEX_HDR_ID_LENGTH = 3 , OBEX_HDR_ID_TIME = 4 , OBEX_HDR_ID_DESCRIPTION = 5 , OBEX_HDR_ID_TARGET = 6 ,
  OBEX_HDR_ID_HTTP = 7 , OBEX_HDR_ID_BODY = 8 , OBEX_HDR_ID_BODY_END = 9 , OBEX_HDR_ID_WHO = 10 ,
  OBEX_HDR_ID_CONNECTION = 11 , OBEX_HDR_ID_APPARAM = 12 , OBEX_HDR_ID_AUTHCHAL = 13 , OBEX_HDR_ID_AUTHRESP = 14 ,
  OBEX_HDR_ID_CREATOR = 15 , OBEX_HDR_ID_WANUUID = 16 , OBEX_HDR_ID_OBJECTCLASS = 17 , OBEX_HDR_ID_SESSIONPARAM = 18 ,
  OBEX_HDR_ID_SESSIONSEQ = 19 , OBEX_HDR_ID_ACTION_ID = 20 , OBEX_HDR_ID_DESTNAME = 21 , OBEX_HDR_ID_PERMISSIONS = 22 ,
  OBEX_HDR_ID_SRM = 23 , OBEX_HDR_ID_SRM_FLAGS = 24
}
 Identifier part of an obex header value. More...
 
enum  obex_cmd {
  OBEX_CMD_CONNECT = 0x00 , OBEX_CMD_DISCONNECT = 0x01 , OBEX_CMD_PUT = 0x02 , OBEX_CMD_GET = 0x03 ,
  OBEX_CMD_SETPATH = 0x05 , OBEX_CMD_ACTION = 0x06 , OBEX_CMD_SESSION = 0x07 , OBEX_CMD_ABORT = 0x7f
}
 Obex commands. More...
 
enum  obex_rsp {
  OBEX_RSP_CONTINUE = 0x10 , OBEX_RSP_SWITCH_PRO = 0x11 , OBEX_RSP_SUCCESS = 0x20 , OBEX_RSP_CREATED = 0x21 ,
  OBEX_RSP_ACCEPTED = 0x22 , OBEX_RSP_NON_AUTHORITATIVE = 0x23 , OBEX_RSP_NO_CONTENT = 0x24 , OBEX_RSP_RESET_CONTENT = 0x25 ,
  OBEX_RSP_PARTIAL_CONTENT = 0x26 , OBEX_RSP_MULTIPLE_CHOICES = 0x30 , OBEX_RSP_MOVED_PERMANENTLY = 0x31 , OBEX_RSP_MOVED_TEMPORARILY = 0x32 ,
  OBEX_RSP_SEE_OTHER = 0x33 , OBEX_RSP_NOT_MODIFIED = 0x34 , OBEX_RSP_USE_PROXY = 0x35 , OBEX_RSP_BAD_REQUEST = 0x40 ,
  OBEX_RSP_UNAUTHORIZED = 0x41 , OBEX_RSP_PAYMENT_REQUIRED = 0x42 , OBEX_RSP_FORBIDDEN = 0x43 , OBEX_RSP_NOT_FOUND = 0x44 ,
  OBEX_RSP_METHOD_NOT_ALLOWED = 0x45 , OBEX_RSP_NOT_ACCEPTABLE = 0x46 , OBEX_RSP_PROXY_AUTH_REQUIRED = 0x47 , OBEX_RSP_REQUEST_TIME_OUT = 0x48 ,
  OBEX_RSP_CONFLICT = 0x49 , OBEX_RSP_GONE = 0x4a , OBEX_RSP_LENGTH_REQUIRED = 0x4b , OBEX_RSP_PRECONDITION_FAILED = 0x4c ,
  OBEX_RSP_REQ_ENTITY_TOO_LARGE = 0x4d , OBEX_RSP_REQ_URL_TOO_LARGE = 0x4e , OBEX_RSP_UNSUPPORTED_MEDIA_TYPE = 0x4f , OBEX_RSP_INTERNAL_SERVER_ERROR = 0x50 ,
  OBEX_RSP_NOT_IMPLEMENTED = 0x51 , OBEX_RSP_BAD_GATEWAY = 0x52 , OBEX_RSP_SERVICE_UNAVAILABLE = 0x53 , OBEX_RSP_GATEWAY_TIMEOUT = 0x54 ,
  OBEX_RSP_VERSION_NOT_SUPPORTED = 0x55 , OBEX_RSP_DATABASE_FULL = 0x60 , OBEX_RSP_DATABASE_LOCKED = 0x61
}
 Obex responses. More...
 
enum  obex_rsp_mode { OBEX_RSP_MODE_NORMAL = 0 , OBEX_RSP_MODE_SINGLE = 1 }
 Obex response modes. More...
 

Detailed Description

OpenOBEX library - Free implementation of the Object Exchange protocol.

Copyright (C) 1999-2000 Dag Brattli dagb@.nosp@m.cs.u.nosp@m.it.no Copyright (C) 1999-2000 Pontus Fuchs pontu.nosp@m.s.fu.nosp@m.chs@t.nosp@m.acte.nosp@m.l.se Copyright (C) 2001-2002 Jean Tourrilhes jt@hp.nosp@m.l.hp.nosp@m..com Copyright (C) 2002-2006 Marcel Holtmann marce.nosp@m.l@ho.nosp@m.ltman.nosp@m.n.or.nosp@m.g Copyright (C) 2002-2008 Christian W. Zuckschwerdt zany@.nosp@m.triq.nosp@m..net Copyright (C) 2002 Dmitry Kasatkin dmitr.nosp@m.y.ka.nosp@m.satki.nosp@m.n@no.nosp@m.kia.c.nosp@m.om Copyright (C) 2005 Herton Ronaldo Krzesinski herto.nosp@m.n@co.nosp@m.necti.nosp@m.va.c.nosp@m.om.br Copyright (C) 2005-2008 Alex Kanavin ak@se.nosp@m.nsi..nosp@m.org Copyright (C) 2006 Johan Hedberg johan.nosp@m..hed.nosp@m.berg@.nosp@m.noki.nosp@m.a.com Copyright (C) 2007-2012 Hendrik Sattler post@.nosp@m.hend.nosp@m.rik-s.nosp@m.attl.nosp@m.er.de

OpenOBEX is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 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 Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with OpenOBEX. If not, see http://www.gnu.org/.

Macro Definition Documentation

◆ OBEX_DEFAULT_MTU

#define OBEX_DEFAULT_MTU   1024

◆ OBEX_FINAL

#define OBEX_FINAL   0x80

◆ OBEX_FL_CLOEXEC

#define OBEX_FL_CLOEXEC   (1 << 4)

Set CLOEXEC flag on file descriptors.

◆ OBEX_FL_FILTERHINT

#define OBEX_FL_FILTERHINT   (1 << 2)

Filter devices based on hint bit.

◆ OBEX_FL_FILTERIAS

#define OBEX_FL_FILTERIAS   (1 << 3)

Filter devices based on IAS entry.

◆ OBEX_FL_FIT_ONE_PACKET

#define OBEX_FL_FIT_ONE_PACKET   (1 << 0)

This header must fit in one packet.

◆ OBEX_FL_KEEPSERVER

#define OBEX_FL_KEEPSERVER   (1 << 1)

Keep the server alive.

◆ OBEX_FL_NONBLOCK

#define OBEX_FL_NONBLOCK   (1 << 5)

Set the NONBLOCK flag on file descriptors.

◆ OBEX_FL_STREAM_CONTINUE

#define OBEX_FL_STREAM_CONTINUE   (1 << 5)

Continue body stream after all remaining headers.

◆ OBEX_FL_STREAM_DATA

#define OBEX_FL_STREAM_DATA   (1 << 2)

Set data for body stream.

◆ OBEX_FL_STREAM_DATAEND

#define OBEX_FL_STREAM_DATAEND   (1 << 3)

Set data (or no data) for body stream and finish it.

◆ OBEX_FL_STREAM_START

#define OBEX_FL_STREAM_START   (1 << 1)

Start of streaming body.

◆ OBEX_FL_SUSPEND

#define OBEX_FL_SUSPEND   (1 << 4)

Suspend after sending this header.

◆ OBEX_HDR_ACTION_ID

#define OBEX_HDR_ACTION_ID   (OBEX_HDR_ID_ACTION_ID | OBEX_HDR_TYPE_UINT8 )

◆ OBEX_HDR_APPARAM

#define OBEX_HDR_APPARAM   (OBEX_HDR_ID_APPARAM | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_AUTHCHAL

#define OBEX_HDR_AUTHCHAL   (OBEX_HDR_ID_AUTHCHAL | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_AUTHRESP

#define OBEX_HDR_AUTHRESP   (OBEX_HDR_ID_AUTHRESP | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_BODY

#define OBEX_HDR_BODY   (OBEX_HDR_ID_BODY | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_BODY_END

#define OBEX_HDR_BODY_END   (OBEX_HDR_ID_BODY_END | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_CONNECTION

#define OBEX_HDR_CONNECTION   (OBEX_HDR_ID_CONNECTION | OBEX_HDR_TYPE_UINT32 )

◆ OBEX_HDR_COUNT

#define OBEX_HDR_COUNT   (OBEX_HDR_ID_COUNT | OBEX_HDR_TYPE_UINT32 )

◆ OBEX_HDR_CREATOR

#define OBEX_HDR_CREATOR   (OBEX_HDR_ID_CREATOR | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_DESCRIPTION

#define OBEX_HDR_DESCRIPTION   (OBEX_HDR_ID_DESCRIPTION | OBEX_HDR_TYPE_UNICODE)

◆ OBEX_HDR_DESTNAME

#define OBEX_HDR_DESTNAME   (OBEX_HDR_ID_DESTNAME | OBEX_HDR_TYPE_UNICODE)

◆ OBEX_HDR_EMPTY

#define OBEX_HDR_EMPTY   0x00 /* Empty header (buggy OBEX servers) */

◆ OBEX_HDR_HTTP

#define OBEX_HDR_HTTP   (OBEX_HDR_ID_HTTP | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_ID_MASK

#define OBEX_HDR_ID_MASK   0x3f

◆ OBEX_HDR_LENGTH

#define OBEX_HDR_LENGTH   (OBEX_HDR_ID_LENGTH | OBEX_HDR_TYPE_UINT32 )

◆ OBEX_HDR_NAME

#define OBEX_HDR_NAME   (OBEX_HDR_ID_NAME | OBEX_HDR_TYPE_UNICODE)

◆ OBEX_HDR_OBJECTCLASS

#define OBEX_HDR_OBJECTCLASS   (OBEX_HDR_ID_OBJECTCLASS | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_PERMISSIONS

#define OBEX_HDR_PERMISSIONS   (OBEX_HDR_ID_PERMISSIONS | OBEX_HDR_TYPE_UINT32 )

◆ OBEX_HDR_SESSIONPARAM

#define OBEX_HDR_SESSIONPARAM   (OBEX_HDR_ID_SESSIONPARAM | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_SESSIONSEQ

#define OBEX_HDR_SESSIONSEQ   (OBEX_HDR_ID_SESSIONSEQ | OBEX_HDR_TYPE_UINT8 )

◆ OBEX_HDR_SRM

#define OBEX_HDR_SRM   (OBEX_HDR_ID_SRM | OBEX_HDR_TYPE_UINT8 )

◆ OBEX_HDR_SRM_FLAGS

#define OBEX_HDR_SRM_FLAGS   (OBEX_HDR_ID_SRM_FLAGS | OBEX_HDR_TYPE_UINT8 )

◆ OBEX_HDR_TARGET

#define OBEX_HDR_TARGET   (OBEX_HDR_ID_TARGET | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_TIME

#define OBEX_HDR_TIME   (OBEX_HDR_ID_TIME | OBEX_HDR_TYPE_BYTES ) /* Format: ISO 8601 */

◆ OBEX_HDR_TIME2

#define OBEX_HDR_TIME2   (OBEX_HDR_ID_TIME | OBEX_HDR_TYPE_UINT32 ) /* Deprecated use HDR_TIME instead */

◆ OBEX_HDR_TYPE

#define OBEX_HDR_TYPE   (OBEX_HDR_ID_TYPE | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_TYPE_MASK

#define OBEX_HDR_TYPE_MASK   0xc0

◆ OBEX_HDR_TYPE_SHIFT

#define OBEX_HDR_TYPE_SHIFT   6

◆ OBEX_HDR_WANUUID

#define OBEX_HDR_WANUUID   (OBEX_HDR_ID_WANUUID | OBEX_HDR_TYPE_BYTES )

◆ OBEX_HDR_WHO

#define OBEX_HDR_WHO   (OBEX_HDR_ID_WHO | OBEX_HDR_TYPE_BYTES )

◆ OBEX_IRDA_OPT_MTU

#define OBEX_IRDA_OPT_MTU   (7 * 2039) /* 7 IrLAP frames */

Optimum MTU for various transport (optimum for throughput).

The user/application has to set them via OBEX_SetTransportMTU(). If you are worried about safety or latency, stick with the current default... - Jean II

◆ OBEX_MAXIMUM_MTU

#define OBEX_MAXIMUM_MTU   65535

◆ OBEX_MINIMUM_MTU

#define OBEX_MINIMUM_MTU   255

Enumeration Type Documentation

◆ obex_cmd

enum obex_cmd

Obex commands.

Enumerator
OBEX_CMD_CONNECT 
OBEX_CMD_DISCONNECT 
OBEX_CMD_PUT 
OBEX_CMD_GET 
OBEX_CMD_SETPATH 
OBEX_CMD_ACTION 
OBEX_CMD_SESSION 

used for reliable session support

OBEX_CMD_ABORT 

◆ obex_data_direction

Possible data direction.

Enumerator
OBEX_DATA_NONE 
OBEX_DATA_IN 
OBEX_DATA_OUT 

◆ obex_event

enum obex_event

Possible events.

Enumerator
OBEX_EV_PROGRESS 

Progress has been made.

OBEX_EV_REQHINT 

An incoming request is about to come.

OBEX_EV_REQ 

An incoming request has arrived.

OBEX_EV_REQDONE 

Request has finished.

OBEX_EV_LINKERR 

Link has been disconnected.

OBEX_EV_PARSEERR 

Malformed data encountered.

OBEX_EV_ACCEPTHINT 

Connection accepted.

OBEX_EV_ABORT 

Request was aborted.

OBEX_EV_STREAMEMPTY 

Need to feed more data when sending a stream.

OBEX_EV_STREAMAVAIL 

Time to pick up data when receiving a stream.

OBEX_EV_UNEXPECTED 

Unexpected data, not fatal.

OBEX_EV_REQCHECK 

First packet of an incoming request has been parsed.

OBEX_EV_CONTINUE 

A Continue response was received and a new request is about to be sent.

CancelRequest() can be used to stop the request processing.

◆ obex_hdr_id

Identifier part of an obex header value.

Enumerator
OBEX_HDR_ID_INVALID 

used as invalid return value

OBEX_HDR_ID_COUNT 

Number of objects (used by connect)

OBEX_HDR_ID_NAME 

Name of the object.

OBEX_HDR_ID_TYPE 

Type of the object.

OBEX_HDR_ID_LENGTH 

Total length of object.

OBEX_HDR_ID_TIME 

Last modification time of (ISO8601)

OBEX_HDR_ID_DESCRIPTION 

Description of object.

OBEX_HDR_ID_TARGET 

Identifies the target for the object.

OBEX_HDR_ID_HTTP 

An HTTP 1.x header.

OBEX_HDR_ID_BODY 

Data part of the object.

OBEX_HDR_ID_BODY_END 

Last data part of the object.

OBEX_HDR_ID_WHO 

Identifies the sender of the object.

OBEX_HDR_ID_CONNECTION 

Connection identifier.

OBEX_HDR_ID_APPARAM 

Application parameters.

OBEX_HDR_ID_AUTHCHAL 

Authentication challenge.

OBEX_HDR_ID_AUTHRESP 

Authentication response.

OBEX_HDR_ID_CREATOR 

indicates the creator of an object

OBEX_HDR_ID_WANUUID 

uniquely identifies the network client (OBEX server)

OBEX_HDR_ID_OBJECTCLASS 

OBEX Object class of object.

OBEX_HDR_ID_SESSIONPARAM 

Parameters used in session commands/responses.

OBEX_HDR_ID_SESSIONSEQ 

Sequence number used in each OBEX packet for reliability.

OBEX_HDR_ID_ACTION_ID 

Specifies the action for the ACTION command.

OBEX_HDR_ID_DESTNAME 

Destination object name.

OBEX_HDR_ID_PERMISSIONS 

bit mask for setting permissions

OBEX_HDR_ID_SRM 

response mode selection

OBEX_HDR_ID_SRM_FLAGS 

flags for single response mode

◆ obex_hdr_type

Type part of an obex header value.

Enumerator
OBEX_HDR_TYPE_INVALID 

used as invalid return value

OBEX_HDR_TYPE_UNICODE 

zero terminated unicode string (network byte order)

OBEX_HDR_TYPE_BYTES 

byte array

OBEX_HDR_TYPE_UINT8 

8bit unsigned integer

OBEX_HDR_TYPE_UINT32 

32bit unsigned integer

◆ obex_mode

enum obex_mode

Possible modes.

Enumerator
OBEX_MODE_CLIENT 

client mode

OBEX_MODE_SERVER 

server mode

◆ obex_rsp

enum obex_rsp

Obex responses.

Enumerator
OBEX_RSP_CONTINUE 
OBEX_RSP_SWITCH_PRO 
OBEX_RSP_SUCCESS 
OBEX_RSP_CREATED 
OBEX_RSP_ACCEPTED 
OBEX_RSP_NON_AUTHORITATIVE 
OBEX_RSP_NO_CONTENT 
OBEX_RSP_RESET_CONTENT 
OBEX_RSP_PARTIAL_CONTENT 
OBEX_RSP_MULTIPLE_CHOICES 
OBEX_RSP_MOVED_PERMANENTLY 
OBEX_RSP_MOVED_TEMPORARILY 
OBEX_RSP_SEE_OTHER 
OBEX_RSP_NOT_MODIFIED 
OBEX_RSP_USE_PROXY 
OBEX_RSP_BAD_REQUEST 
OBEX_RSP_UNAUTHORIZED 
OBEX_RSP_PAYMENT_REQUIRED 
OBEX_RSP_FORBIDDEN 
OBEX_RSP_NOT_FOUND 
OBEX_RSP_METHOD_NOT_ALLOWED 
OBEX_RSP_NOT_ACCEPTABLE 
OBEX_RSP_PROXY_AUTH_REQUIRED 
OBEX_RSP_REQUEST_TIME_OUT 
OBEX_RSP_CONFLICT 
OBEX_RSP_GONE 
OBEX_RSP_LENGTH_REQUIRED 
OBEX_RSP_PRECONDITION_FAILED 
OBEX_RSP_REQ_ENTITY_TOO_LARGE 
OBEX_RSP_REQ_URL_TOO_LARGE 
OBEX_RSP_UNSUPPORTED_MEDIA_TYPE 
OBEX_RSP_INTERNAL_SERVER_ERROR 
OBEX_RSP_NOT_IMPLEMENTED 
OBEX_RSP_BAD_GATEWAY 
OBEX_RSP_SERVICE_UNAVAILABLE 
OBEX_RSP_GATEWAY_TIMEOUT 
OBEX_RSP_VERSION_NOT_SUPPORTED 
OBEX_RSP_DATABASE_FULL 
OBEX_RSP_DATABASE_LOCKED 

◆ obex_rsp_mode

Obex response modes.

Enumerator
OBEX_RSP_MODE_NORMAL 

normal response mode

OBEX_RSP_MODE_SINGLE 

single response mode (SRM)

◆ obex_transport_type

Possible transports.

Enumerator
OBEX_TRANS_IRDA 

Infrared.

OBEX_TRANS_INET 

TCP over IPv4/v6.

OBEX_TRANS_CUSTOM 

Custom transport with callbacks.

OBEX_TRANS_BLUETOOTH 

Bluetooth RFCOMM.

OBEX_TRANS_FD 

file descriptors

OBEX_TRANS_USB 

USB CDC OBEX.