rex-random_identifier 0.1.6 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3c9571d3505cd046a46dd18a365270c8cac23425efd11982b1f13a4b5c7ccda5
4
- data.tar.gz: e576c1de9555bf1cdc8bbe1a3e62ede10df0fbccdfc8def25d6ffc58eedb647a
3
+ metadata.gz: dc766a219e863de2022c92549cec5cfb8c4fefb31104732db068d74d35d5f044
4
+ data.tar.gz: 8f20d3c2c51ee34942a1f7508e81922ab953d9737c6e12979fe146678975ae6b
5
5
  SHA512:
6
- metadata.gz: 352a8c6c761fff3603895df1e681b4c4160443d4f377b5955c74466a17c178bafd5ed7159bec66d6359915dee5dd08b397c2bd4ff665d6fbb7d63b91836b1ee7
7
- data.tar.gz: d79da21e1917a9938e429e818e4bfea57a408de2475bf2ad216d4afe4ac1325f84896f0de1a47bfaebd5eed562204e050e9c38a9614d769383be9bfd370c2a39
6
+ metadata.gz: 7cde61ecaac3b17d8be104b164fde79c88707f76b48e214bf8c4475ecf659a20c8427253fe1d83acb60c8d019d22020098c632ed8a999a48fc09900cb39ca58d
7
+ data.tar.gz: 33006a14e765085e7d9a2a48bb901f11a6954a3d329fa93ef55389c9610d981e1427d657726b0043c6be85e9645399265f983dbc9528eacf4c6da91691c8ea9e
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -34,10 +34,42 @@ class Rex::RandomIdentifier::Generator
34
34
  # This should be pretty universal for identifier rules
35
35
  :char_set => Rex::Text::AlphaNumeric+"_",
36
36
  :first_char_set => Rex::Text::LowerAlpha,
37
- :forbidden => []
37
+ :forbidden => [].freeze
38
+ }
39
+
40
+ JavaOpts = DefaultOpts.merge(
41
+ forbidden: (
42
+ DefaultOpts[:forbidden] +
43
+ %w[
44
+ abstract assert boolean break byte case catch char class const
45
+ continue default do double else enum extends false final finally
46
+ float for goto if implements import instanceof int interface long
47
+ native new null package private protected public return short
48
+ static strictfp super switch synchronized this throw throws
49
+ transient true try void volatile while _
50
+ ]
51
+ ).uniq.freeze
52
+ )
53
+
54
+ JSPOpts = JavaOpts.merge(
55
+ forbidden: (
56
+ JavaOpts[:forbidden] +
57
+ # Reserved Words for Implicit Objects
58
+ # https://docs.oracle.com/cd/E13222_01/wls/docs90/webapp/reference.html#66991
59
+ %w[
60
+ application config out page pageContext request response session var
61
+ ]
62
+ ).uniq.freeze
63
+ )
64
+
65
+ Opts = {
66
+ default: DefaultOpts,
67
+ java: JavaOpts,
68
+ jsp: JSPOpts
38
69
  }
39
70
 
40
71
  # @param opts [Hash] Options, see {DefaultOpts} for default values
72
+ # @option opts :language [Symbol] See the {Opts} keys for supported languages
41
73
  # @option opts :max_length [Fixnum]
42
74
  # @option opts :min_length [Fixnum]
43
75
  # @option opts :char_set [String]
@@ -49,7 +81,12 @@ class Rex::RandomIdentifier::Generator
49
81
  # having to search through the whole list of values
50
82
  @name_by_value = {}
51
83
 
52
- @opts = DefaultOpts.merge(opts)
84
+ language = opts[:language] || :default
85
+ unless Opts.has_key?(language)
86
+ raise ArgumentError, "Language option #{language} is not supported. Expected one of #{Opts.keys}"
87
+ end
88
+ @opts = Opts[language]
89
+ @opts = @opts.merge(opts)
53
90
  if @opts[:min_length] < 1 || @opts[:max_length] < 1 || @opts[:max_length] < @opts[:min_length]
54
91
  raise ArgumentError, "Invalid length options"
55
92
  end
@@ -1,5 +1,5 @@
1
1
  module Rex
2
2
  module RandomIdentifier
3
- VERSION = "0.1.6"
3
+ VERSION = "0.1.7"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rex-random_identifier
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Metasploit Hackers
@@ -93,7 +93,7 @@ cert_chain:
93
93
  EknWpNgVhohbot1lfVAMmIhdtOVaRVcQQixWPwprDj/ydB8ryDMDosIMcw+fkoXU
94
94
  9GJsSaSRRYQ9UUkVL27b64okU8D48m8=
95
95
  -----END CERTIFICATE-----
96
- date: 2021-07-19 00:00:00.000000000 Z
96
+ date: 2021-07-20 00:00:00.000000000 Z
97
97
  dependencies:
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: rake
metadata.gz.sig CHANGED
@@ -1,2 +1 @@
1
- ƌ@ꤹ�e����_���Ç��^��aeX ��Bw��ٰ�.�
2
- ՊZR�-��[��{B߳]o����j�!ؕm賿��o�Z'�%KG���~���0�P��W|�b.Hj�pTd�j�2[x$��m(�1�;9�G�l����K�1*�lS����$�������u�����y3�־wh��ϯ�[�3ٛ&�
1
+ )�ԓ����o����u����ő�j����� S�ԍp������ ���hEӊ{�W