| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
|
|
|
|
| |
Plugins including service.h need to include openobex headers because of
this.
|
|
|
|
|
| |
This function remove the need of calling OBEX_ObjectGetNonHdrData in the
plugins.
|
|
|
|
|
| |
Plugins including obex.h need to include openobex headers because of
this.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some contacts in Tracker can have no name fields set nor nickname. This
patch enhances the way the contact name is obtained:
1) If there is no nco:nickname set for contact, use nco:imNickname from
its related IM data.
2) As the N field is mandatory in both vCard 2.1 and 3.0 and it's the
most useful field for PBAP clients, if its components are not present
in Tracker, use nco:fullname (thus promote FN to N) or if nco:fullname
is also not present, then use previously obtained nickname for N field.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OBEX spec says:
Only the first packet in the request needs to contain the Connection
Id header...
If a Connection Id header is received with an invalid connection
identifier, it is recommended that the operation be rejected with the
response code (0xD3) “Service Unavailable”.
Since not all requests packets need to contain Connection Id header we
should only try to validate it in case a header is received.
Reported by Hendrik Sattler <post@hendrik-sattler.de>
|
|
|
|
|
| |
According to both OBEX and GOEP specs Connection ID should only be
included in the first packet of a request.
|
|
|
|
|
| |
obex->rx_last_op is only updated if there is no pending request which
means it only store last received request.
|
|
|
|
|
|
|
| |
OBEX spec state that it is optional to send a Connection Id header in an
OBEX ABORT operation.
Reported by Hendrik Sattler <post@hendrik-sattler.de>
|
|
|
|
|
|
| |
Note that in order to work the buffer had to be increased to OBEX maximum
MTU otherwise test_io_cb would be sending responses for each fragment it
has read which may not constitute a full packet.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Previously URL vCard's field (imported with default OTHER subtype) was
missing after pulling entire phonebook or single vCard (for phonebook
and each call history as well).
This patch fixes that issue by adjusting queries to URL field.
|
|
|
|
|
|
| |
Since gobex maintain the connection id of the session it is more
convenient to check whether the incoming request connection matches
before calling the application handlers.
|
| |
|
|
|
|
| |
Make use of tabs instead of spaces
|
|
|
|
|
| |
pcsuite code has been moved to pcsuite plugin and this code is no
longer used.
|
|
|
|
|
| |
As a mimetype driver only plugin filesystem should not depend on
service.h nor obex.h
|
|
|
|
|
| |
This way we don't have to keep adding new entries to main.c everytime
a new service is introduced.
|
|
|
|
|
| |
The driver already define the channel so it makes sense to have the
secure flag in the same place.
|
|
|
|
| |
Options are general so it is pointless to copy them to each server.
|
| |
|
|
|
|
| |
config.h should only be included in .c files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes regression introduced by
63becff48820dc50a30ae495e286e858a886d9dd, causing obex-client to crash
in cases of e.g. remote site rejecting pushed file.
The req->function set by user of agent API may request agent object
deletion. This in turn checks if agent->pending is set and if it is,
it tries to cancel the pending call and frees pending call data. As at
this point we are already handling call response and we are going to
free this pending call data, agent->pending can be set to NULL prior to
calling req->function, thus preventing premature freeing of later
dereferenced req.
|
|
|
|
| |
This patch removes unnecessary code line breaking.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This adds support for debug using GOBEX_DEBUG environment variable.
|
|
|
|
|
|
|
|
|
|
|
| |
According to PBAP specification (ANNEX A), all application-parameters
are optional in case of pulling single vCard entry, so header for
application-parameters can be omitted, and it would be valid as well.
Previously pulling single vCard was always failing with "Bad Request"
status in such a circumstance.
This patch fixes that issue and pulling single vCard is done successfully
with "OK" status. Output vCard would contain all fields under 2.1 format
(as for default settings).
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Previously limit length for vCard's (vCard 2.1 with Quoted Printable
encoding) property line was always set as 75 (QP_LINE_LEN), after
processing each single subfield (for instance under ADR property).
Thus it was not possible to reach limit equal to 0 (then breaking line
is required) for all property subfields.
This patch fixes that issue and length of first line, containing property
parameters, is limited as well.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch provides additional condition for selection of Quoted Printable
encoding (for vCard's 2.1 fields). It will be satisfied if there is any
byte which value is out of range standard ASCII set. Such byte may be
a part of sequence (composed of more than single byte) for non-standard
characters specified by UTF-8 and if detected, CHARSET parameter for
property is set as "UTF-8".
This fix is required since without such improvement some carkits may
display non-standard characters incorrectly (for instance they may be
omitted completely).
|
|
|
|
|
|
| |
Without that checking strlen(..) could be called with NULL
as param and this will result crash (in some scenarios
'field' may be NULL)
|
|
|
|
|
|
|
|
| |
If tag value is empty there is possibility to quickly create
empty tag without entering to rest of the logic.
Checking for empty parameter at the begining is included
basicaly in every print tag function in code - here somehow
was missing.
|
|
|
|
|
|
|
|
|
| |
Commit 934b3b2f5f8432b67822be9f83a141fe3783cbd7 introduced a regression
in OPP, by making it not send TransferCompleted signal. This happened
because OPP was calling manager_emit_transfer_completed() on .reset(),
and manager_emit_transfer_completed() in turn checks if the os->object
is not NULL. This fixes this by moving clearing os->object after doing
service driver .reset().
|
|
|
|
| |
Length values of less than 3 are invalid.
|