md5sum 1.0.0 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 387f14acfa969ce14d93b02fb5d77f4eb35c5fb3
4
+ data.tar.gz: 896753e8900454a68e268b4312f53c0edf7b78ce
5
+ SHA512:
6
+ metadata.gz: 6c12d29a5497017a714c8147e18c0753c5973baff8de9755f791874aaeacf7adb671d3b3d824efc7912f85a7edf2df4f84786fa454c3a13d08a8ce4c9a408eb9
7
+ data.tar.gz: 816241b3a727e330fbca4ad7141a957e58cc1db70924ddd44d65602f41ac176cded8d105149b091021c65d07001940caf9fa75f8add7020464374d1d8359e936
data/lib/md5sum/md5sum.rb CHANGED
@@ -1,41 +1,51 @@
1
1
  #!/System/Executables/ruby -w
2
- # Encoding: ASCII-8BIT
3
- # ====================================================================== #
2
+ # Encoding: ISO-8859-1
3
+ # =========================================================================== #
4
+ # === Md5sum
5
+ #
6
+ # This small class will keep the md5sum.
7
+ #
4
8
  # require 'md5sum'
5
- # ====================================================================== #
6
- require 'digest/md5'
9
+ # =========================================================================== #
10
+ begin
11
+ require 'digest/md5'
12
+ rescue Exception => error
13
+ puts error
14
+ end
15
+
16
+ require 'alias_e'
7
17
 
8
18
  class Md5sum
9
19
 
10
20
  N = "\n"
11
21
 
22
+ include AliasE
23
+
12
24
  # ========================================================================= #
13
25
  # === initialize
14
26
  # ========================================================================= #
15
27
  def initialize(
16
- input = ARGV,
28
+ input = ARGV,
17
29
  run_already = true
18
30
  )
31
+ case run_already
32
+ when false, :dont_run_yet, :do_not_run_yet
33
+ run_already = false
34
+ end
19
35
  set_input(input)
20
- run_it if run_already
36
+ run if run_already
21
37
  end
22
38
 
23
39
  # ========================================================================= #
24
40
  # === set_input
25
41
  # ========================================================================= #
26
- def set_input(i)
27
- @input = i.to_s.dup # Assign to input.
42
+ def set_input(i = '')
43
+ i = '' if i.nil?
44
+ i = i.first if i.is_a? Array
45
+ i = i.to_s.dup
46
+ @input = i # Assign to input.
28
47
  end
29
48
 
30
- # ========================================================================= #
31
- # === run_it
32
- # Will return the md5sum.
33
- # ========================================================================= #
34
- def run_it(shall_we_show_the_result = true)
35
- set_result
36
- show_result if shall_we_show_the_result
37
- end; alias run run_it # Run tag.
38
-
39
49
  # ========================================================================= #
40
50
  # === show_result
41
51
  # ========================================================================= #
@@ -43,33 +53,28 @@ class Md5sum
43
53
  e @result unless @input.nil? # must pass 1 arg
44
54
  end
45
55
 
46
- # ========================================================================= #
47
- # === return_md5sum
48
- # Example results:
49
- # 1897a33110ebfee800fb9562711cac02
50
- # ========================================================================= #
51
- def return_md5sum(input)
52
- if input.is_a? Array
53
- input.each { |file|
54
- digest = Digest::MD5.hexdigest(File.read(file))
55
- return digest
56
- }
57
- else
58
- return Digest::MD5.hexdigest(File.read(input))
59
- end
60
- end
61
-
62
56
  # ========================================================================= #
63
57
  # === reverse_md5
58
+ #
64
59
  # This reverses a md5 hash, by using making use of the Digest module.
65
60
  # reverse_md5 '5f4dcc3b5aa765d61d8327deb882cf99'
66
61
  # ========================================================================= #
67
- def reverse_md5(md5hash = '5f4dcc3b5aa765d61d8327deb882cf99')
62
+ def reverse_md5(md5hash = '5f4dcc3b5aa765d61d8327deb882cf99')
68
63
  require 'digest/md5reverse'
69
- reverse_hexdigest = Digest::MD5Reverse.to_reverse_hexdigest(md5hash)
64
+ reverse_hexdigest = Digest::MD5Reverse.to_reverse_hexdigest(md5hash.to_s)
70
65
  e N+"\tmd5hash word [#{reverse_hexdigest}] "+N # md5hash word [password]
71
66
  end
72
67
 
68
+ # ========================================================================= #
69
+ # === Md5sum.reverse_md5
70
+ #
71
+ # Usage examples:
72
+ # require 'md5sum'; Md5sum.reverse_md5("/Depot/jjj/lalalala.flv")
73
+ # ========================================================================= #
74
+ def self.reverse_md5(i)
75
+ Md5sum.new(nil,false).reverse_md5(i)
76
+ end
77
+
73
78
  # ========================================================================= #
74
79
  # === set_result
75
80
  # ========================================================================= #
@@ -77,15 +82,69 @@ class Md5sum
77
82
  @result = return_md5sum(@input)
78
83
  end
79
84
 
80
- alias e puts
85
+ # ========================================================================= #
86
+ # === Md5sum[]
87
+ # ========================================================================= #
88
+ def self.[](i)
89
+ Md5sum.new(i)
90
+ end
91
+
92
+ # ========================================================================= #
93
+ # === file?
94
+ # ========================================================================= #
95
+ def file?
96
+ @input
97
+ end
98
+
99
+ # ========================================================================= #
100
+ # === return_md5sum
101
+ #
102
+ # Example results:
103
+ # 1897a33110ebfee800fb9562711cac02
104
+ # ========================================================================= #
105
+ def return_md5sum(input = @input)
106
+ if input.is_a? Array
107
+ input.each { |file|
108
+ if File.file? file
109
+ dataset = File.read(file)
110
+ else
111
+ dataset = file
112
+ end
113
+ digest = Digest::MD5.hexdigest(dataset)
114
+ return digest
115
+ }
116
+ else
117
+ if File.file? input
118
+ dataset = File.read(input)
119
+ else
120
+ dataset = input
121
+ end
122
+ return Digest::MD5.hexdigest(dataset)
123
+ end
124
+ end; alias md5sum? return_md5sum # === md5sum?
125
+
126
+ # ========================================================================= #
127
+ # === run (run tag)
128
+ #
129
+ # Will return the md5sum.
130
+ # ========================================================================= #
131
+ def run(shall_we_show_the_result = false)
132
+ case shall_we_show_the_result
133
+ when :do_show_the_result
134
+ shall_we_show_the_result = true
135
+ end
136
+ set_result
137
+ show_result if shall_we_show_the_result
138
+ end
81
139
 
82
140
  end
83
141
 
84
142
  if __FILE__ == $PROGRAM_NAME
85
- _ = Md5sum.new(ARGV, false)
86
- # _.run_it
87
- _.reverse_md5 '61c12f4e84dc393aaa4849db9b78aa84'
88
- _.run
143
+ _ = Md5sum.new(ARGV, :do_not_run_yet)
144
+ unless File.exist?(_.file?)
145
+ _.reverse_md5 '61c12f4e84dc393aaa4849db9b78aa84'
146
+ end
147
+ _.run :do_show_the_result
89
148
  end
90
- # $RUBY_TOOLS/md5sum.rb RamonDekkersHightlight.avi
91
- # $RUBY_TOOLS/md5sum.rb
149
+ # rubymd5sum RamonDekkersHightlight.avi
150
+ # rubymd5sum
data/lib/md5sum.rb CHANGED
@@ -1,5 +1,3 @@
1
1
  # To load the whole of MD5SUM, do:
2
2
  # require 'md5sum'
3
- $: << File.dirname(__FILE__)
4
-
5
3
  require 'md5sum/md5sum.rb'
data/md5sum.gemspec CHANGED
@@ -5,32 +5,42 @@
5
5
  Gem::Specification.new { |s|
6
6
 
7
7
  s.name = 'md5sum'
8
- s.version = '1.0.0'
9
- s.date = '2012-07-19'
8
+ s.version = '1.0.6'
9
+ s.date = Time.now.strftime('%Y-%m-%d')
10
10
 
11
- s.summary = <<-EOF
11
+ DESCRIPTION = <<-EOF
12
+
13
+ A simple project to make it easier to calculate
14
+ md5sums.
15
+
16
+ Usage example is simple:
17
+
18
+ Md5sum.new('foobar')
19
+ Md5sum['foobar']
12
20
 
13
- This gem
14
21
  If you have specific suggestions to make this gem more useful
15
22
  for others, please drop me an email at:
23
+
16
24
  shevegen@gmail.com.
25
+
17
26
  Thank you.
18
27
 
19
28
  EOF
20
29
 
21
- s.description = <<-EOF
22
- A simple symbol to foo library.
23
- EOF
24
-
30
+ s.summary = DESCRIPTION
31
+ s.description = DESCRIPTION
32
+
25
33
  s.extra_rdoc_files = [
26
34
  "USAGE.rdoc"
27
35
  ]
28
36
 
29
- s.authors = ['Markus Heiler']
37
+ s.authors = ['Robert A. Heiler']
38
+ s.licenses = 'GPL-2.0'
30
39
  s.email = 'shevegen@gmail.com'
31
- s.files = Dir.glob('**/*')
40
+ s.files = Dir['**/*']
32
41
  s.homepage = 'http://rubygems.org/gems/md5sum'
33
- s.rubygems_version = '1.8.24'
34
- # s.add_dependency 'libxml' # add dependencies here.
35
42
 
36
- }
43
+ s.required_ruby_version = '>= 2.2.3'
44
+ s.rubygems_version = '2.5.1'
45
+
46
+ }
@@ -0,0 +1,5 @@
1
+ require 'pp'
2
+ require 'md5sum'
3
+
4
+ pp Md5sum.new('mahavishnuorchestra')
5
+ pp Md5sum['/Users/x/SRC/ruby/ruby-2.2.3.tar.xz']
metadata CHANGED
@@ -1,68 +1,68 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: md5sum
3
- version: !ruby/object:Gem::Version
4
- hash: 23
5
- prerelease:
6
- segments:
7
- - 1
8
- - 0
9
- - 0
10
- version: 1.0.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.6
11
5
  platform: ruby
12
- authors:
13
- - Markus Heiler
6
+ authors:
7
+ - Robert A. Heiler
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2012-07-19 00:00:00 Z
11
+ date: 2015-12-15 00:00:00.000000000 Z
19
12
  dependencies: []
13
+ description: |2+
14
+
15
+ A simple project to make it easier to calculate
16
+ md5sums.
17
+
18
+ Usage example is simple:
19
+
20
+ Md5sum.new('foobar')
21
+ Md5sum['foobar']
22
+
23
+ If you have specific suggestions to make this gem more useful
24
+ for others, please drop me an email at:
25
+
26
+ shevegen@gmail.com.
27
+
28
+ Thank you.
20
29
 
21
- description: " A simple symbol to foo library.\n"
22
30
  email: shevegen@gmail.com
23
31
  executables: []
24
-
25
32
  extensions: []
26
-
27
- extra_rdoc_files:
33
+ extra_rdoc_files:
28
34
  - USAGE.rdoc
29
- files:
30
- - lib/md5sum/md5sum.rb
31
- - lib/md5sum.rb
35
+ files:
32
36
  - USAGE.rdoc
37
+ - lib/md5sum.rb
38
+ - lib/md5sum/md5sum.rb
33
39
  - md5sum.gemspec
40
+ - test/testing_md5sum.rb
34
41
  homepage: http://rubygems.org/gems/md5sum
35
- licenses: []
36
-
42
+ licenses:
43
+ - GPL-2.0
44
+ metadata: {}
37
45
  post_install_message:
38
46
  rdoc_options: []
39
-
40
- require_paths:
47
+ require_paths:
41
48
  - lib
42
- required_ruby_version: !ruby/object:Gem::Requirement
43
- none: false
44
- requirements:
49
+ required_ruby_version: !ruby/object:Gem::Requirement
50
+ requirements:
45
51
  - - ">="
46
- - !ruby/object:Gem::Version
47
- hash: 3
48
- segments:
49
- - 0
50
- version: "0"
51
- required_rubygems_version: !ruby/object:Gem::Requirement
52
- none: false
53
- requirements:
52
+ - !ruby/object:Gem::Version
53
+ version: 2.2.3
54
+ required_rubygems_version: !ruby/object:Gem::Requirement
55
+ requirements:
54
56
  - - ">="
55
- - !ruby/object:Gem::Version
56
- hash: 3
57
- segments:
58
- - 0
59
- version: "0"
57
+ - !ruby/object:Gem::Version
58
+ version: '0'
60
59
  requirements: []
61
-
62
60
  rubyforge_project:
63
- rubygems_version: 1.8.24
61
+ rubygems_version: 2.5.1
64
62
  signing_key:
65
- specification_version: 3
66
- summary: "This gem If you have specific suggestions to make this gem more useful for others, please drop me an email at: shevegen@gmail.com. Thank you."
63
+ specification_version: 4
64
+ summary: 'A simple project to make it easier to calculate md5sums. Usage example
65
+ is simple: Md5sum.new(''foobar'') Md5sum[''foobar''] If you have specific suggestions
66
+ to make this gem more useful for others, please drop me an email at: shevegen@gmail.com. Thank
67
+ you.'
67
68
  test_files: []
68
-