pwntools 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -3
  3. data/lib/pwn.rb +1 -0
  4. data/lib/pwnlib/abi.rb +1 -0
  5. data/lib/pwnlib/asm.rb +83 -42
  6. data/lib/pwnlib/constants/constant.rb +4 -1
  7. data/lib/pwnlib/constants/constants.rb +3 -0
  8. data/lib/pwnlib/constants/linux/amd64.rb +2 -0
  9. data/lib/pwnlib/constants/linux/i386.rb +2 -0
  10. data/lib/pwnlib/context.rb +10 -1
  11. data/lib/pwnlib/dynelf.rb +7 -2
  12. data/lib/pwnlib/elf/elf.rb +79 -6
  13. data/lib/pwnlib/errors.rb +3 -2
  14. data/lib/pwnlib/ext/array.rb +2 -1
  15. data/lib/pwnlib/ext/helper.rb +3 -2
  16. data/lib/pwnlib/ext/integer.rb +2 -1
  17. data/lib/pwnlib/ext/string.rb +3 -2
  18. data/lib/pwnlib/logger.rb +21 -1
  19. data/lib/pwnlib/memleak.rb +1 -0
  20. data/lib/pwnlib/pwn.rb +5 -1
  21. data/lib/pwnlib/reg_sort.rb +5 -0
  22. data/lib/pwnlib/runner.rb +53 -0
  23. data/lib/pwnlib/shellcraft/generators/amd64/common/common.rb +2 -0
  24. data/lib/pwnlib/shellcraft/generators/amd64/common/infloop.rb +1 -0
  25. data/lib/pwnlib/shellcraft/generators/amd64/common/memcpy.rb +5 -1
  26. data/lib/pwnlib/shellcraft/generators/amd64/common/mov.rb +4 -0
  27. data/lib/pwnlib/shellcraft/generators/amd64/common/nop.rb +2 -0
  28. data/lib/pwnlib/shellcraft/generators/amd64/common/popad.rb +1 -0
  29. data/lib/pwnlib/shellcraft/generators/amd64/common/pushstr.rb +3 -1
  30. data/lib/pwnlib/shellcraft/generators/amd64/common/pushstr_array.rb +1 -0
  31. data/lib/pwnlib/shellcraft/generators/amd64/common/ret.rb +1 -0
  32. data/lib/pwnlib/shellcraft/generators/amd64/common/setregs.rb +3 -2
  33. data/lib/pwnlib/shellcraft/generators/amd64/linux/cat.rb +3 -2
  34. data/lib/pwnlib/shellcraft/generators/amd64/linux/execve.rb +1 -0
  35. data/lib/pwnlib/shellcraft/generators/amd64/linux/exit.rb +1 -0
  36. data/lib/pwnlib/shellcraft/generators/amd64/linux/linux.rb +2 -0
  37. data/lib/pwnlib/shellcraft/generators/amd64/linux/ls.rb +1 -0
  38. data/lib/pwnlib/shellcraft/generators/amd64/linux/open.rb +1 -0
  39. data/lib/pwnlib/shellcraft/generators/amd64/linux/sh.rb +3 -2
  40. data/lib/pwnlib/shellcraft/generators/amd64/linux/sleep.rb +24 -0
  41. data/lib/pwnlib/shellcraft/generators/amd64/linux/syscall.rb +1 -0
  42. data/lib/pwnlib/shellcraft/generators/helper.rb +11 -2
  43. data/lib/pwnlib/shellcraft/generators/i386/common/common.rb +2 -0
  44. data/lib/pwnlib/shellcraft/generators/i386/common/infloop.rb +1 -0
  45. data/lib/pwnlib/shellcraft/generators/i386/common/memcpy.rb +34 -0
  46. data/lib/pwnlib/shellcraft/generators/i386/common/mov.rb +3 -0
  47. data/lib/pwnlib/shellcraft/generators/i386/common/nop.rb +2 -0
  48. data/lib/pwnlib/shellcraft/generators/i386/common/pushstr.rb +2 -0
  49. data/lib/pwnlib/shellcraft/generators/i386/common/pushstr_array.rb +1 -0
  50. data/lib/pwnlib/shellcraft/generators/i386/common/setregs.rb +3 -2
  51. data/lib/pwnlib/shellcraft/generators/i386/linux/cat.rb +3 -2
  52. data/lib/pwnlib/shellcraft/generators/i386/linux/execve.rb +1 -0
  53. data/lib/pwnlib/shellcraft/generators/i386/linux/exit.rb +1 -0
  54. data/lib/pwnlib/shellcraft/generators/i386/linux/linux.rb +2 -0
  55. data/lib/pwnlib/shellcraft/generators/i386/linux/ls.rb +1 -0
  56. data/lib/pwnlib/shellcraft/generators/i386/linux/open.rb +1 -0
  57. data/lib/pwnlib/shellcraft/generators/i386/linux/sh.rb +3 -2
  58. data/lib/pwnlib/shellcraft/generators/i386/linux/sleep.rb +24 -0
  59. data/lib/pwnlib/shellcraft/generators/i386/linux/syscall.rb +1 -0
  60. data/lib/pwnlib/shellcraft/generators/x86/common/common.rb +5 -3
  61. data/lib/pwnlib/shellcraft/generators/x86/common/infloop.rb +2 -0
  62. data/lib/pwnlib/shellcraft/generators/x86/common/memcpy.rb +17 -0
  63. data/lib/pwnlib/shellcraft/generators/x86/common/mov.rb +2 -0
  64. data/lib/pwnlib/shellcraft/generators/x86/common/pushstr.rb +2 -0
  65. data/lib/pwnlib/shellcraft/generators/x86/common/pushstr_array.rb +1 -0
  66. data/lib/pwnlib/shellcraft/generators/x86/common/setregs.rb +8 -6
  67. data/lib/pwnlib/shellcraft/generators/x86/linux/cat.rb +1 -0
  68. data/lib/pwnlib/shellcraft/generators/x86/linux/execve.rb +3 -0
  69. data/lib/pwnlib/shellcraft/generators/x86/linux/exit.rb +1 -0
  70. data/lib/pwnlib/shellcraft/generators/x86/linux/linux.rb +2 -0
  71. data/lib/pwnlib/shellcraft/generators/x86/linux/ls.rb +1 -0
  72. data/lib/pwnlib/shellcraft/generators/x86/linux/open.rb +1 -0
  73. data/lib/pwnlib/shellcraft/generators/x86/linux/sh.rb +1 -0
  74. data/lib/pwnlib/shellcraft/generators/x86/linux/sleep.rb +52 -0
  75. data/lib/pwnlib/shellcraft/generators/x86/linux/syscall.rb +10 -10
  76. data/lib/pwnlib/shellcraft/registers.rb +5 -1
  77. data/lib/pwnlib/shellcraft/shellcraft.rb +8 -3
  78. data/lib/pwnlib/timer.rb +6 -2
  79. data/lib/pwnlib/tubes/buffer.rb +4 -1
  80. data/lib/pwnlib/tubes/process.rb +2 -0
  81. data/lib/pwnlib/tubes/serialtube.rb +3 -1
  82. data/lib/pwnlib/tubes/sock.rb +7 -1
  83. data/lib/pwnlib/tubes/tube.rb +23 -3
  84. data/lib/pwnlib/ui.rb +21 -0
  85. data/lib/pwnlib/util/cyclic.rb +2 -0
  86. data/lib/pwnlib/util/fiddling.rb +37 -5
  87. data/lib/pwnlib/util/getdents.rb +1 -0
  88. data/lib/pwnlib/util/hexdump.rb +8 -5
  89. data/lib/pwnlib/util/lists.rb +3 -0
  90. data/lib/pwnlib/util/packing.rb +5 -2
  91. data/lib/pwnlib/util/ruby.rb +1 -0
  92. data/lib/pwnlib/version.rb +2 -1
  93. data/test/abi_test.rb +1 -0
  94. data/test/asm_test.rb +75 -85
  95. data/test/constants/constant_test.rb +1 -0
  96. data/test/constants/constants_test.rb +1 -0
  97. data/test/context_test.rb +1 -0
  98. data/test/data/assembly/aarch64.s +19 -0
  99. data/test/data/assembly/amd64.s +21 -0
  100. data/test/data/assembly/arm.s +9 -0
  101. data/test/data/assembly/i386.s +21 -0
  102. data/test/data/assembly/mips.s +16 -0
  103. data/test/data/assembly/mips64.s +6 -0
  104. data/test/data/assembly/powerpc.s +18 -0
  105. data/test/data/assembly/powerpc64.s +36 -0
  106. data/test/data/assembly/sparc.s +33 -0
  107. data/test/data/assembly/sparc64.s +5 -0
  108. data/test/data/assembly/thumb.s +37 -0
  109. data/test/data/echo.rb +1 -0
  110. data/test/dynelf_test.rb +3 -1
  111. data/test/elf/elf_test.rb +18 -0
  112. data/test/ext_test.rb +1 -0
  113. data/test/files/use_pwn.rb +1 -0
  114. data/test/files/use_pwnlib.rb +1 -0
  115. data/test/full_file_test.rb +6 -0
  116. data/test/logger_test.rb +24 -3
  117. data/test/memleak_test.rb +1 -0
  118. data/test/reg_sort_test.rb +1 -0
  119. data/test/runner_test.rb +32 -0
  120. data/test/shellcraft/infloop_test.rb +1 -0
  121. data/test/shellcraft/linux/cat_test.rb +1 -0
  122. data/test/shellcraft/linux/ls_test.rb +1 -0
  123. data/test/shellcraft/linux/sh_test.rb +1 -0
  124. data/test/shellcraft/linux/sleep_test.rb +68 -0
  125. data/test/shellcraft/linux/syscalls/execve_test.rb +1 -0
  126. data/test/shellcraft/linux/syscalls/exit_test.rb +1 -0
  127. data/test/shellcraft/linux/syscalls/open_test.rb +1 -0
  128. data/test/shellcraft/linux/syscalls/syscall_test.rb +1 -0
  129. data/test/shellcraft/memcpy_test.rb +20 -5
  130. data/test/shellcraft/mov_test.rb +1 -0
  131. data/test/shellcraft/nop_test.rb +1 -0
  132. data/test/shellcraft/popad_test.rb +1 -0
  133. data/test/shellcraft/pushstr_array_test.rb +1 -0
  134. data/test/shellcraft/pushstr_test.rb +1 -0
  135. data/test/shellcraft/registers_test.rb +1 -0
  136. data/test/shellcraft/ret_test.rb +1 -0
  137. data/test/shellcraft/setregs_test.rb +9 -8
  138. data/test/shellcraft/shellcraft_test.rb +1 -0
  139. data/test/test_helper.rb +28 -0
  140. data/test/timer_test.rb +2 -1
  141. data/test/tubes/buffer_test.rb +1 -0
  142. data/test/tubes/process_test.rb +8 -2
  143. data/test/tubes/serialtube_test.rb +1 -4
  144. data/test/tubes/sock_test.rb +1 -0
  145. data/test/tubes/tube_test.rb +10 -1
  146. data/test/ui_test.rb +18 -0
  147. data/test/util/cyclic_test.rb +1 -0
  148. data/test/util/fiddling_test.rb +8 -0
  149. data/test/util/getdents_test.rb +1 -0
  150. data/test/util/hexdump_test.rb +2 -1
  151. data/test/util/lists_test.rb +1 -0
  152. data/test/util/packing_test.rb +3 -2
  153. metadata +119 -59
@@ -1,4 +1,5 @@
1
1
  # encoding: ASCII-8BIT
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'test_helper'
4
5
 
@@ -1,4 +1,5 @@
1
1
  # encoding: ASCII-8BIT
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'test_helper'
4
5
 
@@ -104,4 +105,11 @@ class FiddlingTest < MiniTest::Test
104
105
  assert_equal('test', b64d('dGVzdA=='))
105
106
  assert_equal("\xb2\x18\xa4" * 100, b64d('shik' * 100))
106
107
  end
108
+
109
+ def test_xor
110
+ assert_equal('happy', xor("\xE8\xE1\xF0\xF0\xF9", "\x80"))
111
+ assert_equal('happy', xor("\x80", "\xE8\xE1\xF0\xF0\xF9"))
112
+ assert_equal("\x04\x04\x04\x02\v\r\x11\x10\x11", xor('plaintext', 'thekey'))
113
+ assert_equal('2172172172', xor('217', "\x00" * 10))
114
+ end
107
115
  end
@@ -1,4 +1,5 @@
1
1
  # encoding: ASCII-8BIT
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'test_helper'
4
5
 
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # frozen_string_literal: true
2
3
 
3
4
  # This test use UTF-8 encoding for strings since the output for hexdump contains lots of UTF-8 characters.
4
5
 
@@ -153,7 +154,7 @@ class HexDumpTest < MiniTest::Test
153
154
  assert_lines_equal(<<-'EOS', hexdump('abcdefghi', highlight: 'aeiou'))
154
155
  00000000 61! 62 63 64 65! 66 67 68 69! │a!bcd│e!fgh│i!│
155
156
  00000009
156
- EOS
157
+ EOS
157
158
  ensure
158
159
  ::Pwnlib::Util::HexDump.const_set(:HIGHLIGHT_STYLE, orig_style)
159
160
  $VERBOSE = orig_verbose
@@ -1,4 +1,5 @@
1
1
  # encoding: ASCII-8BIT
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'test_helper'
4
5
 
@@ -1,4 +1,5 @@
1
1
  # encoding: ASCII-8BIT
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'test_helper'
4
5
 
@@ -116,8 +117,8 @@ class PackingTest < MiniTest::Test
116
117
  def test_up_rand
117
118
  srand(217)
118
119
  [8, 16, 32, 64].each do |sz|
119
- u = ->(*x) { ::Pwnlib::Util::Packing.public_send("u#{sz}", *x) }
120
- p = ->(*x) { ::Pwnlib::Util::Packing.public_send("p#{sz}", *x) }
120
+ u = ->(*x, **k) { ::Pwnlib::Util::Packing.public_send("u#{sz}", *x, **k) }
121
+ p = ->(*x, **k) { ::Pwnlib::Util::Packing.public_send("p#{sz}", *x, **k) }
121
122
  100.times do
122
123
  limit = (1 << sz)
123
124
  val = rand(0...limit)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwntools
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - peter50216@gmail.com
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2018-08-26 00:00:00.000000000 Z
13
+ date: 2020-08-07 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: crabstone
@@ -18,14 +18,14 @@ dependencies:
18
18
  requirements:
19
19
  - - "~>"
20
20
  - !ruby/object:Gem::Version
21
- version: '3'
21
+ version: '4'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - "~>"
27
27
  - !ruby/object:Gem::Version
28
- version: '3'
28
+ version: '4'
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: dentaku
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -35,7 +35,7 @@ dependencies:
35
35
  version: 2.0.11
36
36
  - - "<"
37
37
  - !ruby/object:Gem::Version
38
- version: 3.3.0
38
+ version: 3.4.0
39
39
  type: :runtime
40
40
  prerelease: false
41
41
  version_requirements: !ruby/object:Gem::Requirement
@@ -45,21 +45,27 @@ dependencies:
45
45
  version: 2.0.11
46
46
  - - "<"
47
47
  - !ruby/object:Gem::Version
48
- version: 3.3.0
48
+ version: 3.4.0
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: elftools
51
51
  requirement: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - "~>"
53
+ - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: 1.0.1
56
+ - - "<"
57
+ - !ruby/object:Gem::Version
58
+ version: 1.2.0
56
59
  type: :runtime
57
60
  prerelease: false
58
61
  version_requirements: !ruby/object:Gem::Requirement
59
62
  requirements:
60
- - - "~>"
63
+ - - ">="
61
64
  - !ruby/object:Gem::Version
62
65
  version: 1.0.1
66
+ - - "<"
67
+ - !ruby/object:Gem::Version
68
+ version: 1.2.0
63
69
  - !ruby/object:Gem::Dependency
64
70
  name: keystone-engine
65
71
  requirement: !ruby/object:Gem::Requirement
@@ -88,6 +94,26 @@ dependencies:
88
94
  - - "~>"
89
95
  - !ruby/object:Gem::Version
90
96
  version: '0.9'
97
+ - !ruby/object:Gem::Dependency
98
+ name: one_gadget
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: 1.6.2
104
+ - - "<"
105
+ - !ruby/object:Gem::Version
106
+ version: 1.8.0
107
+ type: :runtime
108
+ prerelease: false
109
+ version_requirements: !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ version: 1.6.2
114
+ - - "<"
115
+ - !ruby/object:Gem::Version
116
+ version: 1.8.0
91
117
  - !ruby/object:Gem::Dependency
92
118
  name: rainbow
93
119
  requirement: !ruby/object:Gem::Requirement
@@ -170,28 +196,28 @@ dependencies:
170
196
  requirements:
171
197
  - - "~>"
172
198
  - !ruby/object:Gem::Version
173
- version: '12.1'
199
+ version: '13.0'
174
200
  type: :development
175
201
  prerelease: false
176
202
  version_requirements: !ruby/object:Gem::Requirement
177
203
  requirements:
178
204
  - - "~>"
179
205
  - !ruby/object:Gem::Version
180
- version: '12.1'
206
+ version: '13.0'
181
207
  - !ruby/object:Gem::Dependency
182
208
  name: rubocop
183
209
  requirement: !ruby/object:Gem::Requirement
184
210
  requirements:
185
211
  - - "~>"
186
212
  - !ruby/object:Gem::Version
187
- version: '0.55'
213
+ version: '0.63'
188
214
  type: :development
189
215
  prerelease: false
190
216
  version_requirements: !ruby/object:Gem::Requirement
191
217
  requirements:
192
218
  - - "~>"
193
219
  - !ruby/object:Gem::Version
194
- version: '0.55'
220
+ version: '0.63'
195
221
  - !ruby/object:Gem::Dependency
196
222
  name: simplecov
197
223
  requirement: !ruby/object:Gem::Requirement
@@ -268,6 +294,7 @@ files:
268
294
  - lib/pwnlib/memleak.rb
269
295
  - lib/pwnlib/pwn.rb
270
296
  - lib/pwnlib/reg_sort.rb
297
+ - lib/pwnlib/runner.rb
271
298
  - lib/pwnlib/shellcraft/generators/amd64/common/common.rb
272
299
  - lib/pwnlib/shellcraft/generators/amd64/common/infloop.rb
273
300
  - lib/pwnlib/shellcraft/generators/amd64/common/memcpy.rb
@@ -285,10 +312,12 @@ files:
285
312
  - lib/pwnlib/shellcraft/generators/amd64/linux/ls.rb
286
313
  - lib/pwnlib/shellcraft/generators/amd64/linux/open.rb
287
314
  - lib/pwnlib/shellcraft/generators/amd64/linux/sh.rb
315
+ - lib/pwnlib/shellcraft/generators/amd64/linux/sleep.rb
288
316
  - lib/pwnlib/shellcraft/generators/amd64/linux/syscall.rb
289
317
  - lib/pwnlib/shellcraft/generators/helper.rb
290
318
  - lib/pwnlib/shellcraft/generators/i386/common/common.rb
291
319
  - lib/pwnlib/shellcraft/generators/i386/common/infloop.rb
320
+ - lib/pwnlib/shellcraft/generators/i386/common/memcpy.rb
292
321
  - lib/pwnlib/shellcraft/generators/i386/common/mov.rb
293
322
  - lib/pwnlib/shellcraft/generators/i386/common/nop.rb
294
323
  - lib/pwnlib/shellcraft/generators/i386/common/pushstr.rb
@@ -301,9 +330,11 @@ files:
301
330
  - lib/pwnlib/shellcraft/generators/i386/linux/ls.rb
302
331
  - lib/pwnlib/shellcraft/generators/i386/linux/open.rb
303
332
  - lib/pwnlib/shellcraft/generators/i386/linux/sh.rb
333
+ - lib/pwnlib/shellcraft/generators/i386/linux/sleep.rb
304
334
  - lib/pwnlib/shellcraft/generators/i386/linux/syscall.rb
305
335
  - lib/pwnlib/shellcraft/generators/x86/common/common.rb
306
336
  - lib/pwnlib/shellcraft/generators/x86/common/infloop.rb
337
+ - lib/pwnlib/shellcraft/generators/x86/common/memcpy.rb
307
338
  - lib/pwnlib/shellcraft/generators/x86/common/mov.rb
308
339
  - lib/pwnlib/shellcraft/generators/x86/common/pushstr.rb
309
340
  - lib/pwnlib/shellcraft/generators/x86/common/pushstr_array.rb
@@ -315,6 +346,7 @@ files:
315
346
  - lib/pwnlib/shellcraft/generators/x86/linux/ls.rb
316
347
  - lib/pwnlib/shellcraft/generators/x86/linux/open.rb
317
348
  - lib/pwnlib/shellcraft/generators/x86/linux/sh.rb
349
+ - lib/pwnlib/shellcraft/generators/x86/linux/sleep.rb
318
350
  - lib/pwnlib/shellcraft/generators/x86/linux/syscall.rb
319
351
  - lib/pwnlib/shellcraft/registers.rb
320
352
  - lib/pwnlib/shellcraft/shellcraft.rb
@@ -324,6 +356,7 @@ files:
324
356
  - lib/pwnlib/tubes/serialtube.rb
325
357
  - lib/pwnlib/tubes/sock.rb
326
358
  - lib/pwnlib/tubes/tube.rb
359
+ - lib/pwnlib/ui.rb
327
360
  - lib/pwnlib/util/cyclic.rb
328
361
  - lib/pwnlib/util/fiddling.rb
329
362
  - lib/pwnlib/util/getdents.rb
@@ -337,6 +370,17 @@ files:
337
370
  - test/constants/constant_test.rb
338
371
  - test/constants/constants_test.rb
339
372
  - test/context_test.rb
373
+ - test/data/assembly/aarch64.s
374
+ - test/data/assembly/amd64.s
375
+ - test/data/assembly/arm.s
376
+ - test/data/assembly/i386.s
377
+ - test/data/assembly/mips.s
378
+ - test/data/assembly/mips64.s
379
+ - test/data/assembly/powerpc.s
380
+ - test/data/assembly/powerpc64.s
381
+ - test/data/assembly/sparc.s
382
+ - test/data/assembly/sparc64.s
383
+ - test/data/assembly/thumb.s
340
384
  - test/data/echo.rb
341
385
  - test/data/elfs/Makefile
342
386
  - test/data/elfs/amd64.frelro.elf
@@ -364,10 +408,12 @@ files:
364
408
  - test/logger_test.rb
365
409
  - test/memleak_test.rb
366
410
  - test/reg_sort_test.rb
411
+ - test/runner_test.rb
367
412
  - test/shellcraft/infloop_test.rb
368
413
  - test/shellcraft/linux/cat_test.rb
369
414
  - test/shellcraft/linux/ls_test.rb
370
415
  - test/shellcraft/linux/sh_test.rb
416
+ - test/shellcraft/linux/sleep_test.rb
371
417
  - test/shellcraft/linux/syscalls/execve_test.rb
372
418
  - test/shellcraft/linux/syscalls/exit_test.rb
373
419
  - test/shellcraft/linux/syscalls/open_test.rb
@@ -389,6 +435,7 @@ files:
389
435
  - test/tubes/serialtube_test.rb
390
436
  - test/tubes/sock_test.rb
391
437
  - test/tubes/tube_test.rb
438
+ - test/ui_test.rb
392
439
  - test/util/cyclic_test.rb
393
440
  - test/util/fiddling_test.rb
394
441
  - test/util/getdents_test.rb
@@ -407,79 +454,92 @@ required_ruby_version: !ruby/object:Gem::Requirement
407
454
  requirements:
408
455
  - - ">="
409
456
  - !ruby/object:Gem::Version
410
- version: 2.1.0
457
+ version: '2.3'
411
458
  required_rubygems_version: !ruby/object:Gem::Requirement
412
459
  requirements:
413
460
  - - ">="
414
461
  - !ruby/object:Gem::Version
415
462
  version: '0'
416
463
  requirements: []
417
- rubyforge_project:
418
- rubygems_version: 2.7.6
464
+ rubygems_version: 3.0.3
419
465
  signing_key:
420
466
  specification_version: 4
421
467
  summary: pwntools
422
468
  test_files:
423
- - test/data/elfs/amd64.frelro.pie.elf
424
- - test/data/elfs/Makefile
469
+ - test/full_file_test.rb
470
+ - test/tubes/sock_test.rb
471
+ - test/tubes/tube_test.rb
472
+ - test/tubes/serialtube_test.rb
473
+ - test/tubes/process_test.rb
474
+ - test/tubes/buffer_test.rb
475
+ - test/files/use_pwnlib.rb
476
+ - test/files/use_pwn.rb
477
+ - test/timer_test.rb
425
478
  - test/data/elfs/amd64.frelro.elf
426
- - test/data/elfs/i386.frelro.pie.elf
427
- - test/data/elfs/amd64.nrelro.elf
479
+ - test/data/elfs/source.cpp
480
+ - test/data/elfs/amd64.frelro.pie.elf
428
481
  - test/data/elfs/i386.prelro.elf
482
+ - test/data/elfs/Makefile
429
483
  - test/data/elfs/amd64.static.elf
484
+ - test/data/elfs/amd64.nrelro.elf
485
+ - test/data/elfs/i386.frelro.pie.elf
430
486
  - test/data/elfs/amd64.prelro.elf
431
- - test/data/elfs/source.cpp
432
- - test/data/victim32
433
- - test/data/victim.c
434
- - test/data/victim64
487
+ - test/data/flag
435
488
  - test/data/lib32/ld.so.2
436
489
  - test/data/lib32/libc.so.6
490
+ - test/data/echo.rb
491
+ - test/data/victim64
437
492
  - test/data/lib64/ld.so.2
438
493
  - test/data/lib64/libc.so.6
439
- - test/data/flag
440
- - test/data/echo.rb
441
- - test/asm_test.rb
442
- - test/test_helper.rb
494
+ - test/data/assembly/powerpc64.s
495
+ - test/data/assembly/arm.s
496
+ - test/data/assembly/thumb.s
497
+ - test/data/assembly/i386.s
498
+ - test/data/assembly/amd64.s
499
+ - test/data/assembly/mips.s
500
+ - test/data/assembly/powerpc.s
501
+ - test/data/assembly/sparc.s
502
+ - test/data/assembly/mips64.s
503
+ - test/data/assembly/aarch64.s
504
+ - test/data/assembly/sparc64.s
505
+ - test/data/victim.c
506
+ - test/data/victim32
507
+ - test/runner_test.rb
508
+ - test/dynelf_test.rb
509
+ - test/util/getdents_test.rb
510
+ - test/util/packing_test.rb
511
+ - test/util/fiddling_test.rb
512
+ - test/util/hexdump_test.rb
513
+ - test/util/lists_test.rb
514
+ - test/util/cyclic_test.rb
515
+ - test/ext_test.rb
516
+ - test/abi_test.rb
517
+ - test/logger_test.rb
518
+ - test/memleak_test.rb
519
+ - test/elf/elf_test.rb
520
+ - test/ui_test.rb
443
521
  - test/context_test.rb
444
- - test/shellcraft/pushstr_array_test.rb
445
- - test/shellcraft/memcpy_test.rb
522
+ - test/shellcraft/mov_test.rb
523
+ - test/shellcraft/setregs_test.rb
446
524
  - test/shellcraft/registers_test.rb
447
- - test/shellcraft/ret_test.rb
448
525
  - test/shellcraft/popad_test.rb
449
- - test/shellcraft/nop_test.rb
450
- - test/shellcraft/linux/cat_test.rb
451
526
  - test/shellcraft/linux/ls_test.rb
452
- - test/shellcraft/linux/sh_test.rb
453
- - test/shellcraft/linux/syscalls/open_test.rb
454
527
  - test/shellcraft/linux/syscalls/syscall_test.rb
455
- - test/shellcraft/linux/syscalls/exit_test.rb
456
528
  - test/shellcraft/linux/syscalls/execve_test.rb
457
- - test/shellcraft/shellcraft_test.rb
529
+ - test/shellcraft/linux/syscalls/open_test.rb
530
+ - test/shellcraft/linux/syscalls/exit_test.rb
531
+ - test/shellcraft/linux/sleep_test.rb
532
+ - test/shellcraft/linux/cat_test.rb
533
+ - test/shellcraft/linux/sh_test.rb
458
534
  - test/shellcraft/pushstr_test.rb
459
- - test/shellcraft/setregs_test.rb
535
+ - test/shellcraft/shellcraft_test.rb
536
+ - test/shellcraft/pushstr_array_test.rb
537
+ - test/shellcraft/nop_test.rb
538
+ - test/shellcraft/ret_test.rb
539
+ - test/shellcraft/memcpy_test.rb
460
540
  - test/shellcraft/infloop_test.rb
461
- - test/shellcraft/mov_test.rb
462
541
  - test/constants/constants_test.rb
463
542
  - test/constants/constant_test.rb
464
543
  - test/reg_sort_test.rb
465
- - test/logger_test.rb
466
- - test/memleak_test.rb
467
- - test/util/fiddling_test.rb
468
- - test/util/hexdump_test.rb
469
- - test/util/getdents_test.rb
470
- - test/util/packing_test.rb
471
- - test/util/cyclic_test.rb
472
- - test/util/lists_test.rb
473
- - test/timer_test.rb
474
- - test/tubes/sock_test.rb
475
- - test/tubes/serialtube_test.rb
476
- - test/tubes/buffer_test.rb
477
- - test/tubes/process_test.rb
478
- - test/tubes/tube_test.rb
479
- - test/abi_test.rb
480
- - test/files/use_pwnlib.rb
481
- - test/files/use_pwn.rb
482
- - test/ext_test.rb
483
- - test/full_file_test.rb
484
- - test/dynelf_test.rb
485
- - test/elf/elf_test.rb
544
+ - test/asm_test.rb
545
+ - test/test_helper.rb