1// 2// This file is part of the aMule Project. 3// 4// Copyright (c) 2003-2011 aMule Team ( admin@amule.org / http://www.amule.org ) 5// Copyright (c) 2002-2011 Merkur ( devs@emule-project.net / http://www.emule-project.net ) 6// 7// Any parts of this program derived from the xMule, lMule or eMule project, 8// or contributed by third-party developers are copyrighted by their 9// respective authors. 10// 11// This program is free software; you can redistribute it and/or modify 12// it under the terms of the GNU General Public License as published by 13// the Free Software Foundation; either version 2 of the License, or 14// (at your option) any later version. 15// 16// This program is distributed in the hope that it will be useful, 17// but WITHOUT ANY WARRANTY; without even the implied warranty of 18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19// GNU General Public License for more details. 20// 21// You should have received a copy of the GNU General Public License 22// along with this program; if not, write to the Free Software 23// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 24// 25 26#ifndef KAD2C2CUDP_H 27#define KAD2C2CUDP_H 28 29enum Ed2kUDPOpcodesForKademliaV2 { 30 OP_DIRECTCALLBACKREQ = 0x95 // <TCPPort 2><Userhash 16><ConnectionOptions 1> 31}; 32 33enum Kademlia2Opcodes { 34 KADEMLIA2_BOOTSTRAP_REQ = 0x01, 35 KADEMLIA2_BOOTSTRAP_RES = 0x09, 36 KADEMLIA2_HELLO_REQ = 0x11, 37 KADEMLIA2_HELLO_RES = 0x19, 38 KADEMLIA2_REQ = 0x21, 39 KADEMLIA2_HELLO_RES_ACK = 0x22, // <NodeID><uint8 tags> 40 KADEMLIA2_RES = 0x29, 41 KADEMLIA2_SEARCH_KEY_REQ = 0x33, 42 KADEMLIA2_SEARCH_SOURCE_REQ = 0x34, 43 KADEMLIA2_SEARCH_NOTES_REQ = 0x35, 44 KADEMLIA2_SEARCH_RES = 0x3B, 45 KADEMLIA2_PUBLISH_KEY_REQ = 0x43, 46 KADEMLIA2_PUBLISH_SOURCE_REQ = 0x44, 47 KADEMLIA2_PUBLISH_NOTES_REQ = 0x45, 48 KADEMLIA2_PUBLISH_RES = 0x4B, 49 KADEMLIA2_PUBLISH_RES_ACK = 0x4C, // (null) 50 KADEMLIA_FIREWALLED2_REQ = 0x53, // <TCPPORT (sender) [2]><userhash><connectoptions 1> 51 KADEMLIA2_PING = 0x60, // (null) 52 KADEMLIA2_PONG = 0x61, // (null) 53 KADEMLIA2_FIREWALLUDP = 0x62 // <errorcode [1]><UDPPort_Used [2]> 54}; 55 56#endif // KAD2C2CUDP_H 57