{"push_id":1105406606,"size":317,"distinct_size":1,"ref":"refs/heads/openssl_finalizer","head":"e5f0fc202db5e90675aaa4024b1e228bb60976bf","before":"4f5080a7103eae0a9b1bab6bb8ff66837013fc70","commits":[{"sha":"4eaa59d516357de12f7017da937e2e3d86091897","author":{"email":"3adb5601947af61a416c30f040a121db0ebdcd75@yandex-team.ru","name":"Sergey Polovko"},"message":"Improve SctpMessage.hashCode method\n\nMotivation:\n\nNot all fields of SctpMessage which used to check message equality are used\nto generate hashcode.\n\nModifications:\n\nUse value of 'unordered' field in hashCode method.\n\nResult:\n\nBetter hash function of SctpMessage.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/4eaa59d516357de12f7017da937e2e3d86091897"},{"sha":"c205e2be76bf5672af36138ac62b69bc10971277","author":{"email":"1f9be35a5e70a285f5464a216f87292e9473e559@gmail.com","name":"William Kemper"},"message":"Set DSCP bits for IPv6 when setting traffic class.\n\nMotivation:\n\nLinux uses different socket options to set the traffic class (DSCP) on IPv6\n\nModifications:\n\nAlso set IPV6_TCLASS for IPv6 sockets\n\nResult:\n\nTrafficClass will work on IPv4 and IPv6 correctly","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/c205e2be76bf5672af36138ac62b69bc10971277"},{"sha":"e7af3ee9709a7b7ce5373601f571f94fc4aa5fc9","author":{"email":"394b68c3cbfa7a7bebc2d94f7fb338fe95e57ca8@pega.com","name":"ChristopherDancy"},"message":"[#4658] Fix encoding of pom.xml file\n\nMotivation:\n\ntransport-native-epoll has its pom.xml encoding attribute set to ISO-8859-15. Because\nof this gradle, and other dependency management systems, can't correctly resolve this\nlibrary from wherever it happens to be published.\n\nModifications:\n\nnetty/transport-native-epoll/pom.xml had its xml encoding changed to UTF-9\n\nResult:\n\nGradle, and other dependency management systems, will now be able to correctly resolve this module.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/e7af3ee9709a7b7ce5373601f571f94fc4aa5fc9"},{"sha":"e578134b5710a4d57027d0d7a1796e12423d0b44","author":{"email":"a8c456a6b54fc41d6e961143bac21b6e0910a8a8@apple.com","name":"Scott Mitchell"},"message":"Unpooled and Wrapped Buffer Leak\n\nMotivation:\nThere are a few buffer leaks related to how Unpooled.wrapped and Base64.encode is used.\n\nModifications:\n- Fix usages of Bas64.encode to correct leaks\n- Clarify interface of Unpooled.wrapped* to ensure reference count ownership is clearly defined.\n\nResult:\nReference count code is more clearly defined and less leaks are possible.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/e578134b5710a4d57027d0d7a1796e12423d0b44"},{"sha":"1bee71fb1c2066035a6afcba151a1515338d0db9","author":{"email":"727f5a73bc32bd3fe5405dc1d53b82e9d7f8c87b@gatling.io","name":"Stephane Landelle"},"message":"Fix PlatformDependent.newAtomic*FieldUpdater type safety\n\nMotivation:\n\n* newAtomicIntegerFieldUpdater and newAtomicLongFieldUpdater take a\nclass<?> so they're too lax\n* newAtomicReferenceFieldUpdater takes a Class<U> so it's too strict\nand can only be passe a rawtype parameter when dealing w/ generic\nclasses\n\nModifications:\n\nTake a Class<? super T> parameter instead.\n\nResult:\n\nBetter type safety and generics support.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/1bee71fb1c2066035a6afcba151a1515338d0db9"},{"sha":"0c733e14256715e64003a47aa75083c47c781208","author":{"email":"8149d0b9e9c9f28143a3da312a20897ff30b042f@gmail.com","name":"fu.jian"},"message":"[#2363] Correctly null out SelectionKey[] when selectAgain\n\nMotivation:\n\nThe prefix fix of #2363 did not correctly handle the case when selectAgain is true and so missed to null out entries.\n\nModifications:\n\nMove the i++ from end of loop to beginning of loop\n\nResult:\n\nEntries in the array will be null out so allow to have these GC'ed once the Channel close","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/0c733e14256715e64003a47aa75083c47c781208"},{"sha":"07d0bcab8cdaa8f4d9ebc1bcc5c1ca4b2f765a8b","author":{"email":"727f5a73bc32bd3fe5405dc1d53b82e9d7f8c87b@gatling.io","name":"Stephane Landelle"},"message":"Fix deprecated Maven expressions usage\n\nMotivation:\n\nParent pom.xml uses deprecated maven expressions, such as `${groupId}`\nwhich should be ${project.groupId}.\nThis causes tons of warnings on every module in the build.\n\nModifications:\n\nUse up to date syntax.\n\nResult:\n\nNo more maven warnings.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/07d0bcab8cdaa8f4d9ebc1bcc5c1ca4b2f765a8b"},{"sha":"b4be040f30a30b8f30d936838e3c25d7812311af","author":{"email":"727f5a73bc32bd3fe5405dc1d53b82e9d7f8c87b@gatling.io","name":"Stephane Landelle"},"message":"Introduce DnsCache API + DnsResolver extensibility\n\nMotivation:\nCaching is currently nested in DnsResolver.\nIt should also be possible to extend DnsResolver to ba able to pass a different cache on each resolution attemp.\n\nModifications:\n\n* Introduce DnsCache, NoopDnsCache and DefaultDnsCache. The latter contains all the current caching logic that was extracted.\n* Introduce protected versions of doResolve and doResolveAll that can be used as extension points to build resolvers that bypass the main cache and use a different one on each resolution.\n\nResult:\n\nIsolated caching logic. Better extensibility.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/b4be040f30a30b8f30d936838e3c25d7812311af"},{"sha":"751ed6cc94cb4db502144aa28cf9de339ea20cf4","author":{"email":"28ee1748f767fb3d6cbcefc6a52697fa889080fa@gmail.com","name":"Xiaoyan Lin"},"message":"Avoid unnecessary boxing/unboxing\n\nMotivation:\n\nBoxing/unboxing can be avoided.\n\nModifications:\n\nUse parseInt/parseLong to avoid unnecessary boxing/unboxing.\n\nResult:\n\nRemove unnecessary boxing/unboxing.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/751ed6cc94cb4db502144aa28cf9de339ea20cf4"},{"sha":"5c05629da1bc9022a053a7dce697a1b33b81bfd4","author":{"email":"1eea5ed4e149b5f4450aa7727c6044d6224baade@gmail.com","name":"Fernando van Loenhout"},"message":"Fix issue #4676\n\nFixed spelling mistake at EmbeddedChannel#readOutbound()","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/5c05629da1bc9022a053a7dce697a1b33b81bfd4"},{"sha":"6fe0db4001ebb9801705f6f3ca8911ff5fd5fe1e","author":{"email":"28ee1748f767fb3d6cbcefc6a52697fa889080fa@gmail.com","name":"Xiaoyan Lin"},"message":"Fix IndexOutOfBoundsException for CompositeByteBuf #4679\n\nMotivation:\n\nModifications:\n\nUse the correct start index\n\nResult:\n\nFixes #4679","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/6fe0db4001ebb9801705f6f3ca8911ff5fd5fe1e"},{"sha":"9ae155d25701591697dfe8b47d4b4b592807531f","author":{"email":"28ee1748f767fb3d6cbcefc6a52697fa889080fa@gmail.com","name":"Xiaoyan Lin"},"message":"Fix InternalAttribute.equals\n\nMotivation:\n\nInternalAttribute doesn't extend Attribute, but its equals only returns true when it compares with an Attribute. So it will return false when comparing with itself.\n\nModifications:\n\nMake sure InternalAttribute return false for non InternalAttribute objects.\n\nResult:\n\nInternalAttribute's equals works correctly.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/9ae155d25701591697dfe8b47d4b4b592807531f"},{"sha":"da01b1daec1d015deba08af8b2df5c272d719c43","author":{"email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com","name":"Norman Maurer"},"message":"Decryption failed or bad mac record in Android 5.0\n\nMotivation:\n\nAndroid 5.0 (API version 21) has a bug which not correctly set the bytesConsumed of SSLEngineResult when HandshakeStatus is FINISHED.  Because of this we need to special handle the status and so workaround the Android bug.\n\nModifications:\n\n- Break the unwrap for (;;) loop when HandshakeStatus is FINISHED and bytesConsumed == 0 && bytesProduced == 0.\n\nResult:\n\nSslHandler works with all known version of Android.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/da01b1daec1d015deba08af8b2df5c272d719c43"},{"sha":"f41aa306e9d48cb717f57df468c5631c688a7c79","author":{"email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com","name":"Norman Maurer"},"message":"Remove multiple calls to recordLeakNonRefCountingOperation() in AdvancedLeakAwareByteBuf.forEachByteDesc\n\nMotivation:\n\nAdvancedLeakAwareByteBuf.forEachByteDesc(...) called recordLeakNonRefCountingOperation() two times which resulted in incorrect leak detection reports.\n\nModifications:\n\nRemove duplicated call to recordLeakNonRefCountingOperation()\n\nResult:\n\nCorrect leak detection results","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/f41aa306e9d48cb717f57df468c5631c688a7c79"},{"sha":"45674baf3e02239a967e4db8eded75f521df8af4","author":{"email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com","name":"Norman Maurer"},"message":"Correctly report *LE operations when advanced leak detection is used.\n\nMotivation:\n\nWe missed reporting *LE operations when AdvancedLeakAwareByteBuf was used. This could lead to incomplete access reports.\n\nModifications:\n\nCorrectly record access for *LE operations.\n\nResult:\n\nCorrect leak reports.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/45674baf3e02239a967e4db8eded75f521df8af4"},{"sha":"4d854cc1496ab3397cad543e0a0557efe1106f0c","author":{"email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com","name":"Norman Maurer"},"message":"Allow to change if EmbeddedChannel should handle close() and disconnect() different.\n\nMotivation:\n\nAt the moment EmbeddedChannel always handle close() and disconnect() the same way which also means that ChannelOutboundHandler.disconnect(...) will never called. We should allow to specify if these are handle different or not to make the use of EmbeddedChannel more flexible.\n\nModifications:\n\nAdd 2 other constructors which allow to specify if disconnect / close are handled the same way or differently.\n\nResult:\n\nMore flexible usage of EmbeddedChannel possible.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/4d854cc1496ab3397cad543e0a0557efe1106f0c"},{"sha":"3c5abaa39aa434ac39260164d2e71fda23998bc3","author":{"email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com","name":"Norman Maurer"},"message":"Correctly handle non handshake commands when using SniHandler\n\nMotivation:\n\nAs we can only handle handshake commands to parse SNI we should try to skip alert and change cipher spec commands a few times before we fallback to use a default SslContext.\n\nModifications:\n\n- Use default SslContext if no application data command was received\n- Use default SslContext if after 4 commands we not received a handshake command\n- Simplify code\n- Eliminate multiple volatile fields\n- Rename SslConstants to SslUtils\n- Share code between SslHandler and SniHandler by moving stuff to SslUtils\n\nResult:\n\nCorrect handling of non handshake commands and cleaner code.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/3c5abaa39aa434ac39260164d2e71fda23998bc3"},{"sha":"8b123a554608aa677d1fe30af47776bf6197cd2c","author":{"email":"330e4303411e1fbd4ff825c4416851d277ea7a5f@apple.com","name":"Norman Maurer"},"message":"Fix AbstractChannelTest errors caused by incorrect mocking\n\nMotivation:\n\nIn AbstractChannelTest we not correctly mocked some methods which could lead to test errors. That said it only showed up here when running from the IDE and not from the cmdLine.\n\nModifications:\n\nMock methods that are needed for the test\n\nResult:\n\nTest pass in the IDE as well.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/8b123a554608aa677d1fe30af47776bf6197cd2c"},{"sha":"f7c83c8565a695e226cac118fb353e161c90a7ea","author":{"email":"727f5a73bc32bd3fe5405dc1d53b82e9d7f8c87b@gatling.io","name":"Stephane Landelle"},"message":"Don't enforce JZlibDecoder on JDK7+, close #4707\n\nMotivation:\n\n`JdkZlibDecoder` is available since Netty 4.0.8 and works with JDK7+.\nHowever, `io.netty.noJdkZlibDecoder` System prop evaluation always defaults to\ntrue, causing Netty to always use JZLib when decompressing on the\nclient side when the property insn't explictly set to `false`.\n\nModifications:\n\nDefault to `false` instead of `true` when JDK7+.\n\nResult:\n\nJZLib optional as expected on JDK7+.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/f7c83c8565a695e226cac118fb353e161c90a7ea"},{"sha":"7dba13f276953a983165898206808b14ca0827b6","author":{"email":"a8c456a6b54fc41d6e961143bac21b6e0910a8a8@apple.com","name":"Scott Mitchell"},"message":"HttpConversionUtil remove throws from method signature\n\nMotivation:\nHttpConversionUtil.toHttp2Headers currently has a throws Exception as part of the signature. This comes from the signature of ByteProcessor.process, but is not necessary because the ByteProcessor used does not throw.\n\nModifications:\n- Remove throws Exception from the signature of HttpConversionUtil.toHttp2Headers.\n\nResult:\nHttpConversionUtil.toHttp2Headers interface does not propagate a throws Exception when it is used.","distinct":false,"url":"https://api.github.com/repos/netty/netty/commits/7dba13f276953a983165898206808b14ca0827b6"}]}