Changeset 5896
- Timestamp:
- 03/29/11 13:26:26 (2 years ago)
- Location:
- packet-manipulator/trunk/deps/scapy-patches
- Files:
-
- 3 modified
Legend:
- Unmodified
- Added
- Removed
-
packet-manipulator/trunk/deps/scapy-patches/dns.patch
r5525 r5896 1 diff -r 7a211173d33fscapy/layers/dns.py2 --- a/scapy/layers/dns.py Mon Jan 11 17:59:00 2010+01003 +++ b/scapy/layers/dns.py T hu Feb 11 15:03:04 2010 +01004 @@ -1 0,14 +10,23 @@1 diff -r 2c99fb37d83d scapy/layers/dns.py 2 --- a/scapy/layers/dns.py Fri Mar 11 19:37:19 2011 +0100 3 +++ b/scapy/layers/dns.py Tue Mar 29 15:23:05 2011 +0200 4 @@ -14,6 +14,23 @@ 5 5 from scapy.ansmachine import * 6 6 from scapy.layers.inet import UDP … … 13 13 + 14 14 +def convert(x): 15 + x = [k[:63] for k in x.split(".")] # Truncate chunks that cannont be encoded (more than 63 bytes..) 15 + if x == ".": 16 + return "\x00" 17 + 18 + x = [k[:63] for k in x.split(".")] # Truncate chunks that cannot be encoded (more than 63 bytes..) 16 19 + x = map(lambda y: chr(len(y))+y, x) 17 20 + x = "".join(x) … … 21 24 + 22 25 class DNSStrField(StrField): 26 27 def h2i(self, pkt, x): 28 @@ -22,15 +39,7 @@ 29 return x 30 23 31 def i2m(self, pkt, x): 24 - x = [k[:63] for k in x.split(".")] # Truncate chunks that cannont be encoded (more than 63 bytes..) 32 - if x == ".": 33 - return "\x00" 34 - 35 - x = [k[:63] for k in x.split(".")] # Truncate chunks that cannot be encoded (more than 63 bytes..) 25 36 - x = map(lambda y: chr(len(y))+y, x) 26 37 - x = "".join(x) … … 29 40 - return x 30 41 + return convert(x) 42 31 43 def getfield(self, pkt, s): 32 44 n = "" 33 while 1: 34 @@ -45,7 +54,7 @@ 45 @@ -63,7 +72,7 @@ 35 46 x = x.payload 36 47 i += 1 … … 41 52 if x is None: 42 53 x = self._countRR(pkt) 43 @@ - 54,10 +63,12 @@54 @@ -72,10 +81,12 @@ 44 55 if x is None: 45 56 x = self._countRR(pkt) … … 56 67 jpath = [p] 57 68 while 1: 58 @@ - 67,26 +78,31 @@69 @@ -85,26 +96,31 @@ 59 70 l = ord(s[p]) 60 71 p += 1 … … 91 102 class DNSRRField(StrField): 92 103 holds_packets=1 93 @@ - 98,18 +114,20 @@104 @@ -116,18 +132,20 @@ 94 105 if x is None: 95 106 return "" … … 116 127 def getfield(self, pkt, s): 117 128 if type(s) is tuple : 118 @@ -1 23,28 +141,28 @@129 @@ -141,28 +159,28 @@ 119 130 return s,"" 120 131 while c: … … 152 163 class RDataField(StrLenField): 153 164 def m2i(self, pkt, s): 154 @@ -1 55,7 +173,7 @@165 @@ -173,7 +191,7 @@ 155 166 family = socket.AF_INET6 156 167 elif pkt.type == 12: … … 161 172 return s 162 173 def i2m(self, pkt, s): 163 @@ -1 65,26 +183,35 @@174 @@ -183,26 +201,35 @@ 164 175 elif pkt.type == 28: 165 176 if s: … … 206 217 class DNS(Packet): 207 218 name = "DNS" 208 @@ -2 10,7 +237,7 @@219 @@ -228,7 +255,7 @@ 209 220 and self.id == other.id 210 221 and self.qr == 1 … … 215 226 type = ["Qry","Ans"][self.qr] 216 227 name = "" 217 @@ -2 24,24 +251,152 @@228 @@ -242,24 +269,152 @@ 218 229 name = ' "%s"' % self.qd.qname 219 230 return 'DNS %s%s ' % (type, name) … … 370 381 class DNSRR(Packet): 371 382 name = "DNS Resource Record" 372 @@ -2 51,7 +406,9 @@383 @@ -269,7 +424,9 @@ 373 384 ShortEnumField("rclass", 1, dnsclasses), 374 385 IntField("ttl", 0), … … 381 392 bind_layers( UDP, DNS, dport=53) 382 393 bind_layers( UDP, DNS, sport=53) 383 @@ -2 75,9 +432,7 @@394 @@ -293,9 +450,7 @@ 384 395 return r.getlayer(DNS).rcode 385 396 else: … … 392 403 @conf.commands.register 393 404 def dyndns_del(nameserver, name, type="ALL", ttl=10): 394 @@ - 297,7 +452,7 @@405 @@ -315,7 +470,7 @@ 395 406 return r.getlayer(DNS).rcode 396 407 else: … … 401 412 class DNS_am(AnsweringMachine): 402 413 function_name="dns_spoof" 403 @@ -3 12,7 +467,7 @@414 @@ -330,7 +485,7 @@ 404 415 405 416 def is_request(self, req): … … 410 421 ip = req.getlayer(IP) 411 422 dns = req.getlayer(DNS) 412 @@ -3 22,4 +477,3 @@423 @@ -340,4 +495,3 @@ 413 424 an=DNSRR(rrname=dns.qd.qname, ttl=10, rdata=rdata)) 414 425 return resp -
packet-manipulator/trunk/deps/scapy-patches/ppp-datalink.patch
r5525 r5896 1 diff -r 7a211173d33fscapy/layers/ppp.py2 --- a/scapy/layers/ppp.py Mon Jan 11 17:59:00 2010+01003 +++ b/scapy/layers/ppp.py T hu Feb 11 14:05:20 2010 +01004 @@ -3 39,3 +339,5 @@1 diff -r 2c99fb37d83d scapy/layers/ppp.py 2 --- a/scapy/layers/ppp.py Fri Mar 11 19:37:19 2011 +0100 3 +++ b/scapy/layers/ppp.py Tue Mar 29 15:24:12 2011 +0200 4 @@ -345,3 +345,5 @@ 5 5 bind_layers( PPP, PPP_ECP, proto=0x8053) 6 6 bind_layers( Ether, PPP_IPCP, type=0x8021) -
packet-manipulator/trunk/deps/scapy-patches/smb.patch
r5525 r5896 1 diff -r 7a211173d33fscapy/fields.py2 --- a/scapy/fields.py Mon Jan 11 17:59:00 2010+01003 +++ b/scapy/fields.py T hu Feb 11 15:02:28 2010 +01004 @@ -27 1,7 +271,7 @@1 diff -r 2c99fb37d83d scapy/fields.py 2 --- a/scapy/fields.py Fri Mar 11 19:37:19 2011 +0100 3 +++ b/scapy/fields.py Tue Mar 29 15:25:11 2011 +0200 4 @@ -278,7 +278,7 @@ 5 5 6 6 class ShortField(Field): … … 11 11 class LEShortField(Field): 12 12 def __init__(self, name, default): 13 @@ -4 78,8 +478,8 @@13 @@ -485,8 +485,8 @@ 14 14 return rr 15 15 … … 22 22 l = self.length_from(pkt)/2 23 23 if x is None: 24 @@ -49 1,6 +491,7 @@24 @@ -498,6 +498,7 @@ 25 25 return x 26 26 def m2i(self, pkt, x): … … 30 30 31 31 class StrLenField(StrField): 32 @@ -5 85,6 +586,27 @@32 @@ -592,6 +593,27 @@ 33 33 def randval(self): 34 34 return RandTermString(RandNum(0,1200),"\x00") … … 58 58 def __init__(self, name, default, stop, additionnal=0): 59 59 Field.__init__(self, name, default) 60 diff -r 7a211173d33fscapy/layers/netbios.py61 --- a/scapy/layers/netbios.py Mon Jan 11 17:59:00 2010+010062 +++ b/scapy/layers/netbios.py T hu Feb 11 15:02:28 2010 +010063 @@ - 199,8 +199,22 @@60 diff -r 2c99fb37d83d scapy/layers/netbios.py 61 --- a/scapy/layers/netbios.py Fri Mar 11 19:37:19 2011 +0100 62 +++ b/scapy/layers/netbios.py Tue Mar 29 15:25:11 2011 +0200 63 @@ -205,8 +205,22 @@ 64 64 class NBTSession(Packet): 65 65 name="NBT Session Packet" … … 86 86 bind_layers( UDP, NBNSQueryRequest, dport=137) 87 87 bind_layers( UDP, NBNSRequest, dport=137) 88 @@ -2 14,3 +228,6 @@88 @@ -220,3 +234,6 @@ 89 89 bind_layers( UDP, NBNSWackResponse, sport=137) 90 90 bind_layers( UDP, NBTDatagram, dport=138) … … 93 93 +bind_layers( TCP, NBTSession, dport=445) 94 94 +bind_layers( TCP, NBTSession, sport=445) 95 diff -r 7a211173d33fscapy/layers/smb.py96 --- a/scapy/layers/smb.py Mon Jan 11 17:59:00 2010+010097 +++ b/scapy/layers/smb.py T hu Feb 11 15:02:28 2010 +010098 @@ - 7,6 +7,280 @@95 diff -r 2c99fb37d83d scapy/layers/smb.py 96 --- a/scapy/layers/smb.py Fri Mar 11 19:37:19 2011 +0100 97 +++ b/scapy/layers/smb.py Tue Mar 29 15:25:11 2011 +0200 98 @@ -11,6 +11,280 @@ 99 99 from scapy.fields import * 100 100 from scapy.layers.netbios import NBTSession … … 377 377 # SMB NetLogon Response Header 378 378 class SMBNetlogon_Protocol_Response_Header(Packet): 379 @@ -1 06,32 +380,6 @@379 @@ -110,32 +384,6 @@ 380 380 StrNullField("ServerName","WIN"), 381 381 LEShortField("LM20Token", 0xffff)] … … 410 410 class SMBNegociate_Protocol_Response_Advanced_Security(Packet): 411 411 name="SMBNegociate Protocol Response Advanced Security" 412 @@ -21 1,8 +459,8 @@412 @@ -215,8 +463,8 @@ 413 413 ByteField("EncryptionKeyLength",8), 414 414 LEShortField("ByteCount",24), … … 421 421 # SMBNegociate Protocol Response No Security No Key 422 422 class SMBNegociate_Protocol_Response_No_Security_No_Key(Packet): 423 @@ -29 0,10 +538,11 @@423 @@ -294,10 +542,11 @@ 424 424 BitField("Reserved5",0,5), 425 425 LEShortField("ByteCount",35), … … 437 437 ByteEnumField("AndXCommand2",0xFF,{0xFF:"SMB_COM_NONE"}), 438 438 ByteField("Reserved6",0), 439 @@ -30 2,7 +551,7 @@439 @@ -306,7 +555,7 @@ 440 440 LEShortField("PasswordLength",0x1), 441 441 LEShortField("ByteCount2",18), … … 446 446 447 447 # Session Setup AndX Response 448 @@ -3 28,9 +577,9 @@448 @@ -332,9 +581,9 @@ 449 449 LEShortField("AndXOffset",66), 450 450 LEShortField("Action",0), … … 459 459 ByteEnumField("AndXCommand2",0xFF,{0xFF:"SMB_COM_NONE"}), 460 460 ByteField("Reserved3",0), 461 @@ -34 0,11 +589,3 @@461 @@ -344,11 +593,3 @@ 462 462 StrNullField("Service","IPC"), 463 463 StrNullField("NativeFileSystem","")]
