CloudStack uses a significant amount of third party software. As part of the move to ASF there is a certain set of licenses that are compatible with ASF policy. We need to make sure that every dependency we have is in that set. If it's not we have to remove it.
As part of this initiative we are in the process of removing third party dependencies from Citrix code base. We have listed JnetPcap package is one among that and it is a part of LGPLv3 (license). So we are planning to remove the same from our source code. I have checked out my private branch from ASF master to perform this task. I have noticed, that we are importing the classes of 'jnetpcap' in these java files: DhcpSnooperImpl.java DhcpPacketParser.java HttpTemplateDownloader.java I am not seeing this has been used extensively in "HttpTemplateDownloader.java" except for the import section. So I have removed it very easily. But for the other two, I have noticed, many other classes of jnetpcap have been used in different places. For an example in DhcpSnooperImpl.java: import org.jnetpcap.Pcap; import org.jnetpcap.PcapBpfProgram; import org.jnetpcap.PcapIf; import org.jnetpcap.packet.PcapPacket; import org.jnetpcap.packet.PcapPacketHandler; import org.jnetpcap.protocol.tcpip.Udp; ......................... ......................... ......................... PcapBpfProgram program = new PcapBpfProgram(); String expr = "dst port 68 or 67"; int optimize = 0; int netmask = 0xFFFFFF00; if (pcap.compile(program, expr, optimize, netmask) != Pcap.OK) { s_logger.debug("Pcap: can't compile BPF"); return null; } ................................... So on.......... ................................. Also, I have noticed "DhcpListener" in "DhcpProtocolParserServer.java" and "DhcpSnooperImpl.java". Could anyone please elaborate how do you say "DhcpListener" is deprecated? What would you mean by that?. I was thinking it is a separate java file, we have to remove it but it seems to be my understanding is incorrect. I was trying to execute a build for each and every changes but facing some Java compilation issues most of the time. Could anyone let me know how to remove these dependencies from all the files and how to overcome this issue? I am planning to send a patch to ASF once I am done with the final validation for "JnetPcap"... Thanks, Pradeep.S