--- old/src/java.base/unix/classes/java/net/PlainDatagramSocketImpl.java 2017-10-12 14:12:51.177345803 +0530 +++ new/src/java.base/unix/classes/java/net/PlainDatagramSocketImpl.java 2017-10-12 14:12:51.057322139 +0530 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -85,10 +85,18 @@ protected Set> supportedOptions() { HashSet> options = new HashSet<>(super.supportedOptions()); - options.addAll(extendedOptions.options()); + addExtSocketOptions(extendedOptions.options(), options); return options; } + private void addExtSocketOptions(Set> extOptions, + Set> options) { + extOptions.stream().filter((option) -> (!option.name(). + equals("TCP_QUICKACK"))).forEachOrdered((option) -> { + options.add(option); + }); // TCP_QUICKACK is applicable for TCP Sockets only. + } + protected void socketSetOption(int opt, Object val) throws SocketException { if (opt == SocketOptions.SO_REUSEPORT && !supportedOptions().contains(StandardSocketOptions.SO_REUSEPORT)) {