History log of /libcore/ojluni/src/main/java/java/net/HttpCookie.java
Revision Date Author Comments
6975f84c2ed72e1e26d20190b6f318718c849008 01-Mar-2017 Tobias Thierer <tobiast@google.com> Make Android patch docs in ojluni more consistent with style guide

This CL consists of an automated and a manual part (originally
reviewed as separate CLs, then squashed together before submitting
in order to minimize the number of times each Android-changed line
is touch, since that makes future git archaeology on these simpler).

Automated part: Run the following command (performs regex replacements):

find ojluni -name \*\.java | xargs sed -i \
-e 's/Android[- ]changed/Android-changed/ig' \
-e 's/Android-changed :/Android-changed:/g' \
-e 's/Android-changed \(BEGIN\|END\)/\1 Android-changed/g' \
-e 's/Android-changed - /Android-changed: /g' \
-e 's/Android[- ]removed/Android-removed/ig' \
-e 's/Android-removed :/Android-removed:/g' \
-e 's/Android-removed \(BEGIN\|END\)/\1 Android-removed/g' \
-e 's/Android-removed - /Android-removed: /g' \
-e 's/Android[- ]added/Android-added/ig' \
-e 's/Android-added :/Android-added:/g' \
-e 's/Android-added \(BEGIN\|END\)/\1 Android-added/g' \
-e 's/Android-added - /Android-added: /g' \
-e 's/----- \(BEGIN\|END\) android\( -----\)\?/\1 Android-changed/g' \
-e 's/\/\* \(BEGIN\|END\) Android-changed \*\//\/\/ \1 Android-changed/g'

Manual part: Move BEGIN Android-* lines out of block comments

Some Android-{changed,removed,added} lines occurred inside block comments.
This CL targets places in ojluni that contained the String "* BEGIN Android-"

Changes made by this CL include:

- Move the "BEGIN Android-" line into a line comment (the style guide
mandates that "Android-" lines are always in line comments). In many
cases, that line comment is immediately followed by a block comment
holding commented-out upstream code.
- Add corresponding "// END Android-" line comments, where missing.
- Drop documented import changes altogether. These create noise for
little benefit:
(1.) Most import problems will be found at compile time
(2.) They generally correspond to documented changes elsewhere in
the file.
- In most cases, the phrasing of comments and the decision whether to
keep commented out upstream code was not changed by this CL.
- Some additional tweaks were made in line with the style guide.

No attempt was made to:

- Verify that commented-out upstream code actually matches the
current upstream.
- Make any fixes (eg. to comments) that would have required
git archaeology (looking up historic commits).

Bug: 35841464
Test: make droid cts update-api

Change-Id: Ibc60979cb6061cfb0e9c7096cc9dcab30ddfa733
f8c921c60beae46257a55581ce16da6be9a9e09e 29-Nov-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Fix bug in expires time calculation

Commit 15ab5a903e26caade17bc69468717e8e56f51f23 introduced
test failures in HttpCookiesTest caused by code that tried
to avoid setting max-age to -1. Instead of setting all negative
values of max-age to 0 we do it only for -1, which has
special meaning (an undefined expires value).

Test: CtsLibcoreTestCases
Bug: 31039416
Change-Id: I2571e7205f727f9085564b41761ff243eb4dff3b
15ab5a903e26caade17bc69468717e8e56f51f23 21-Nov-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Adjust cookie max-age from expires time calculation.

Use whenCreated field (set when a cookie is created) for the
max-age calculation. Previous, parsing-related change switched
(erroneously) to use the current time inside the expires
assignor method.

Special case was added to avoid situation where
expires-currentTime == -1 which means an undefined expiry time.
This would create a persisting cookie (where value of -2 and
lower would result in cookie deletion).

Added test for Android N HttpCookiehasExpired() behavior change.

Test: CtsLibcoreTestCases
Bug: 31039416
Change-Id: Idc5417d16a49d56116ed4a6bef7cf56ee922047f
7ee8e1d8d92555a9d12aa88ee00fdde386404e84 16-Nov-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Make Cookes "expires" parsing more lenient

OpenJdk cookies implementation is more
strict about the "expires" field parsing and requires
the "GMT" prefix before timezone value. This is a
regression from Android M and earlier. We were more
lenient and accepted values without the GMT prefix.

This change switches "expires" parsing code to use
libcore.net.http.HttpDate code.

Bug: 31039416
Test: CtsLibcoreTestCases
Change-Id: I13359ed3451fa480ee6f949fd657bf639335ef37
7f4b1b8935a58d3f44351083cf5ef19045761de3 11-Aug-2016 Yi Kong <yikong@google.com> Merge OpenJDK 8 java.net (part 2)

Partial import of upstream jdk8u60 that does not introduce behavioural
differences:
* Remove unused imports
* Remove unused private fields
* Adding final modifier to some private fields
* Update copyright header
* Use of generics
* Cosmetic changes

This also imports upstream change to remove NetUtils, which does not
change behavior for Android as we does not use SecurityManager.

No functional change.

Bug: 29067535
Test: CTS java.net tests
Change-Id: I5c864a77f384f237ddac77d8c4579b291dcddb6b
49965c1dc9da104344f4893a05e45795a5740d20 30-Jun-2016 Ganesh Mahendran <opensource.ganesh@gmail.com> remove x attribute of java file

java file does not need x attribute. This patch removes it.

Change-Id: I2a7170d99f4bee7a7b819621c84dd197ded37fa2
Signed-off-by: Ganesh Mahendran <opensource.ganesh@gmail.com>
505d890c4f0a89414c427a6e23d98cc07b5f3154 04-Jul-2016 Yi Kong <yikong@google.com> Import upstream change: HttpCookie.domainMatches("hostname.local", "hostname") should return true

Upstream change:

7023713: HttpCookie.domainMatches("hostname.local", "hostname") should return true
Reviewed-by: chegar
Contributed-by: zhouyx@linux.vnet.ibm.com

http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/rev/5c1f90dd0405

Bug: 29067535
Test: org.apache.harmony.tests.java.net.HttpCookieTest#test_DomainMatches
Change-Id: I47b59a35e89ddb488554c712a58f645785409bc6
3a6411ec91b24e73f36301d0075bc7b052894ae9 14-Jun-2016 Yi Kong <yikong@google.com> Merge OpenJDK 8 java.net (part 1)

Partial import of upstream jdk8u60 that does not introduce behavioural
differences:
* Various documentation fixes
* Change HTML <code> and <tt> to {@code} annotation.
* Generics
* Serialization UID
* Code layout

No functional change.

Bug: 29067535
Change-Id: I7fc29692b949a27b528d1b25dfb3f0993005dfd2
00b71736c88addbe7cb5fa00b194695dde40a3a6 22-Jan-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Fix incorrect @hide usage

@hide annotation is only effective in Javadoc.

Bug: 26689841
Change-Id: Ice76dc2e291f475b3cac06d4240953cb7440ab40
(cherry picked from commit 1550ed9ba326ce08cef8ebf01699a49fabdc64f3)
1550ed9ba326ce08cef8ebf01699a49fabdc64f3 22-Jan-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Fix incorrect @hide usage

@hide annotation is only effective in Javadoc.

Bug: 26689841
Change-Id: Ice76dc2e291f475b3cac06d4240953cb7440ab40
2c87ad3a45cecf9e344487cad1abfdebe79f2c7c 21-Dec-2015 Narayan Kamath <narayan@google.com> Update file headers.

Change-Id: I8149f41585768a1a4b72ab7bb4a1452376c05cc2
f529bc75a97306051e5347287ab7780e67bc4d92 01-Sep-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Android-ify HttpCookie#domainMatches

- Disregard RFC 2965 sec. 3.3.2, the "The request-host is a HDN..."
rule for rejecting cookies (
- match "foo.local" for domain ".local".

Change-Id: I558213b12d931ecadd153ad761ed34e4170c638b
253affc3b5a4fb2dc54ac02117d05a6ac5e14655 26-Aug-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Fix some HttpCookieTest tests.

- Added detection of reserved cookie names
- Added detection of "=\s\t" in cookie name

TODO: test_Parse():737 fails because
SimpleDateFormat will not parse bad date.
TODO: domainMatches behaves completely differently. It's
strictly following RFC 2965 and wont match
subdomain with dot inside (so.. subdomain
of subdomain), matchDomain("a.b.c.d", ".c.d") will fail on OpenJdk, but
it's valid on android. This is close to RFC 6265 behavior, but according
to https://code.google.com/p/android/issues/detail?id=75182 we're not
implementing it fully. We have 3 solutions:
- preserve Android behavior (RFC 6265/2965 hybrid with special cases)
- preserve OpenJdk behavior (RFC 2965)
- reimplement this according to RFC 6265.

I'm leaning in the general direction of "preserve Android behavior".

Change-Id: Ic9617993ec56e355f688724cb8b87fbccc4673c6
f7ab2bc37debba91864bfec6572a3e7bbe994c58 06-May-2015 Piotr Jastrzebski <haaawk@google.com> Use OpenJdk implementation of java.net.*

- Add FileURLConnection.
- NetworkUtilities : Update field names in JNI.
- Suppress a few libcore tests that rely on internal implementation
details.
- Remove code that loads the net library (not needed on android).
- DatagramSocket : Add setNetworkInterface method.
- HttpCookie : make parse & field public
- Inet4Address / Inet6Address : Add getAddressInternal.
- InetAddress : Add methods required by frameworks/base, particularly
those required to deal with net-ids and scope ids.
- URI : Add UriCodec static members for AUTHORITY_ENCODER and friends.
- URL : Add toUriLenient
- URLStreamHandler : Add a toExternalForm variant that optionally
escapes illegal chars.
- Inet4AddressImpl.c : Unconditionally define HAS_GLIBC_GETHOSTBY_R

Change-Id: Ic51f863941f5d954ed6cf86309cc610e711d54bd
51b1b6997fd3f980076b8081f7f1165ccc2a4008 16-Feb-2015 Piotr Jastrzebski <haaawk@google.com> Initial import of OpenJdk files.

Create new libcore/ojluni directory with src/main/java and
src/main/native subdirectiories.

Build ojluni into core-oj jar.

Use openjdk classes from java.awt.font package.

Copy all files from jdk/src/share/classes and jdk/src/solaris/classes
directories in openjdk into libcore/ojluni/src/main/java.

Copy following native files from openjdk to
libcore/ojluni/src/main/native:
jdk/src/solaris/native/java/io/canonicalize_md.c
build/linux-amd64/include/classfile_constants.h
jdk/src/share/native/java/net/DatagramPacket.c
jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c
jdk/src/share/native/java/lang/Double.c
jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h
jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c
jdk/src/solaris/native/java/io/FileDescriptor_md.c
jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c
jdk/src/share/native/java/io/FileInputStream.c
jdk/src/solaris/native/sun/nio/ch/FileKey.c
jdk/src/solaris/native/java/io/FileOutputStream_md.c
jdk/src/solaris/native/java/io/FileSystem_md.c
jdk/src/share/native/java/lang/Float.c
jdk/src/share/native/java/net/Inet4Address.c
jdk/src/solaris/native/java/net/Inet4AddressImpl.c
jdk/src/share/native/java/net/Inet6Address.c
jdk/src/solaris/native/java/net/Inet6AddressImpl.c
jdk/src/share/native/java/net/InetAddress.c
jdk/src/solaris/native/java/net/InetAddressImplFactory.c
jdk/src/share/native/java/io/io_util.c
jdk/src/solaris/native/sun/nio/ch/IOUtil.c
jdk/src/share/native/java/io/io_util.h
jdk/src/solaris/native/java/io/io_util_md.c
jdk/src/solaris/native/java/io/io_util_md.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/java_io_FileDescriptor.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileInputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileOutputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_ObjectStreamClass.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_UnixFileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Double.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Float.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Integer.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Long.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Runtime.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Shutdown.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_StrictMath.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_String.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_System.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Thread.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Throwable.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_DatagramPacket.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddress.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddressImplFactory.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_NetworkInterface.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainDatagramSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketInputStream.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOptions.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOutputStream.h
jdk/src/share/native/java/lang/java_props.h
jdk/src/solaris/native/java/lang/java_props_md.c
jdk/src/share/native/java/util/zip/Adler32.c as java_util_zip_Adler32.c
jdk/src/share/native/java/util/zip/CRC32.c as java_util_zip_CRC32.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_CRC32.h
jdk/src/share/native/java/util/zip/Deflater.c as java_util_zip_Deflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Deflater.h
jdk/src/share/native/java/util/zip/Inflater.c as java_util_zip_Inflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Inflater.h
jdk/src/share/native/java/util/zip/ZipFile.c as java_util_zip_ZipFile.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_ZipFile.h
jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h
jdk/src/share/native/common/jlong.h
jdk/src/solaris/native/common/jlong_md.h
jdk/src/share/native/common/jni_util.c
jdk/src/share/native/common/jni_util.h
jdk/src/solaris/native/common/jni_util_md.c
jdk/src/share/javavm/export/jvm.h
jdk/src/solaris/javavm/export/jvm_md.h
jdk/src/solaris/native/java/net/linux_close.c
jdk/src/share/native/sun/misc/NativeSignalHandler.c
jdk/src/solaris/native/sun/nio/ch/NativeThread.c
jdk/src/share/native/java/net/net_util.c
jdk/src/share/native/java/net/net_util.h
jdk/src/solaris/native/java/net/net_util_md.c
jdk/src/solaris/native/java/net/net_util_md.h
jdk/src/solaris/native/java/net/NetworkInterface.c
jdk/src/share/native/sun/nio/ch/nio.h
jdk/src/solaris/native/sun/nio/ch/nio_util.h
jdk/src/share/native/java/io/ObjectStreamClass.c
jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c
jdk/src/solaris/native/java/net/PlainSocketImpl.c
jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c
jdk/src/share/native/java/lang/Runtime.c
jdk/src/share/native/java/lang/Shutdown.c
jdk/src/share/native/sun/misc/Signal.c
jdk/src/solaris/native/java/net/SocketInputStream.c
jdk/src/solaris/native/java/net/SocketOutputStream.c
jdk/src/share/native/java/lang/StrictMath.c
jdk/src/share/native/java/lang/String.c
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_NativeSignalHandler.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_Signal.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/sun_net_spi_DefaultProxySelector.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileChannelImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileDispatcherImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileKey.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOStatus.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOUtil.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_NativeThread.h
jdk/src/share/native/java/lang/System.c
jdk/src/share/native/java/lang/Thread.c
jdk/src/share/native/java/lang/Throwable.c
jdk/src/solaris/native/java/io/UnixFileSystem_md.c
jdk/src/solaris/native/java/lang/UNIXProcess_md.c
jdk/src/share/native/java/util/zip/zip_util.c
jdk/src/share/native/java/util/zip/zip_util.h

Change-Id: Ib237df4e1b7b5b4d9f12e74d189e6ec9eed3c31d