History log of /libcore/ojluni/src/main/native/PlainDatagramSocketImpl.c
Revision Date Author Comments
264da741ca6bdf3a3b632364531374385699655c 12-May-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Move even more clinit code to reg functions

This changes moves clinit code that was blocked
by failure of art test 119-noimage-patchoat.
This was solved by calling EnsureInitialized
on java.lang.reflect.Field class before
libcore JNI_OnLoad is called.

This changes allows 2 more classes to be
compile-time initialized.

Bug: 28153851
Bug: 27265238
Change-Id: I1308efa28ce08bbfba5da5567dcd0b0a75b1e066
(cherry picked from commit 0394295e90f2e9830a2cbcc279dd61e140f15226)
74062e1c405d0943159bb52dcacd4df240e60621 05-May-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Revert "Move more clinit code to registration functions"

This reverts commit 97d726e8f74b80a567ff3cc7fd18270fa6a7f3ca.

This cl breaks art 119-noimage-patchoat test.

Change-Id: If8b8c7b4a555ead5ac6a8fe4a32002658ea52644
97d726e8f74b80a567ff3cc7fd18270fa6a7f3ca 03-May-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Move more clinit code to registration functions

Moved clinit code that fetches field/method ids
to JNI registration funcitons. This will allow to
compile-time initialize these classes.

Moved more classes in java.net.* and java.io.*
packages.

Removed sun.nio.ch.Util#load() method that
was preventing many sun.nio.ch.* classes from
being compile-time initialized.

More clinit code moving changes will follow.

Bug: 28153851
Change-Id: I661bea4d04470366ea589a9308cb2767000c687c
(cherry picked from commit 607fcf911f63035e238accb21eb4648e9a0d2b8f)
1a6762a724b1200eb826b2cdce21c0a4d7e2f594 22-Mar-2016 Yi Kong <yikong@google.com> Wire up SocketTagger

Tag all socket, accept and close calls.

Bug: 27291269
Bug: 27549426
Change-Id: I7c2edd0530306111765b900bd705532302d9b597
(cherry picked from commit a87f559f13ebd0861c0dfbb95b51e76311c94473)
f11b8455a807fc4daf018aac91ea721ae8ff3296 29-Jan-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Android-ify SocketOptions.IP_MULTICAST_IF2

SocketOptions#setOption(SocketOptions.IP_MULTICAST_IF2, value) on openJdk
expects NetworkInterface object. Pre-openJdk android expects network interface
index as an Integer. This change makes openJdk code work with both NetworkInterface object and an Integer containing network interface index.

I removed IPv4-only logic from
SocketOptions#getOption(SocketOptions.IP_MULTICAST_IF2/IP_MULTICAST_IF).
IP_MULTICAST_IF2 variant returns an Integer with NI index instead of
NetworkInterface object like in thr pre-openJdk libcore. Logic for
generating resulting InetAddress in IP_MULTICAST_IF variant was
moved from JNI to Java.

Bug: 26790580
Change-Id: I2a5c66124aef7a816f0db59bd32cd14c48d510e8
(cherry picked from commit 144bf4e4c08435588381b2ec0df8b9c244eed065)
144bf4e4c08435588381b2ec0df8b9c244eed065 29-Jan-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Android-ify SocketOptions.IP_MULTICAST_IF2

SocketOptions#setOption(SocketOptions.IP_MULTICAST_IF2, value) on openJdk
expects NetworkInterface object. Pre-openJdk android expects network interface
index as an Integer. This change makes openJdk code work with both NetworkInterface object and an Integer containing network interface index.

I removed IPv4-only logic from
SocketOptions#getOption(SocketOptions.IP_MULTICAST_IF2/IP_MULTICAST_IF).
IP_MULTICAST_IF2 variant returns an Integer with NI index instead of
NetworkInterface object like in thr pre-openJdk libcore. Logic for
generating resulting InetAddress in IP_MULTICAST_IF variant was
moved from JNI to Java.

Bug: 26790580
Change-Id: I2a5c66124aef7a816f0db59bd32cd14c48d510e8
58506221d284fccc81cceb6219790d8c78e2ca68 29-Jan-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Remove dead code in mcast_join_leave

Removed code for IPv4-only and non-linux
platforms.

Bug: 26238832
Change-Id: I5d98d9de37ce4bc6a27b6e1d160ac81b1646d741
a9a8750216ff1734d91b244cad9c0dbb1602c0de 19-Jan-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Fix mcast_join_leave for IPv6 addresses

Removed the fix for the 2.4.8+ linux not dealing
well with interface==0 IPV6_ADD_MEMBERSHIP/IPV6_DROP_MEMBERSHIP
setsockopt calls. It's not needed anymore, and was breaking
MulticastSocketTest.java on Nexus 5

+ Pulled out the "static jfieldID ni_indexID" and its
initialization from IPv4 and not-null niObj branch to
the beginning of mcast_join_leave method. ni_indexID
is used in the IPv6 with not-null niObj branch and
may be not initialized at this point.

Bug: 25993730
Change-Id: I5f8af1842b1c04df8242ba75ba8254c52db1f343
590de1cbb31905028b6e155223a37f1b04966e0a 19-Jan-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Cleanup mcast_join_leave function in PlainDatagramSocketImpl

Removed codepaths responsible for handling MACOSX and 2.2 linux kernel.
This method is quite convoluted, this de-cluttering makes it easier to
understand what it's doing.

Bug: 25993730
Change-Id: Ibdb8a969fd4e3869fb307df6d83dc600ed3ebd35
2ab856abd0b6692433d5bb764b27200cc974dfe2 10-Aug-2015 Narayan Kamath <narayan@google.com> Fix MulticastSocket implementation.

Give up when an exception is thrown, do not try the next
interface with an exception pending.

Change-Id: I9870e5b06cec3b9120f31704badfd11adf1f98e7
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