Changeset 5603
- Timestamp:
- 07/26/08 13:15:35 (3 months ago)
- Files:
-
- framework3/trunk/lib/rex/compat.rb (modified) (1 diff)
- framework3/trunk/lib/rex/socket/ip.rb (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
framework3/trunk/lib/rex/compat.rb
r5334 r5603 30 30 # Platform detection 31 31 # 32 33 @@is_windows = @@is_macosx = @@is_linux = @@is_bsdi = @@is_freebsd = @@is_netbsd = @@is_openbsd = false 34 32 35 def self.is_windows 33 (RUBY_PLATFORM =~ /mswin32/) ? true : false 36 return @@is_windows if @@is_windows 37 @@is_windows = (RUBY_PLATFORM =~ /mswin32/) ? true : false 34 38 end 35 39 36 40 def self.is_macosx 37 (RUBY_PLATFORM =~ /darwin/) ? true : false 41 return @@is_macosx if @@is_macosx 42 @@is_macosx = (RUBY_PLATFORM =~ /darwin/) ? true : false 38 43 end 39 44 40 45 def self.is_linux 41 (RUBY_PLATFORM =~ /linux/) ? true : false 42 end 43 46 return @@is_linux if @@is_linux 47 @@is_linux = (RUBY_PLATFORM =~ /linux/) ? true : false 48 end 49 50 def self.is_bsdi 51 return @@is_bsdi if @@is_bsdi 52 @@is_bsdi = (RUBY_PLATFORM =~ /bsdi/i) ? true : false 53 end 54 55 def self.is_netbsd 56 return @@is_netbsd if @@is_netbsd 57 @@is_netbsd = (RUBY_PLATFORM =~ /netbsd/) ? true : false 58 end 44 59 45 60 def self.is_freebsd 46 (RUBY_PLATFORM =~ /freebsd/) ? true : false 61 return @@is_freebsd if @@is_freebsd 62 @@is_freebsd = (RUBY_PLATFORM =~ /freebsd/) ? true : false 63 end 64 65 def self.is_openbsd 66 return @@is_openbsd if @@is_openbsd 67 @@is_openbsd = (RUBY_PLATFORM =~ /openbsd/) ? true : false 47 68 end 48 69 framework3/trunk/lib/rex/socket/ip.rb
r5596 r5603 89 89 def sendto(gram, peerhost, flags = 0) 90 90 dest = ::Socket.pack_sockaddr_in(0, peerhost) 91 92 # Some BSDs require byteswap for len and offset 93 if( 94 Rex::Compat.is_freebsd or 95 Rex::Compat.is_netbsd or 96 Rex::Compat.is_bsdi or 97 Rex::Compat.is_macosx 98 ) 99 dgram=dgram.dup 100 dgram[2,2]=dgram[2,2].unpack("n").pack("s") 101 dgram[6,2]=dgram[6,2].unpack("n").pack("s") 102 end 103 91 104 send(gram, flags, dest) 92 105 end
