Sha256: 9e7a48d74a1e31de212110beea51b3fa3d2ede34664d6954fe277ee8bcf0e780

Contents?: true

Size: 699 Bytes

Versions: 2

Compression:

Stored size: 699 Bytes

Contents

# -*- coding: binary -*-
##
# $Id: clsid.rb 15548 2012-06-29 06:08:20Z rapid7 $
# Version: $Revision: 15548 $
##

##
# Rex::OLE - an OLE implementation
# written in 2010 by Joshua J. Drake <jduck [at] metasploit.com>
##


module Rex
module OLE

class CLSID

	def initialize(buf=nil)
		@buf = buf
		@buf ||= "\x00" * 16
	end

	def pack
		@buf
	end

	def to_s
		ret = ""
		ret << "%08x" % Util.get32(@buf, 0)
		ret << "-"
		ret << "%04x" % Util.get16(@buf, 4)
		ret << "-"
		ret << "%04x" % Util.get16(@buf, 6)
		ret << "-"
		idx = 0
		last8 = @buf[8,8]
		last8.unpack('C*').each { |byte|
			ret << [byte].pack('C').unpack('H*')[0]
			ret << "-" if (idx == 1)
			idx += 1
		}
		ret
	end

end

end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
librex-0.0.68 lib/rex/ole/clsid.rb
librex-0.0.66 lib/rex/ole/clsid.rb