History log of /frameworks/base/obex/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
50ba032f4a81155c5f10561d39a4f258a0e4f244 30-May-2014 Hemant Gupta <hemantg@codeaurora.org> OBEX: Handle GET operation properly

This change handles GET operation properly whenever the
Input stream is getting aborted in between. Without this
patch it was observed that GET request was being sent by
DUT even when abort has been sent/received resulting
in IOT issues with some remote devices including PTS.

Change-Id: Idcb4ea04abb57353af5ab1fef050b3a36579892e
avax/obex/ClientOperation.java
238e0f934f1f47263b384bc745ae0678c777130d 09-Apr-2015 Casper Bonde <c.bonde@samsung.com> OBEX Over L2CAP + SDP search API for BT profiles

- Updated OBEX to support SRM
- Added support for OBEX over l2cap and SRM.
- Minor bugfixes, and reduce CPU load ALOT
- Added support to send responses without body data.
- Extend BluetoothSocket to support L2CAP
- Added functionality to get the channel number
needed to be able to create an SDP record with the channel number.
- Added interface to get socket type and max packet sizes.
- Added interface to perform SDP search and get the resulting
SDP record data.

Change-Id: I9d37a00ce73dfffc0e3ce03eab5511ba3a86e5b8
ndroid.mk
avax/obex/ClientOperation.java
avax/obex/ClientSession.java
avax/obex/HeaderSet.java
avax/obex/ObexHelper.java
avax/obex/ObexPacket.java
avax/obex/ObexSession.java
avax/obex/ObexTransport.java
avax/obex/ServerOperation.java
avax/obex/ServerRequestHandler.java
avax/obex/ServerSession.java
8949bfb90c415629dbd0e30d25003fb3e0375fb5 16-Aug-2013 Hemant Gupta <hemantg@codeaurora.org> Bluetooth: Support MAP Client role on Bluedroid.

Implementation changes to support MAP client and PBAP client
role on Bluedroid stack.

Change-Id: I1733a67bf5256bd7b181bd5e68e40b476994ebfd
avax/obex/ClientOperation.java
avax/obex/HeaderSet.java
avax/obex/ObexHelper.java
0d376053747615ac7c4b45ab7810329ffbdf80d1 22-Aug-2013 Kim Schulz <k.schulz@samsung.com> Fixed review comments

- fixed review comments (internal+google)
- corrected tabs/spaces
- Add connection id header for obex client operations
- added support for implementing ProfileService class

Change-Id: Idab8b4fa54a0f31bec4ffa263a69a9850a07f858

Bug:10692365
avax/obex/ClientOperation.java
avax/obex/ServerSession.java
fe3807a5b23f54f6539436d71aa0cd931a2b76f0 19-Jul-2013 Matthew Xie <mattx@google.com> Bluetooth MAP profile - sms and mms support initial check-in

bug:10116530

Change-Id: I57d022005bcff5bc3e56438a81ac92566f957744
avax/obex/ClientOperation.java
avax/obex/HeaderSet.java
avax/obex/Operation.java
avax/obex/ServerOperation.java
789a01aa05697bf795ad083ccf99b036f72bc208 06-Apr-2012 Wei Zhong <wzhong@google.com> Add NOTICE and MODULE_LICENSE_BSD_LIKE for obex

"Copyright (c) 2008-2009, Motorola, Inc"

Bug: 6299628

Change-Id: Ia64d7341a8466ee9213ecabe6315c64b8643574e
Signed-off-by: Wei Zhong <wzhong@google.com>
(cherry picked from commit 559841702b8a8760e057af29d14d1a31ce75ff18)
ODULE_LICENSE_BSD_LIKE
OTICE
3bec9cc27a4b87be644533d5fe44358dde399d49 20-May-2011 Jaikumar Ganesh <jaikumarg@android.com> am 0c2d82c6: am 848a1e3d: Merge "OBEX: Fix PrivateOutputStream small write problem"

* commit '0c2d82c6f28ab6ec73d66fcc1f62e067829df426':
OBEX: Fix PrivateOutputStream small write problem
a9c4c594ef29e097be8be0537657fa8d9529502e 20-May-2011 Erik Ljungberg <erik.ljungberg@sonyericsson.com> OBEX: Fix PrivateOutputStream small write problem

When data less than max packet size in length is sent into the write
method the data will only be added to the internal buffer. If several
calls to write is performed by the application continueOperation will
not be called at all. The solution to the problem is to always check
the internal buffer size and to call continueOperation every time
maxPacketSize bytes is in the internal buffer.

Change-Id: I5ebfa3c26db2c1aefe1a115d7782d8ceaa760937
avax/obex/PrivateOutputStream.java
ee1c033f6e0c2e709bd63adb419de3c5212fdf8f 20-Apr-2011 Jaikumar Ganesh <jaikumarg@android.com> am 24a16e6c: am c34c88b9: am ec1a8f7a: Merge "Unable to push files to Windows 7"

* commit '24a16e6c53d9b45c0cfdf150425002adc919955b':
Unable to push files to Windows 7
e83b744d7d0b3caaf8f5456b795331d5db2495a3 22-Mar-2011 Erik Ljungberg <erik.ljungberg@sonyericsson.com> Unable to push files to Windows 7

Windows 7 says it can handle the maximum OBEX packet size. However
if the maximum packet size is used the transfer will fail. This
should be fixed by Microsoft but until they do the only way to solve
this is to reduce the maximum packet size for the OBEX client.

Change-Id: I51975eec972395ae3f1f21cca236b223d0812ef3
avax/obex/ClientSession.java
avax/obex/ObexHelper.java
929a1c219248b62778807cac8ea256c7ac0fda6a 02-Feb-2011 Brian Carlstrom <bdc@google.com> Removing android.security.MessageDigest

Bug: 3392028
Change-Id: I6b9732da17d086ba00c846c3ad1c7fb39baf9502
avax/obex/ObexHelper.java
4507b177c35cfd918dba1cdc325fae3688fb7bd2 27-Oct-2010 Anders Petersson <anders3.petersson@sonyericsson.com> Bluetooth OBEX timeout problem.

Long time to show notification of file transfer failed after
canceling transfer via remote part.

Device A is in contact with our device, B. When device A Cancel
a transfer operation, it sends OBEX_OPCODE_DISCONNECT HeaderID
and the length of package to B. B use the length of package to
read remainder bytes from A. If the bytes B read do not meet the
received length it will block and wait for remainder bytes from A.
But when B compute the remainder bytes it forgets to subtract
the three bytes it has already read through HeaderID and the length
of the package. So the operation was blocked until the operation
timeout.

Change-Id: I0f8bf62d3119e081b5c01af9fc05fe586fd4fabc
avax/obex/ServerOperation.java
faf49b14a2768d3df8bfcf7f50516c5660021f51 27-Oct-2010 Anders Petersson <anders3.petersson@sonyericsson.com> Bluetooth OBEX timeout problem.

Long time to show notification of file transfer failed after
canceling transfer via remote part.

Device A is in contact with our device, B. When device A Cancel
a transfer operation, it sends OBEX_OPCODE_DISCONNECT HeaderID
and the length of package to B. B use the length of package to
read remainder bytes from A. If the bytes B read do not meet the
received length it will block and wait for remainder bytes from A.
But when B compute the remainder bytes it forgets to subtract
the three bytes it has already read through HeaderID and the length
of the package. So the operation was blocked until the operation
timeout.

Change-Id: I0f8bf62d3119e081b5c01af9fc05fe586fd4fabc
avax/obex/ServerOperation.java
8258ebdf128ef70a96fcaaa294167e39f1b5e94e 02-Mar-2010 Lixin Yue <L.X.YUE@motorola.com> Add ABORT support to Obex lib
avax/obex/ServerRequestHandler.java
avax/obex/ServerSession.java
69f72c00a12933f0fde049e8465257745f373d21 10-Dec-2009 Lixin Yue <L.X.YUE@motorola.com> Update OBEX lib setPath Flags handling logic to be compatible with spec.

From IrOBEX, 3.3.6.1, we can see below explanation for Flags bit 1:
1 Don't create directory if it does not exist, return an error instead.
The correct understanding should be: if bit 1 is set to 1, we'll not create
directory if it not exist; if bit 1 is set to 0, we'll create it if it not
exists.
avax/obex/ServerSession.java
65208317ba9d16486b47ebcaa868c596d424c87f 10-Nov-2009 Lixin Yue <L.X.YUE@motorola.com> Update OBEX to fix missing several contact entries issue.

The third parameter count of PrivateOutputStream.write()
should be the size of vcards data plus header length, excluding the 3 bytes
for the response message and 3 bytes for the header ID and length.
Adjust the return value of getMaxPacketSize() by minus headser size, so that
applications should not get packet slipped during multiple sharing operation.
Do not set the header to null in getHeaderLength() to get PBAP PTS passed;
Per OBEX spec, for Get request:
Only the last packet need send the 0x49(End of Body);
for intermediate packets, we need to send 0x48 (Body).
If all packets use 0x49, some carkit like Nokia PD-17 will fail to download
all contacts, except data in the last packet.

Bug: 2246927
Dr No: Eastham
avax/obex/ClientOperation.java
avax/obex/Operation.java
avax/obex/ServerOperation.java
25f2c4cd953764008d04147a14d990c06a8154e5 20-Sep-2009 Oscar Montemayor <oam@android.com> Modified random variable to use java.security.SecureRandom for authentication challenge genration.
avax/obex/HeaderSet.java
e80534ff59b2e62a0ddf4359147b81f5ba10de86 09-Sep-2009 Tao Liejun <L.J.Tao@motorola.com> Fix connection ID issue in Obex lib

ConnectionID should be consistent in one Obex session.
avax/obex/ServerOperation.java
avax/obex/ServerSession.java
0b309d6ee433d55b7499d7bbd447494366ef1316 20-Jul-2009 Jackson Fan <xyfan@motorola.com> Improve Obex compatibility

Handle headers with excessive whilespace
Send correct reponse code when client abort onPut
avax/obex/ObexHelper.java
avax/obex/ServerSession.java
8d95d0a13a278c4bd4dbffb682acf1e457dfb94b 16-Jul-2009 Tao Liejun <L.J.Tao@motorola.com> Fix a bug introduced in obex cleanup

Avoid exception when an empty array is passed to convert to Unicode
Before cleanup, there used to be an empty try/catch
avax/obex/ObexHelper.java
05ff98bbefda39b9ff26f8bca132cfd0248745c6 14-Jul-2009 Tao Liejun <L.J.Tao@motorola.com> Fix minor obex bugs and re-format the comments

re-format comments
move connectible to connectable
remove unnecessary throws
remove not-used function ClientOperation.readResponse()
fix client abort case for PUT
set mOpen for PrivateOutputStream
add to platform.xml
avax/obex/Authenticator.java
avax/obex/BaseStream.java
avax/obex/ClientOperation.java
avax/obex/ClientSession.java
avax/obex/HeaderSet.java
avax/obex/ObexHelper.java
avax/obex/ObexSession.java
avax/obex/ObexTransport.java
avax/obex/Operation.java
avax/obex/PasswordAuthentication.java
avax/obex/PrivateInputStream.java
avax/obex/PrivateOutputStream.java
avax/obex/ResponseCodes.java
avax/obex/ServerOperation.java
avax/obex/ServerRequestHandler.java
avax/obex/ServerSession.java
avax/obex/SessionNotifier.java
3998bf009acaf8cde4d7f837f8b8e41ae0a65141 02-Jul-2009 Tao Liejun <a19884@motorola.com> Obex library cleanup, third pass

- Change variable namings
- Remove interface public modifier
- Move 2 duplicate methods to ObexSession
- Removed unused code and variables
- Use static variables for some protocol defines
avax/obex/ApplicationParameter.java
avax/obex/Authenticator.java
avax/obex/BaseStream.java
avax/obex/ClientOperation.java
avax/obex/ClientSession.java
avax/obex/HeaderSet.java
avax/obex/ObexHelper.java
avax/obex/ObexSession.java
avax/obex/Operation.java
avax/obex/PasswordAuthentication.java
avax/obex/PrivateInputStream.java
avax/obex/PrivateOutputStream.java
avax/obex/ResponseCodes.java
avax/obex/ServerOperation.java
avax/obex/ServerRequestHandler.java
avax/obex/ServerSession.java
avax/obex/SessionNotifier.java
41557e18fa3fc5791a5a1c7f0051ae3385608bc4 01-Jul-2009 Nick Pelly <npelly@google.com> Obex library cleanup, second pass.

o Use mMemberField variable naming as per style guide
o ClientSession.trans is only used in the ctor, doesn't need to be a member
o Rename connectionOpen to mOpen and isConnected to mObexConnected to reduce
confusion
o Refactor duplicated code into helper functions (setRequestActive())
o Fix whitespace around comment blocks
o Change unnecessary public scope's to package private (eg setRequestInactive())
o Remove a redundant factory method ClientSession.createHeaderSet()
o Rename OPTIMIZATION to TODO to match Android style
o Rename java.io.IOException to IOException
o Be consistent with variable naming - use header not headers
avax/obex/ClientOperation.java
avax/obex/ClientSession.java
avax/obex/ObexHelper.java
avax/obex/PrivateInputStream.java
avax/obex/ServerOperation.java
2e0da96e757a977154063f980d3f4e1abd41cf09 01-Jul-2009 Nick Pelly <npelly@google.com> Obex library cleanup, first pass.

o Add Android.mk file.
o Add @hide so it is not exposed in the public API. It is not yet in shape.
o Prefer @throws to @exception
o Do not use @version. This is meaningless in Android.
o Prefer classes 'final' unless explicitly allowing inheritance
(See "Effective Java" item 15)
o Prefer CamelCaps java naming even for acronyms (OBEXHelper -> ObexHelper)
o Use the built-in MD5 library.
o Move ObexConstants into ObexHelper.
o Remove unused variables.
o Prefer stricter access priveleges. Most importantly, avoid public fields.
o Don't use 'import java.io.*'. Name each class explicitly.
o Delete commented out code. If its not used then remove it.
ndroid.mk
avax/obex/ApplicationParameter.java
avax/obex/Authenticator.java
avax/obex/BaseStream.java
avax/obex/ClientOperation.java
avax/obex/ClientSession.java
avax/obex/HeaderSet.java
avax/obex/OBEXConstants.java
avax/obex/OBEXHelper.java
avax/obex/ObexHelper.java
avax/obex/ObexSession.java
avax/obex/ObexTransport.java
avax/obex/Operation.java
avax/obex/PasswordAuthentication.java
avax/obex/PrivateInputStream.java
avax/obex/PrivateOutputStream.java
avax/obex/ResponseCodes.java
avax/obex/ServerOperation.java
avax/obex/ServerRequestHandler.java
avax/obex/ServerSession.java
avax/obex/SessionNotifier.java
9439a7fe517b858bc5e5c654b459315e4722feb2 30-Jun-2009 Nick Pelly <npelly@google.com> Add javax.obex library, contributed by Motorola.

Based of a JSR-82 reference implementation.

This check-in is 'as-is' from the source provided June 25.

This code does not conform to Android style and quality guidelines. I will be
working with Motorola to improve it. If it does not see substantial improvement
in the Eclair timeframe it will be deleted.
avax/obex/ApplicationParameter.java
avax/obex/Authenticator.java
avax/obex/BaseStream.java
avax/obex/ClientOperation.java
avax/obex/ClientSession.java
avax/obex/HeaderSet.java
avax/obex/OBEXConstants.java
avax/obex/OBEXHelper.java
avax/obex/ObexSession.java
avax/obex/ObexTransport.java
avax/obex/Operation.java
avax/obex/PasswordAuthentication.java
avax/obex/PrivateInputStream.java
avax/obex/PrivateOutputStream.java
avax/obex/ResponseCodes.java
avax/obex/ServerOperation.java
avax/obex/ServerRequestHandler.java
avax/obex/ServerSession.java
avax/obex/SessionNotifier.java