stormlib 0.1.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (625) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -0
  3. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CMakeCCompiler.cmake +72 -0
  4. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake +83 -0
  5. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin +0 -0
  6. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin +0 -0
  7. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CMakeSystem.cmake +15 -0
  8. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c +803 -0
  9. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CompilerIdC/a.out +0 -0
  10. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp +791 -0
  11. data/ext/stormlib/StormLib/CMakeFiles/3.22.1/CompilerIdCXX/a.out +0 -0
  12. data/ext/stormlib/StormLib/CMakeFiles/CMakeDirectoryInformation.cmake +16 -0
  13. data/ext/stormlib/StormLib/CMakeFiles/CMakeOutput.log +478 -0
  14. data/ext/stormlib/StormLib/CMakeFiles/Export/share/StormLib/StormLibConfig-noconfig.cmake +19 -0
  15. data/ext/stormlib/StormLib/CMakeFiles/Export/share/StormLib/StormLibConfig.cmake +99 -0
  16. data/ext/stormlib/StormLib/CMakeFiles/Makefile.cmake +61 -0
  17. data/ext/stormlib/StormLib/CMakeFiles/Makefile2 +112 -0
  18. data/ext/stormlib/StormLib/CMakeFiles/TargetDirectories.txt +9 -0
  19. data/ext/stormlib/StormLib/CMakeFiles/cmake.check_cache +1 -0
  20. data/ext/stormlib/StormLib/CMakeFiles/progress.marks +1 -0
  21. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/DependInfo.cmake +243 -0
  22. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/build.make +3695 -0
  23. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/cmake_clean.cmake +459 -0
  24. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/cmake_clean_target.cmake +3 -0
  25. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/compiler_depend.make +2 -0
  26. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/compiler_depend.ts +2 -0
  27. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/depend.make +2 -0
  28. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/flags.make +17 -0
  29. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/link.txt +2 -0
  30. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/progress.make +227 -0
  31. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/FileStream.cpp.o.d +160 -0
  32. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SBaseCommon.cpp.o.d +159 -0
  33. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SBaseDumpData.cpp.o.d +159 -0
  34. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SBaseFileTable.cpp.o.d +159 -0
  35. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SBaseSubTypes.cpp.o.d +159 -0
  36. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SCompression.cpp.o.d +159 -0
  37. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileAddFile.cpp.o.d +159 -0
  38. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileAttributes.cpp.o.d +159 -0
  39. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileCompactArchive.cpp.o.d +159 -0
  40. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileCreateArchive.cpp.o.d +159 -0
  41. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileExtractFile.cpp.o.d +159 -0
  42. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileFindFile.cpp.o.d +159 -0
  43. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileGetFileInfo.cpp.o.d +159 -0
  44. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileListFile.cpp.o.d +159 -0
  45. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileOpenArchive.cpp.o.d +159 -0
  46. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileOpenFileEx.cpp.o.d +159 -0
  47. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFilePatchArchives.cpp.o.d +159 -0
  48. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileReadFile.cpp.o.d +159 -0
  49. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/SFileVerify.cpp.o.d +159 -0
  50. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/adpcm/adpcm.cpp.o.d +12 -0
  51. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/huffman/huff.cpp.o.d +16 -0
  52. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/jenkins/lookup3.c.o.d +88 -0
  53. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/hashes/hash_memory.c.o.d +102 -0
  54. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/hashes/md5.c.o.d +102 -0
  55. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/hashes/sha1.c.o.d +102 -0
  56. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/hashes/sha256.c.o.d +102 -0
  57. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/math/ltm_desc.c.o.d +105 -0
  58. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/math/multi.c.o.d +102 -0
  59. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/math/rand_prime.c.o.d +102 -0
  60. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/base64_decode.c.o.d +102 -0
  61. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_argchk.c.o.d +102 -0
  62. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_find_hash.c.o.d +102 -0
  63. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_find_prng.c.o.d +102 -0
  64. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_hash_descriptor.c.o.d +102 -0
  65. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_hash_is_valid.c.o.d +102 -0
  66. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_libc.c.o.d +102 -0
  67. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_ltc_mp_descriptor.c.o.d +102 -0
  68. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_prng_descriptor.c.o.d +102 -0
  69. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_prng_is_valid.c.o.d +102 -0
  70. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_register_hash.c.o.d +102 -0
  71. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/crypt_register_prng.c.o.d +102 -0
  72. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/misc/zeromem.c.o.d +102 -0
  73. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_bit_string.c.o.d +102 -0
  74. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_boolean.c.o.d +102 -0
  75. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_choice.c.o.d +102 -0
  76. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_ia5_string.c.o.d +102 -0
  77. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_integer.c.o.d +102 -0
  78. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_object_identifier.c.o.d +102 -0
  79. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_octet_string.c.o.d +102 -0
  80. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_printable_string.c.o.d +102 -0
  81. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_sequence_ex.c.o.d +102 -0
  82. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_sequence_flexi.c.o.d +102 -0
  83. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_sequence_multi.c.o.d +102 -0
  84. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_short_integer.c.o.d +102 -0
  85. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_utctime.c.o.d +102 -0
  86. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_decode_utf8_string.c.o.d +102 -0
  87. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_bit_string.c.o.d +102 -0
  88. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_boolean.c.o.d +102 -0
  89. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_ia5_string.c.o.d +102 -0
  90. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_integer.c.o.d +102 -0
  91. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_object_identifier.c.o.d +102 -0
  92. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_octet_string.c.o.d +102 -0
  93. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_printable_string.c.o.d +102 -0
  94. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_sequence_ex.c.o.d +102 -0
  95. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_sequence_multi.c.o.d +102 -0
  96. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_set.c.o.d +102 -0
  97. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_setof.c.o.d +102 -0
  98. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_short_integer.c.o.d +102 -0
  99. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_utctime.c.o.d +102 -0
  100. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_encode_utf8_string.c.o.d +102 -0
  101. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_bit_string.c.o.d +102 -0
  102. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_boolean.c.o.d +102 -0
  103. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_ia5_string.c.o.d +102 -0
  104. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_integer.c.o.d +102 -0
  105. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_object_identifier.c.o.d +102 -0
  106. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_octet_string.c.o.d +102 -0
  107. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_printable_string.c.o.d +102 -0
  108. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_sequence.c.o.d +102 -0
  109. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_short_integer.c.o.d +102 -0
  110. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_utctime.c.o.d +102 -0
  111. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_length_utf8_string.c.o.d +102 -0
  112. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/asn1/der_sequence_free.c.o.d +102 -0
  113. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/ecc/ltc_ecc_map.c.o.d +102 -0
  114. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/ecc/ltc_ecc_mul2add.c.o.d +102 -0
  115. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/ecc/ltc_ecc_mulmod.c.o.d +102 -0
  116. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/ecc/ltc_ecc_points.c.o.d +102 -0
  117. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/ecc/ltc_ecc_projective_add_point.c.o.d +102 -0
  118. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/ecc/ltc_ecc_projective_dbl_point.c.o.d +102 -0
  119. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/pkcs1/pkcs_1_mgf1.c.o.d +102 -0
  120. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_decode.c.o.d +102 -0
  121. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/pkcs1/pkcs_1_pss_decode.c.o.d +102 -0
  122. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/pkcs1/pkcs_1_pss_encode.c.o.d +102 -0
  123. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_decode.c.o.d +102 -0
  124. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_encode.c.o.d +102 -0
  125. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/rsa/rsa_exptmod.c.o.d +102 -0
  126. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/rsa/rsa_free.c.o.d +102 -0
  127. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/rsa/rsa_import.c.o.d +102 -0
  128. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/rsa/rsa_make_key.c.o.d +102 -0
  129. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/rsa/rsa_sign_hash.c.o.d +102 -0
  130. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/rsa/rsa_verify_hash.c.o.d +102 -0
  131. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtomcrypt/src/pk/rsa/rsa_verify_simple.c.o.d +102 -0
  132. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_fast_mp_invmod.c.o.d +65 -0
  133. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_fast_mp_montgomery_reduce.c.o.d +65 -0
  134. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_fast_s_mp_mul_digs.c.o.d +65 -0
  135. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_fast_s_mp_mul_high_digs.c.o.d +65 -0
  136. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_fast_s_mp_sqr.c.o.d +65 -0
  137. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_2expt.c.o.d +65 -0
  138. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_abs.c.o.d +65 -0
  139. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_add.c.o.d +65 -0
  140. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_add_d.c.o.d +65 -0
  141. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_addmod.c.o.d +65 -0
  142. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_and.c.o.d +65 -0
  143. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_clamp.c.o.d +65 -0
  144. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_clear.c.o.d +65 -0
  145. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_clear_multi.c.o.d +65 -0
  146. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_cmp.c.o.d +65 -0
  147. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_cmp_d.c.o.d +65 -0
  148. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_cmp_mag.c.o.d +65 -0
  149. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_cnt_lsb.c.o.d +65 -0
  150. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_copy.c.o.d +65 -0
  151. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_count_bits.c.o.d +65 -0
  152. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_div.c.o.d +65 -0
  153. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_div_2.c.o.d +65 -0
  154. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_div_2d.c.o.d +65 -0
  155. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_div_3.c.o.d +65 -0
  156. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_div_d.c.o.d +65 -0
  157. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_dr_is_modulus.c.o.d +65 -0
  158. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_dr_reduce.c.o.d +65 -0
  159. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_dr_setup.c.o.d +65 -0
  160. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_exch.c.o.d +65 -0
  161. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_expt_d.c.o.d +65 -0
  162. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_exptmod.c.o.d +65 -0
  163. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_exptmod_fast.c.o.d +65 -0
  164. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_exteuclid.c.o.d +65 -0
  165. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_fread.c.o.d +65 -0
  166. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_fwrite.c.o.d +65 -0
  167. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_gcd.c.o.d +65 -0
  168. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_get_int.c.o.d +65 -0
  169. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_grow.c.o.d +65 -0
  170. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_init.c.o.d +65 -0
  171. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_init_copy.c.o.d +65 -0
  172. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_init_multi.c.o.d +65 -0
  173. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_init_set.c.o.d +65 -0
  174. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_init_set_int.c.o.d +65 -0
  175. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_init_size.c.o.d +65 -0
  176. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_invmod.c.o.d +65 -0
  177. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_invmod_slow.c.o.d +65 -0
  178. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_is_square.c.o.d +65 -0
  179. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_jacobi.c.o.d +65 -0
  180. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_karatsuba_mul.c.o.d +65 -0
  181. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_karatsuba_sqr.c.o.d +65 -0
  182. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_lcm.c.o.d +65 -0
  183. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_lshd.c.o.d +65 -0
  184. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_mod.c.o.d +65 -0
  185. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_mod_2d.c.o.d +65 -0
  186. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_mod_d.c.o.d +65 -0
  187. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_montgomery_calc_normalization.c.o.d +65 -0
  188. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_montgomery_reduce.c.o.d +65 -0
  189. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_montgomery_setup.c.o.d +65 -0
  190. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_mul.c.o.d +65 -0
  191. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_mul_2.c.o.d +65 -0
  192. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_mul_2d.c.o.d +65 -0
  193. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_mul_d.c.o.d +65 -0
  194. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_mulmod.c.o.d +65 -0
  195. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_n_root.c.o.d +65 -0
  196. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_neg.c.o.d +65 -0
  197. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_or.c.o.d +65 -0
  198. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_prime_fermat.c.o.d +65 -0
  199. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_prime_is_divisible.c.o.d +65 -0
  200. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_prime_is_prime.c.o.d +65 -0
  201. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_prime_miller_rabin.c.o.d +65 -0
  202. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_prime_next_prime.c.o.d +65 -0
  203. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_prime_rabin_miller_trials.c.o.d +65 -0
  204. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_prime_random_ex.c.o.d +65 -0
  205. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_radix_size.c.o.d +65 -0
  206. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_radix_smap.c.o.d +65 -0
  207. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_rand.c.o.d +65 -0
  208. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_read_radix.c.o.d +65 -0
  209. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_read_signed_bin.c.o.d +65 -0
  210. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_read_unsigned_bin.c.o.d +65 -0
  211. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_reduce.c.o.d +65 -0
  212. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_reduce_2k.c.o.d +65 -0
  213. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_reduce_2k_l.c.o.d +65 -0
  214. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_reduce_2k_setup.c.o.d +65 -0
  215. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_reduce_2k_setup_l.c.o.d +65 -0
  216. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_reduce_is_2k.c.o.d +65 -0
  217. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_reduce_is_2k_l.c.o.d +65 -0
  218. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_reduce_setup.c.o.d +65 -0
  219. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_rshd.c.o.d +65 -0
  220. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_set.c.o.d +65 -0
  221. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_set_int.c.o.d +65 -0
  222. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_shrink.c.o.d +65 -0
  223. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_signed_bin_size.c.o.d +65 -0
  224. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_sqr.c.o.d +65 -0
  225. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_sqrmod.c.o.d +65 -0
  226. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_sqrt.c.o.d +65 -0
  227. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_sub.c.o.d +65 -0
  228. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_sub_d.c.o.d +65 -0
  229. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_submod.c.o.d +65 -0
  230. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_to_signed_bin.c.o.d +65 -0
  231. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_to_signed_bin_n.c.o.d +65 -0
  232. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_to_unsigned_bin.c.o.d +65 -0
  233. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_to_unsigned_bin_n.c.o.d +65 -0
  234. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_toom_mul.c.o.d +65 -0
  235. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_toom_sqr.c.o.d +65 -0
  236. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_toradix.c.o.d +65 -0
  237. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_toradix_n.c.o.d +65 -0
  238. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_unsigned_bin_size.c.o.d +65 -0
  239. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_xor.c.o.d +65 -0
  240. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_mp_zero.c.o.d +65 -0
  241. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_prime_tab.c.o.d +65 -0
  242. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_reverse.c.o.d +65 -0
  243. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_s_mp_add.c.o.d +65 -0
  244. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_s_mp_exptmod.c.o.d +65 -0
  245. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_s_mp_mul_digs.c.o.d +65 -0
  246. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_s_mp_mul_high_digs.c.o.d +65 -0
  247. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_s_mp_sqr.c.o.d +65 -0
  248. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bn_s_mp_sub.c.o.d +65 -0
  249. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/libtommath/bncore.c.o.d +65 -0
  250. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/lzma/C/LzFind.c.o.d +18 -0
  251. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/lzma/C/LzmaDec.c.o.d +17 -0
  252. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/lzma/C/LzmaEnc.c.o.d +18 -0
  253. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/pklib/explode.c.o.d +16 -0
  254. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/pklib/implode.c.o.d +23 -0
  255. data/ext/stormlib/StormLib/CMakeFiles/storm.dir/src/sparse/sparse.cpp.o.d +16 -0
  256. data/ext/stormlib/StormLib/CMakeLists.txt +418 -0
  257. data/ext/stormlib/StormLib/Info.plist +22 -0
  258. data/ext/stormlib/StormLib/LICENSE +21 -0
  259. data/ext/stormlib/StormLib/Premake5.lua +132 -0
  260. data/ext/stormlib/StormLib/README.md +39 -0
  261. data/ext/stormlib/StormLib/StormLib.sln +162 -0
  262. data/ext/stormlib/StormLib/StormLib.vcxproj +1024 -0
  263. data/ext/stormlib/StormLib/StormLib.vcxproj.filters +221 -0
  264. data/ext/stormlib/StormLib/StormLib.xcodeproj/project.pbxproj +2104 -0
  265. data/ext/stormlib/StormLib/StormLib_dll.vcxproj +348 -0
  266. data/ext/stormlib/StormLib/StormLib_dll.vcxproj.filters +229 -0
  267. data/ext/stormlib/StormLib/StormLib_test.vcxproj +360 -0
  268. data/ext/stormlib/StormLib/StormLib_test.vcxproj.filters +230 -0
  269. data/ext/stormlib/StormLib/StormLib_vs08.sln +139 -0
  270. data/ext/stormlib/StormLib/StormLib_vs08.vcproj +4205 -0
  271. data/ext/stormlib/StormLib/StormLib_vs08_dll.vcproj +1851 -0
  272. data/ext/stormlib/StormLib/StormLib_vs08_test.vcproj +1289 -0
  273. data/ext/stormlib/StormLib/doc/History.txt +78 -0
  274. data/ext/stormlib/StormLib/doc/The MoPaQ File Format 0.9.txt +318 -0
  275. data/ext/stormlib/StormLib/doc/The MoPaQ File Format 1.0.txt +433 -0
  276. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-deDE.txt +1 -0
  277. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-enGB.txt +1 -0
  278. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-enSG.txt +1 -0
  279. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-enUS.txt +1 -0
  280. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-esES.txt +1 -0
  281. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-esMX.txt +1 -0
  282. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-frFR.txt +1 -0
  283. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-itIT.txt +1 -0
  284. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-koKR.txt +1 -0
  285. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-plPL.txt +1 -0
  286. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-ptBR.txt +1 -0
  287. data/ext/stormlib/StormLib/doc/d3-authenticationcode/d3-authenticationcode-zhTW.txt +1 -0
  288. data/ext/stormlib/StormLib/doc/hots-authenticationcode/hots-authenticationcode-bgdl.txt +1 -0
  289. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-deDE.txt +1 -0
  290. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-enGB.txt +1 -0
  291. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-enUS.txt +1 -0
  292. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-esES.txt +1 -0
  293. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-esMX.txt +1 -0
  294. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-frFR.txt +1 -0
  295. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-itIT.txt +1 -0
  296. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-koKR.txt +1 -0
  297. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-plPL.txt +1 -0
  298. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-ptBR.txt +1 -0
  299. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-ruRU.txt +1 -0
  300. data/ext/stormlib/StormLib/doc/sc2-authenticationcode/sc2-authenticationcode-zhTW.txt +1 -0
  301. data/ext/stormlib/StormLib/make-msvc.bat +95 -0
  302. data/ext/stormlib/StormLib/make.bat +46 -0
  303. data/ext/stormlib/StormLib/sources +14 -0
  304. data/ext/stormlib/StormLib/src/DllMain.c +24 -0
  305. data/ext/stormlib/StormLib/src/DllMain.def +79 -0
  306. data/ext/stormlib/StormLib/src/DllMain.rc +110 -0
  307. data/ext/stormlib/StormLib/src/FileStream.cpp +2928 -0
  308. data/ext/stormlib/StormLib/src/FileStream.h +217 -0
  309. data/ext/stormlib/StormLib/src/LibTomCrypt.c +85 -0
  310. data/ext/stormlib/StormLib/src/LibTomMath.c +125 -0
  311. data/ext/stormlib/StormLib/src/LibTomMathDesc.c +4 -0
  312. data/ext/stormlib/StormLib/src/SBaseCommon.cpp +1970 -0
  313. data/ext/stormlib/StormLib/src/SBaseDumpData.cpp +183 -0
  314. data/ext/stormlib/StormLib/src/SBaseFileTable.cpp +3194 -0
  315. data/ext/stormlib/StormLib/src/SBaseSubTypes.cpp +688 -0
  316. data/ext/stormlib/StormLib/src/SCompression.cpp +1183 -0
  317. data/ext/stormlib/StormLib/src/SFileAddFile.cpp +1337 -0
  318. data/ext/stormlib/StormLib/src/SFileAttributes.cpp +573 -0
  319. data/ext/stormlib/StormLib/src/SFileCompactArchive.cpp +654 -0
  320. data/ext/stormlib/StormLib/src/SFileCreateArchive.cpp +285 -0
  321. data/ext/stormlib/StormLib/src/SFileExtractFile.cpp +64 -0
  322. data/ext/stormlib/StormLib/src/SFileFindFile.cpp +484 -0
  323. data/ext/stormlib/StormLib/src/SFileGetFileInfo.cpp +627 -0
  324. data/ext/stormlib/StormLib/src/SFileListFile.cpp +750 -0
  325. data/ext/stormlib/StormLib/src/SFileOpenArchive.cpp +723 -0
  326. data/ext/stormlib/StormLib/src/SFileOpenFileEx.cpp +423 -0
  327. data/ext/stormlib/StormLib/src/SFilePatchArchives.cpp +1175 -0
  328. data/ext/stormlib/StormLib/src/SFileReadFile.cpp +922 -0
  329. data/ext/stormlib/StormLib/src/SFileVerify.cpp +1059 -0
  330. data/ext/stormlib/StormLib/src/StormCommon.h +450 -0
  331. data/ext/stormlib/StormLib/src/StormLib.exp +74 -0
  332. data/ext/stormlib/StormLib/src/StormLib.h +1157 -0
  333. data/ext/stormlib/StormLib/src/StormPort.h +474 -0
  334. data/ext/stormlib/StormLib/src/adpcm/adpcm.cpp +539 -0
  335. data/ext/stormlib/StormLib/src/adpcm/adpcm.h +27 -0
  336. data/ext/stormlib/StormLib/src/bzip2/blocksort.c +1094 -0
  337. data/ext/stormlib/StormLib/src/bzip2/bzlib.c +1573 -0
  338. data/ext/stormlib/StormLib/src/bzip2/bzlib.h +282 -0
  339. data/ext/stormlib/StormLib/src/bzip2/bzlib_private.h +509 -0
  340. data/ext/stormlib/StormLib/src/bzip2/compress.c +672 -0
  341. data/ext/stormlib/StormLib/src/bzip2/crctable.c +104 -0
  342. data/ext/stormlib/StormLib/src/bzip2/decompress.c +626 -0
  343. data/ext/stormlib/StormLib/src/bzip2/huffman.c +205 -0
  344. data/ext/stormlib/StormLib/src/bzip2/randtable.c +84 -0
  345. data/ext/stormlib/StormLib/src/huffman/huff.cpp +915 -0
  346. data/ext/stormlib/StormLib/src/huffman/huff.h +143 -0
  347. data/ext/stormlib/StormLib/src/jenkins/lookup.h +24 -0
  348. data/ext/stormlib/StormLib/src/jenkins/lookup3.c +1003 -0
  349. data/ext/stormlib/StormLib/src/libtomcrypt/src/hashes/hash_memory.c +69 -0
  350. data/ext/stormlib/StormLib/src/libtomcrypt/src/hashes/md5.c +368 -0
  351. data/ext/stormlib/StormLib/src/libtomcrypt/src/hashes/sha1.c +288 -0
  352. data/ext/stormlib/StormLib/src/libtomcrypt/src/hashes/sha256.c +340 -0
  353. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt.h +91 -0
  354. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_argchk.h +38 -0
  355. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_cfg.h +144 -0
  356. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_cipher.h +891 -0
  357. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_custom.h +424 -0
  358. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_hash.h +378 -0
  359. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_mac.h +384 -0
  360. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_macros.h +424 -0
  361. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_math.h +500 -0
  362. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_misc.h +23 -0
  363. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_pk.h +558 -0
  364. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_pkcs.h +89 -0
  365. data/ext/stormlib/StormLib/src/libtomcrypt/src/headers/tomcrypt_prng.h +199 -0
  366. data/ext/stormlib/StormLib/src/libtomcrypt/src/math/ltm_desc.c +483 -0
  367. data/ext/stormlib/StormLib/src/libtomcrypt/src/math/multi.c +61 -0
  368. data/ext/stormlib/StormLib/src/libtomcrypt/src/math/rand_prime.c +87 -0
  369. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/base64_decode.c +104 -0
  370. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_argchk.c +30 -0
  371. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_find_hash.c +40 -0
  372. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_find_prng.c +41 -0
  373. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_hash_descriptor.c +27 -0
  374. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_hash_is_valid.c +36 -0
  375. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_libc.c +43 -0
  376. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_ltc_mp_descriptor.c +13 -0
  377. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_prng_descriptor.c +26 -0
  378. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_prng_is_valid.c +36 -0
  379. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_register_hash.c +54 -0
  380. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/crypt_register_prng.c +54 -0
  381. data/ext/stormlib/StormLib/src/libtomcrypt/src/misc/zeromem.c +34 -0
  382. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_bit_string.c +102 -0
  383. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_boolean.c +47 -0
  384. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_choice.c +182 -0
  385. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_ia5_string.c +96 -0
  386. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_integer.c +110 -0
  387. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_object_identifier.c +99 -0
  388. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_octet_string.c +91 -0
  389. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_printable_string.c +96 -0
  390. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_sequence_ex.c +287 -0
  391. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_sequence_flexi.c +386 -0
  392. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_sequence_multi.c +139 -0
  393. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_short_integer.c +68 -0
  394. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_utctime.c +127 -0
  395. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_decode_utf8_string.c +111 -0
  396. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_bit_string.c +89 -0
  397. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_boolean.c +51 -0
  398. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_ia5_string.c +85 -0
  399. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_integer.c +130 -0
  400. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_object_identifier.c +111 -0
  401. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_octet_string.c +86 -0
  402. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_printable_string.c +85 -0
  403. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_sequence_ex.c +335 -0
  404. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_sequence_multi.c +138 -0
  405. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_set.c +103 -0
  406. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_setof.c +162 -0
  407. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_short_integer.c +97 -0
  408. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_utctime.c +83 -0
  409. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_encode_utf8_string.c +105 -0
  410. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_bit_string.c +54 -0
  411. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_boolean.c +35 -0
  412. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_ia5_string.c +194 -0
  413. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_integer.c +82 -0
  414. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_object_identifier.c +89 -0
  415. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_octet_string.c +53 -0
  416. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_printable_string.c +166 -0
  417. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_sequence.c +169 -0
  418. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_short_integer.c +70 -0
  419. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_utctime.c +46 -0
  420. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_length_utf8_string.c +83 -0
  421. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/asn1/der_sequence_free.c +65 -0
  422. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/ecc/ltc_ecc_map.c +76 -0
  423. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/ecc/ltc_ecc_mul2add.c +207 -0
  424. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/ecc/ltc_ecc_mulmod.c +222 -0
  425. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/ecc/ltc_ecc_points.c +60 -0
  426. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/ecc/ltc_ecc_projective_add_point.c +196 -0
  427. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/ecc/ltc_ecc_projective_dbl_point.c +147 -0
  428. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/pkcs1/pkcs_1_mgf1.c +108 -0
  429. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_decode.c +189 -0
  430. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/pkcs1/pkcs_1_pss_decode.c +177 -0
  431. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/pkcs1/pkcs_1_pss_encode.c +175 -0
  432. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_decode.c +110 -0
  433. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_encode.c +111 -0
  434. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/rsa/rsa_exptmod.c +113 -0
  435. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/rsa/rsa_free.c +34 -0
  436. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/rsa/rsa_import.c +143 -0
  437. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/rsa/rsa_make_key.c +112 -0
  438. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/rsa/rsa_sign_hash.c +134 -0
  439. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/rsa/rsa_verify_hash.c +167 -0
  440. data/ext/stormlib/StormLib/src/libtomcrypt/src/pk/rsa/rsa_verify_simple.c +87 -0
  441. data/ext/stormlib/StormLib/src/libtommath/bn_fast_mp_invmod.c +148 -0
  442. data/ext/stormlib/StormLib/src/libtommath/bn_fast_mp_montgomery_reduce.c +172 -0
  443. data/ext/stormlib/StormLib/src/libtommath/bn_fast_s_mp_mul_digs.c +107 -0
  444. data/ext/stormlib/StormLib/src/libtommath/bn_fast_s_mp_mul_high_digs.c +98 -0
  445. data/ext/stormlib/StormLib/src/libtommath/bn_fast_s_mp_sqr.c +114 -0
  446. data/ext/stormlib/StormLib/src/libtommath/bn_mp_2expt.c +48 -0
  447. data/ext/stormlib/StormLib/src/libtommath/bn_mp_abs.c +43 -0
  448. data/ext/stormlib/StormLib/src/libtommath/bn_mp_add.c +53 -0
  449. data/ext/stormlib/StormLib/src/libtommath/bn_mp_add_d.c +112 -0
  450. data/ext/stormlib/StormLib/src/libtommath/bn_mp_addmod.c +41 -0
  451. data/ext/stormlib/StormLib/src/libtommath/bn_mp_and.c +57 -0
  452. data/ext/stormlib/StormLib/src/libtommath/bn_mp_clamp.c +44 -0
  453. data/ext/stormlib/StormLib/src/libtommath/bn_mp_clear.c +44 -0
  454. data/ext/stormlib/StormLib/src/libtommath/bn_mp_clear_multi.c +34 -0
  455. data/ext/stormlib/StormLib/src/libtommath/bn_mp_cmp.c +43 -0
  456. data/ext/stormlib/StormLib/src/libtommath/bn_mp_cmp_d.c +44 -0
  457. data/ext/stormlib/StormLib/src/libtommath/bn_mp_cmp_mag.c +55 -0
  458. data/ext/stormlib/StormLib/src/libtommath/bn_mp_cnt_lsb.c +53 -0
  459. data/ext/stormlib/StormLib/src/libtommath/bn_mp_copy.c +68 -0
  460. data/ext/stormlib/StormLib/src/libtommath/bn_mp_count_bits.c +45 -0
  461. data/ext/stormlib/StormLib/src/libtommath/bn_mp_div.c +292 -0
  462. data/ext/stormlib/StormLib/src/libtommath/bn_mp_div_2.c +68 -0
  463. data/ext/stormlib/StormLib/src/libtommath/bn_mp_div_2d.c +97 -0
  464. data/ext/stormlib/StormLib/src/libtommath/bn_mp_div_3.c +79 -0
  465. data/ext/stormlib/StormLib/src/libtommath/bn_mp_div_d.c +115 -0
  466. data/ext/stormlib/StormLib/src/libtommath/bn_mp_dr_is_modulus.c +43 -0
  467. data/ext/stormlib/StormLib/src/libtommath/bn_mp_dr_reduce.c +94 -0
  468. data/ext/stormlib/StormLib/src/libtommath/bn_mp_dr_setup.c +32 -0
  469. data/ext/stormlib/StormLib/src/libtommath/bn_mp_exch.c +34 -0
  470. data/ext/stormlib/StormLib/src/libtommath/bn_mp_expt_d.c +57 -0
  471. data/ext/stormlib/StormLib/src/libtommath/bn_mp_exptmod.c +112 -0
  472. data/ext/stormlib/StormLib/src/libtommath/bn_mp_exptmod_fast.c +321 -0
  473. data/ext/stormlib/StormLib/src/libtommath/bn_mp_exteuclid.c +82 -0
  474. data/ext/stormlib/StormLib/src/libtommath/bn_mp_fread.c +67 -0
  475. data/ext/stormlib/StormLib/src/libtommath/bn_mp_fwrite.c +52 -0
  476. data/ext/stormlib/StormLib/src/libtommath/bn_mp_gcd.c +105 -0
  477. data/ext/stormlib/StormLib/src/libtommath/bn_mp_get_int.c +45 -0
  478. data/ext/stormlib/StormLib/src/libtommath/bn_mp_grow.c +57 -0
  479. data/ext/stormlib/StormLib/src/libtommath/bn_mp_init.c +46 -0
  480. data/ext/stormlib/StormLib/src/libtommath/bn_mp_init_copy.c +32 -0
  481. data/ext/stormlib/StormLib/src/libtommath/bn_mp_init_multi.c +59 -0
  482. data/ext/stormlib/StormLib/src/libtommath/bn_mp_init_set.c +32 -0
  483. data/ext/stormlib/StormLib/src/libtommath/bn_mp_init_set_int.c +31 -0
  484. data/ext/stormlib/StormLib/src/libtommath/bn_mp_init_size.c +48 -0
  485. data/ext/stormlib/StormLib/src/libtommath/bn_mp_invmod.c +43 -0
  486. data/ext/stormlib/StormLib/src/libtommath/bn_mp_invmod_slow.c +175 -0
  487. data/ext/stormlib/StormLib/src/libtommath/bn_mp_is_square.c +109 -0
  488. data/ext/stormlib/StormLib/src/libtommath/bn_mp_jacobi.c +105 -0
  489. data/ext/stormlib/StormLib/src/libtommath/bn_mp_karatsuba_mul.c +167 -0
  490. data/ext/stormlib/StormLib/src/libtommath/bn_mp_karatsuba_sqr.c +121 -0
  491. data/ext/stormlib/StormLib/src/libtommath/bn_mp_lcm.c +60 -0
  492. data/ext/stormlib/StormLib/src/libtommath/bn_mp_lshd.c +67 -0
  493. data/ext/stormlib/StormLib/src/libtommath/bn_mp_mod.c +48 -0
  494. data/ext/stormlib/StormLib/src/libtommath/bn_mp_mod_2d.c +55 -0
  495. data/ext/stormlib/StormLib/src/libtommath/bn_mp_mod_d.c +27 -0
  496. data/ext/stormlib/StormLib/src/libtommath/bn_mp_montgomery_calc_normalization.c +59 -0
  497. data/ext/stormlib/StormLib/src/libtommath/bn_mp_montgomery_reduce.c +118 -0
  498. data/ext/stormlib/StormLib/src/libtommath/bn_mp_montgomery_setup.c +59 -0
  499. data/ext/stormlib/StormLib/src/libtommath/bn_mp_mul.c +66 -0
  500. data/ext/stormlib/StormLib/src/libtommath/bn_mp_mul_2.c +82 -0
  501. data/ext/stormlib/StormLib/src/libtommath/bn_mp_mul_2d.c +85 -0
  502. data/ext/stormlib/StormLib/src/libtommath/bn_mp_mul_d.c +79 -0
  503. data/ext/stormlib/StormLib/src/libtommath/bn_mp_mulmod.c +40 -0
  504. data/ext/stormlib/StormLib/src/libtommath/bn_mp_n_root.c +132 -0
  505. data/ext/stormlib/StormLib/src/libtommath/bn_mp_neg.c +40 -0
  506. data/ext/stormlib/StormLib/src/libtommath/bn_mp_or.c +50 -0
  507. data/ext/stormlib/StormLib/src/libtommath/bn_mp_prime_fermat.c +62 -0
  508. data/ext/stormlib/StormLib/src/libtommath/bn_mp_prime_is_divisible.c +50 -0
  509. data/ext/stormlib/StormLib/src/libtommath/bn_mp_prime_is_prime.c +83 -0
  510. data/ext/stormlib/StormLib/src/libtommath/bn_mp_prime_miller_rabin.c +103 -0
  511. data/ext/stormlib/StormLib/src/libtommath/bn_mp_prime_next_prime.c +170 -0
  512. data/ext/stormlib/StormLib/src/libtommath/bn_mp_prime_rabin_miller_trials.c +52 -0
  513. data/ext/stormlib/StormLib/src/libtommath/bn_mp_prime_random_ex.c +125 -0
  514. data/ext/stormlib/StormLib/src/libtommath/bn_mp_radix_size.c +78 -0
  515. data/ext/stormlib/StormLib/src/libtommath/bn_mp_radix_smap.c +24 -0
  516. data/ext/stormlib/StormLib/src/libtommath/bn_mp_rand.c +55 -0
  517. data/ext/stormlib/StormLib/src/libtommath/bn_mp_read_radix.c +85 -0
  518. data/ext/stormlib/StormLib/src/libtommath/bn_mp_read_signed_bin.c +41 -0
  519. data/ext/stormlib/StormLib/src/libtommath/bn_mp_read_unsigned_bin.c +55 -0
  520. data/ext/stormlib/StormLib/src/libtommath/bn_mp_reduce.c +100 -0
  521. data/ext/stormlib/StormLib/src/libtommath/bn_mp_reduce_2k.c +61 -0
  522. data/ext/stormlib/StormLib/src/libtommath/bn_mp_reduce_2k_l.c +62 -0
  523. data/ext/stormlib/StormLib/src/libtommath/bn_mp_reduce_2k_setup.c +47 -0
  524. data/ext/stormlib/StormLib/src/libtommath/bn_mp_reduce_2k_setup_l.c +44 -0
  525. data/ext/stormlib/StormLib/src/libtommath/bn_mp_reduce_is_2k.c +52 -0
  526. data/ext/stormlib/StormLib/src/libtommath/bn_mp_reduce_is_2k_l.c +44 -0
  527. data/ext/stormlib/StormLib/src/libtommath/bn_mp_reduce_setup.c +34 -0
  528. data/ext/stormlib/StormLib/src/libtommath/bn_mp_rshd.c +72 -0
  529. data/ext/stormlib/StormLib/src/libtommath/bn_mp_set.c +29 -0
  530. data/ext/stormlib/StormLib/src/libtommath/bn_mp_set_int.c +48 -0
  531. data/ext/stormlib/StormLib/src/libtommath/bn_mp_shrink.c +35 -0
  532. data/ext/stormlib/StormLib/src/libtommath/bn_mp_signed_bin_size.c +27 -0
  533. data/ext/stormlib/StormLib/src/libtommath/bn_mp_sqr.c +58 -0
  534. data/ext/stormlib/StormLib/src/libtommath/bn_mp_sqrmod.c +41 -0
  535. data/ext/stormlib/StormLib/src/libtommath/bn_mp_sqrt.c +81 -0
  536. data/ext/stormlib/StormLib/src/libtommath/bn_mp_sub.c +59 -0
  537. data/ext/stormlib/StormLib/src/libtommath/bn_mp_sub_d.c +93 -0
  538. data/ext/stormlib/StormLib/src/libtommath/bn_mp_submod.c +42 -0
  539. data/ext/stormlib/StormLib/src/libtommath/bn_mp_to_signed_bin.c +33 -0
  540. data/ext/stormlib/StormLib/src/libtommath/bn_mp_to_signed_bin_n.c +31 -0
  541. data/ext/stormlib/StormLib/src/libtommath/bn_mp_to_unsigned_bin.c +48 -0
  542. data/ext/stormlib/StormLib/src/libtommath/bn_mp_to_unsigned_bin_n.c +31 -0
  543. data/ext/stormlib/StormLib/src/libtommath/bn_mp_toom_mul.c +284 -0
  544. data/ext/stormlib/StormLib/src/libtommath/bn_mp_toom_sqr.c +226 -0
  545. data/ext/stormlib/StormLib/src/libtommath/bn_mp_toradix.c +75 -0
  546. data/ext/stormlib/StormLib/src/libtommath/bn_mp_toradix_n.c +88 -0
  547. data/ext/stormlib/StormLib/src/libtommath/bn_mp_unsigned_bin_size.c +28 -0
  548. data/ext/stormlib/StormLib/src/libtommath/bn_mp_xor.c +51 -0
  549. data/ext/stormlib/StormLib/src/libtommath/bn_mp_zero.c +36 -0
  550. data/ext/stormlib/StormLib/src/libtommath/bn_prime_tab.c +61 -0
  551. data/ext/stormlib/StormLib/src/libtommath/bn_reverse.c +39 -0
  552. data/ext/stormlib/StormLib/src/libtommath/bn_s_mp_add.c +109 -0
  553. data/ext/stormlib/StormLib/src/libtommath/bn_s_mp_exptmod.c +252 -0
  554. data/ext/stormlib/StormLib/src/libtommath/bn_s_mp_mul_digs.c +90 -0
  555. data/ext/stormlib/StormLib/src/libtommath/bn_s_mp_mul_high_digs.c +81 -0
  556. data/ext/stormlib/StormLib/src/libtommath/bn_s_mp_sqr.c +84 -0
  557. data/ext/stormlib/StormLib/src/libtommath/bn_s_mp_sub.c +89 -0
  558. data/ext/stormlib/StormLib/src/libtommath/bncore.c +36 -0
  559. data/ext/stormlib/StormLib/src/libtommath/tommath.h +584 -0
  560. data/ext/stormlib/StormLib/src/libtommath/tommath_class.h +999 -0
  561. data/ext/stormlib/StormLib/src/libtommath/tommath_superclass.h +76 -0
  562. data/ext/stormlib/StormLib/src/lzma/C/LzFind.c +761 -0
  563. data/ext/stormlib/StormLib/src/lzma/C/LzFind.h +115 -0
  564. data/ext/stormlib/StormLib/src/lzma/C/LzFindMt.c +793 -0
  565. data/ext/stormlib/StormLib/src/lzma/C/LzFindMt.h +105 -0
  566. data/ext/stormlib/StormLib/src/lzma/C/LzHash.h +54 -0
  567. data/ext/stormlib/StormLib/src/lzma/C/LzmaDec.c +999 -0
  568. data/ext/stormlib/StormLib/src/lzma/C/LzmaDec.h +231 -0
  569. data/ext/stormlib/StormLib/src/lzma/C/LzmaEnc.c +2268 -0
  570. data/ext/stormlib/StormLib/src/lzma/C/LzmaEnc.h +80 -0
  571. data/ext/stormlib/StormLib/src/lzma/C/Threads.c +84 -0
  572. data/ext/stormlib/StormLib/src/lzma/C/Threads.h +59 -0
  573. data/ext/stormlib/StormLib/src/lzma/C/Types.h +236 -0
  574. data/ext/stormlib/StormLib/src/lzma/info.txt +1 -0
  575. data/ext/stormlib/StormLib/src/pklib/crc32.c +66 -0
  576. data/ext/stormlib/StormLib/src/pklib/explode.c +521 -0
  577. data/ext/stormlib/StormLib/src/pklib/implode.c +674 -0
  578. data/ext/stormlib/StormLib/src/pklib/pklib.h +160 -0
  579. data/ext/stormlib/StormLib/src/resource.h +15 -0
  580. data/ext/stormlib/StormLib/src/sparse/sparse.cpp +287 -0
  581. data/ext/stormlib/StormLib/src/sparse/sparse.h +17 -0
  582. data/ext/stormlib/StormLib/src/wdk/sources-cpp.cpp +26 -0
  583. data/ext/stormlib/StormLib/src/wdk/sources-wdk-bzip2.c +13 -0
  584. data/ext/stormlib/StormLib/src/wdk/sources-wdk-ltc.c +4 -0
  585. data/ext/stormlib/StormLib/src/wdk/sources-wdk-lzma.c +8 -0
  586. data/ext/stormlib/StormLib/src/wdk/sources-wdk-misc.c +6 -0
  587. data/ext/stormlib/StormLib/src/wdk/sources-wdk-tomcrypt.c +82 -0
  588. data/ext/stormlib/StormLib/src/wdk/sources-wdk-tommath.c +123 -0
  589. data/ext/stormlib/StormLib/src/wdk/sources-wdk-zlib.c +21 -0
  590. data/ext/stormlib/StormLib/src/zlib/adler32.c +169 -0
  591. data/ext/stormlib/StormLib/src/zlib/compress.c +80 -0
  592. data/ext/stormlib/StormLib/src/zlib/compress_zlib.c +5 -0
  593. data/ext/stormlib/StormLib/src/zlib/crc32.c +442 -0
  594. data/ext/stormlib/StormLib/src/zlib/crc32.h +441 -0
  595. data/ext/stormlib/StormLib/src/zlib/deflate.c +1834 -0
  596. data/ext/stormlib/StormLib/src/zlib/deflate.h +342 -0
  597. data/ext/stormlib/StormLib/src/zlib/gzguts.h +218 -0
  598. data/ext/stormlib/StormLib/src/zlib/inffast.c +340 -0
  599. data/ext/stormlib/StormLib/src/zlib/inffast.h +11 -0
  600. data/ext/stormlib/StormLib/src/zlib/inffixed.h +94 -0
  601. data/ext/stormlib/StormLib/src/zlib/inflate.c +1480 -0
  602. data/ext/stormlib/StormLib/src/zlib/inflate.h +130 -0
  603. data/ext/stormlib/StormLib/src/zlib/inftrees.c +330 -0
  604. data/ext/stormlib/StormLib/src/zlib/inftrees.h +67 -0
  605. data/ext/stormlib/StormLib/src/zlib/trees.c +1244 -0
  606. data/ext/stormlib/StormLib/src/zlib/trees.h +128 -0
  607. data/ext/stormlib/StormLib/src/zlib/zconf.h +428 -0
  608. data/ext/stormlib/StormLib/src/zlib/zlib.h +1613 -0
  609. data/ext/stormlib/StormLib/src/zlib/zutil.c +318 -0
  610. data/ext/stormlib/StormLib/src/zlib/zutil.h +274 -0
  611. data/ext/stormlib/StormLib/storm_dll/storm.cpp +117 -0
  612. data/ext/stormlib/StormLib/storm_dll/storm.def +25 -0
  613. data/ext/stormlib/StormLib/storm_dll/storm.h +65 -0
  614. data/ext/stormlib/StormLib/storm_dll/storm.vcxproj +209 -0
  615. data/ext/stormlib/StormLib/storm_dll/storm.vcxproj.filters +28 -0
  616. data/ext/stormlib/StormLib/storm_dll/storm_test.cpp +182 -0
  617. data/ext/stormlib/StormLib/storm_dll/storm_test.vcxproj +202 -0
  618. data/ext/stormlib/StormLib/storm_dll/storm_test.vcxproj.filters +22 -0
  619. data/ext/stormlib/StormLib/test/StormTest.cpp +4393 -0
  620. data/ext/stormlib/StormLib/test/TLogHelper.cpp +567 -0
  621. data/ext/stormlib/StormLib/test/stormlib-test-001.txt +164 -0
  622. data/ext/stormlib/extconf.rb +0 -2
  623. data/lib/stormlib/version.rb +1 -1
  624. data/stormlib.gemspec +1 -2
  625. metadata +621 -16
@@ -0,0 +1,627 @@
1
+ /*****************************************************************************/
2
+ /* SFileGetFileInfo.cpp Copyright (c) Ladislav Zezula 2013 */
3
+ /*---------------------------------------------------------------------------*/
4
+ /* Description: */
5
+ /*---------------------------------------------------------------------------*/
6
+ /* Date Ver Who Comment */
7
+ /* -------- ---- --- ------- */
8
+ /* 30.11.13 1.00 Lad The first version of SFileGetFileInfo.cpp */
9
+ /*****************************************************************************/
10
+
11
+ #define __STORMLIB_SELF__
12
+ #include "StormLib.h"
13
+ #include "StormCommon.h"
14
+
15
+ //-----------------------------------------------------------------------------
16
+ // Local functions
17
+
18
+ static DWORD GetMpqFileCount(TMPQArchive * ha)
19
+ {
20
+ TFileEntry * pFileTableEnd;
21
+ TFileEntry * pFileEntry;
22
+ DWORD dwFileCount = 0;
23
+
24
+ // Go through all open MPQs, including patches
25
+ while(ha != NULL)
26
+ {
27
+ // Only count files that are not patch files
28
+ pFileTableEnd = ha->pFileTable + ha->dwFileTableSize;
29
+ for(pFileEntry = ha->pFileTable; pFileEntry < pFileTableEnd; pFileEntry++)
30
+ {
31
+ // If the file is patch file and this is not primary archive, skip it
32
+ // BUGBUG: This errorneously counts non-patch files that are in both
33
+ // base MPQ and in patches, and increases the number of files by cca 50%
34
+ if((pFileEntry->dwFlags & (MPQ_FILE_EXISTS | MPQ_FILE_PATCH_FILE)) == MPQ_FILE_EXISTS)
35
+ dwFileCount++;
36
+ }
37
+
38
+ // Move to the next patch archive
39
+ ha = ha->haPatch;
40
+ }
41
+
42
+ return dwFileCount;
43
+ }
44
+
45
+ static bool GetInfo_ReturnError(DWORD dwErrCode)
46
+ {
47
+ SetLastError(dwErrCode);
48
+ return false;
49
+ }
50
+
51
+ static bool GetInfo_BufferCheck(void * pvFileInfo, DWORD cbFileInfo, DWORD cbData, LPDWORD pcbLengthNeeded)
52
+ {
53
+ // Give the length needed to store the info
54
+ if(pcbLengthNeeded != NULL)
55
+ pcbLengthNeeded[0] = cbData;
56
+
57
+ // Check for sufficient buffer
58
+ if(cbData > cbFileInfo)
59
+ return GetInfo_ReturnError(ERROR_INSUFFICIENT_BUFFER);
60
+
61
+ // If the buffer size is sufficient, check for valid user buffer
62
+ if(pvFileInfo == NULL)
63
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
64
+
65
+ // Buffers and sizes are OK, we are ready to proceed file copying
66
+ return true;
67
+ }
68
+
69
+ static bool GetInfo(void * pvFileInfo, DWORD cbFileInfo, const void * pvData, DWORD cbData, LPDWORD pcbLengthNeeded)
70
+ {
71
+ // Verify the input parameter
72
+ if(pvData == NULL)
73
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
74
+
75
+ // Verify buffer pointer and buffer size
76
+ if(!GetInfo_BufferCheck(pvFileInfo, cbFileInfo, cbData, pcbLengthNeeded))
77
+ return false;
78
+
79
+ // Copy the data to the caller-supplied buffer
80
+ memcpy(pvFileInfo, pvData, cbData);
81
+ return true;
82
+ }
83
+
84
+ static bool GetInfo_Allocated(void * pvFileInfo, DWORD cbFileInfo, void * pvData, DWORD cbData, LPDWORD pcbLengthNeeded)
85
+ {
86
+ bool bResult;
87
+
88
+ // Verify the input parameter
89
+ if(pvData == NULL)
90
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
91
+
92
+ // Verify buffer pointer and buffer size
93
+ if((bResult = GetInfo_BufferCheck(pvFileInfo, cbFileInfo, cbData, pcbLengthNeeded)) != false)
94
+ memcpy(pvFileInfo, pvData, cbData);
95
+
96
+ // Copy the data to the user buffer
97
+ STORM_FREE(pvData);
98
+ return bResult;
99
+ }
100
+
101
+ static bool GetInfo_TablePointer(void * pvFileInfo, DWORD cbFileInfo, void * pvTablePointer, SFileInfoClass InfoClass, LPDWORD pcbLengthNeeded)
102
+ {
103
+ // Verify buffer pointer and buffer size
104
+ if(!GetInfo_BufferCheck(pvFileInfo, cbFileInfo, sizeof(void *), pcbLengthNeeded))
105
+ {
106
+ SFileFreeFileInfo(pvTablePointer, InfoClass);
107
+ return false;
108
+ }
109
+
110
+ // The user buffer receives pointer to the table.
111
+ // When done, the caller needs to call SFileFreeFileInfo on it
112
+ *(void **)pvFileInfo = pvTablePointer;
113
+ return true;
114
+ }
115
+
116
+ static bool GetInfo_ReadFromFile(void * pvFileInfo, DWORD cbFileInfo, TFileStream * pStream, ULONGLONG ByteOffset, DWORD cbData, LPDWORD pcbLengthNeeded)
117
+ {
118
+ // Verify buffer pointer and buffer size
119
+ if(!GetInfo_BufferCheck(pvFileInfo, cbFileInfo, cbData, pcbLengthNeeded))
120
+ return false;
121
+
122
+ return FileStream_Read(pStream, &ByteOffset, pvFileInfo, cbData);
123
+ }
124
+
125
+ static bool GetInfo_FileEntry(void * pvFileInfo, DWORD cbFileInfo, TFileEntry * pFileEntry, LPDWORD pcbLengthNeeded)
126
+ {
127
+ LPBYTE pbFileInfo = (LPBYTE)pvFileInfo;
128
+ DWORD cbSrcFileInfo = sizeof(TFileEntry);
129
+ DWORD cbFileName = 1;
130
+
131
+ // The file name belongs to the file entry
132
+ if(pFileEntry->szFileName)
133
+ cbFileName = (DWORD)strlen(pFileEntry->szFileName) + 1;
134
+ cbSrcFileInfo += cbFileName;
135
+
136
+ // Verify buffer pointer and buffer size
137
+ if(!GetInfo_BufferCheck(pvFileInfo, cbFileInfo, cbSrcFileInfo, pcbLengthNeeded))
138
+ return false;
139
+
140
+ // Copy the file entry
141
+ memcpy(pbFileInfo, pFileEntry, sizeof(TFileEntry));
142
+ pbFileInfo += sizeof(TFileEntry);
143
+ pbFileInfo[0] = 0;
144
+
145
+ // Copy the file name
146
+ if(pFileEntry->szFileName)
147
+ memcpy(pbFileInfo, pFileEntry->szFileName, cbFileName);
148
+ return true;
149
+ }
150
+
151
+ static bool GetInfo_PatchChain(TMPQFile * hf, void * pvFileInfo, DWORD cbFileInfo, LPDWORD pcbLengthNeeded)
152
+ {
153
+ TMPQFile * hfTemp;
154
+ LPCTSTR szPatchName;
155
+ LPTSTR szFileInfo = (LPTSTR)pvFileInfo;
156
+ size_t cchCharsNeeded = 1;
157
+ size_t nLength;
158
+
159
+ // Patch chain is only supported on MPQ files. Local files are not supported.
160
+ if(hf->pStream != NULL)
161
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
162
+
163
+ // Calculate the necessary length of the multi-string
164
+ for(hfTemp = hf; hfTemp != NULL; hfTemp = hfTemp->hfPatch)
165
+ cchCharsNeeded += _tcslen(FileStream_GetFileName(hfTemp->ha->pStream)) + 1;
166
+
167
+ // Verify whether the caller gave us valid buffer with enough size
168
+ if(!GetInfo_BufferCheck(pvFileInfo, cbFileInfo, (DWORD)(cchCharsNeeded * sizeof(TCHAR)), pcbLengthNeeded))
169
+ return false;
170
+
171
+ // Copy each patch name
172
+ for(hfTemp = hf; hfTemp != NULL; hfTemp = hfTemp->hfPatch)
173
+ {
174
+ // Get the file name and its length
175
+ szPatchName = FileStream_GetFileName(hfTemp->ha->pStream);
176
+ nLength = _tcslen(szPatchName) + 1;
177
+
178
+ // Copy the file name
179
+ memcpy(szFileInfo, szPatchName, nLength * sizeof(TCHAR));
180
+ szFileInfo += nLength;
181
+ }
182
+
183
+ // Make it multi-string
184
+ szFileInfo[0] = 0;
185
+ return true;
186
+ }
187
+
188
+ //-----------------------------------------------------------------------------
189
+ // Retrieves an information about an archive or about a file within the archive
190
+ //
191
+ // hMpqOrFile - Handle to an MPQ archive or to a file
192
+ // InfoClass - Information to obtain
193
+ // pvFileInfo - Pointer to buffer to store the information
194
+ // cbFileInfo - Size of the buffer pointed by pvFileInfo
195
+ // pcbLengthNeeded - Receives number of bytes necessary to store the information
196
+
197
+ bool WINAPI SFileGetFileInfo(
198
+ HANDLE hMpqOrFile,
199
+ SFileInfoClass InfoClass,
200
+ void * pvFileInfo,
201
+ DWORD cbFileInfo,
202
+ LPDWORD pcbLengthNeeded)
203
+ {
204
+ MPQ_SIGNATURE_INFO SignatureInfo;
205
+ const TCHAR * szSrcFileInfo;
206
+ TMPQArchive * ha = NULL;
207
+ TFileEntry * pFileEntry = NULL;
208
+ TMPQHeader * pHeader = NULL;
209
+ ULONGLONG Int64Value = 0;
210
+ ULONGLONG ByteOffset;
211
+ TMPQFile * hf = NULL;
212
+ void * pvSrcFileInfo = NULL;
213
+ DWORD cbSrcFileInfo = 0;
214
+ DWORD dwInt32Value = 0;
215
+
216
+ // Validate archive/file handle
217
+ if((int)InfoClass <= (int)SFileMpqFlags)
218
+ {
219
+ if((ha = IsValidMpqHandle(hMpqOrFile)) == NULL)
220
+ return GetInfo_ReturnError(ERROR_INVALID_HANDLE);
221
+ pHeader = ha->pHeader;
222
+ }
223
+ else
224
+ {
225
+ if((hf = IsValidFileHandle(hMpqOrFile)) == NULL)
226
+ return GetInfo_ReturnError(ERROR_INVALID_HANDLE);
227
+ pFileEntry = hf->pFileEntry;
228
+ }
229
+
230
+ // Return info-class-specific data
231
+ switch(InfoClass)
232
+ {
233
+ case SFileMpqFileName:
234
+ szSrcFileInfo = FileStream_GetFileName(ha->pStream);
235
+ cbSrcFileInfo = (DWORD)((_tcslen(szSrcFileInfo) + 1) * sizeof(TCHAR));
236
+ return GetInfo(pvFileInfo, cbFileInfo, szSrcFileInfo, cbSrcFileInfo, pcbLengthNeeded);
237
+
238
+ case SFileMpqStreamBitmap:
239
+ return FileStream_GetBitmap(ha->pStream, pvFileInfo, cbFileInfo, pcbLengthNeeded);
240
+
241
+ case SFileMpqUserDataOffset:
242
+ return GetInfo(pvFileInfo, cbFileInfo, &ha->UserDataPos, sizeof(ULONGLONG), pcbLengthNeeded);
243
+
244
+ case SFileMpqUserDataHeader:
245
+ if(ha->pUserData == NULL)
246
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
247
+ return GetInfo_ReadFromFile(pvFileInfo, cbFileInfo, ha->pStream, ha->UserDataPos, sizeof(TMPQUserData), pcbLengthNeeded);
248
+
249
+ case SFileMpqUserData:
250
+ if(ha->pUserData == NULL)
251
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
252
+ return GetInfo_ReadFromFile(pvFileInfo, cbFileInfo, ha->pStream, ha->UserDataPos + sizeof(TMPQUserData), ha->pUserData->dwHeaderOffs - sizeof(TMPQUserData), pcbLengthNeeded);
253
+
254
+ case SFileMpqHeaderOffset:
255
+ return GetInfo(pvFileInfo, cbFileInfo, &ha->MpqPos, sizeof(ULONGLONG), pcbLengthNeeded);
256
+
257
+ case SFileMpqHeaderSize:
258
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->dwHeaderSize, sizeof(DWORD), pcbLengthNeeded);
259
+
260
+ case SFileMpqHeader:
261
+ return GetInfo_ReadFromFile(pvFileInfo, cbFileInfo, ha->pStream, ha->MpqPos, pHeader->dwHeaderSize, pcbLengthNeeded);
262
+
263
+ case SFileMpqHetTableOffset:
264
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->HetTablePos64, sizeof(ULONGLONG), pcbLengthNeeded);
265
+
266
+ case SFileMpqHetTableSize:
267
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->HetTableSize64, sizeof(ULONGLONG), pcbLengthNeeded);
268
+
269
+ case SFileMpqHetHeader:
270
+ pvSrcFileInfo = LoadExtTable(ha, pHeader->HetTablePos64, (size_t)pHeader->HetTableSize64, HET_TABLE_SIGNATURE, MPQ_KEY_HASH_TABLE);
271
+ if(pvSrcFileInfo == NULL)
272
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
273
+ return GetInfo_Allocated(pvFileInfo, cbFileInfo, pvSrcFileInfo, sizeof(TMPQHetHeader), pcbLengthNeeded);
274
+
275
+ case SFileMpqHetTable:
276
+ if((pvSrcFileInfo = LoadHetTable(ha)) == NULL)
277
+ return GetInfo_ReturnError(ERROR_NOT_ENOUGH_MEMORY);
278
+ return GetInfo_TablePointer(pvFileInfo, cbFileInfo, pvSrcFileInfo, InfoClass, pcbLengthNeeded);
279
+
280
+ case SFileMpqBetTableOffset:
281
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->BetTablePos64, sizeof(ULONGLONG), pcbLengthNeeded);
282
+
283
+ case SFileMpqBetTableSize:
284
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->BetTableSize64, sizeof(ULONGLONG), pcbLengthNeeded);
285
+
286
+ case SFileMpqBetHeader:
287
+
288
+ // Retrieve the table and its size
289
+ pvSrcFileInfo = LoadExtTable(ha, pHeader->BetTablePos64, (size_t)pHeader->BetTableSize64, BET_TABLE_SIGNATURE, MPQ_KEY_BLOCK_TABLE);
290
+ if(pvSrcFileInfo == NULL)
291
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
292
+ cbSrcFileInfo = sizeof(TMPQBetHeader) + ((TMPQBetHeader *)pvSrcFileInfo)->dwFlagCount * sizeof(DWORD);
293
+
294
+ // It is allowed for the caller to only require BET header
295
+ if(cbFileInfo == sizeof(TMPQBetHeader))
296
+ cbSrcFileInfo = sizeof(TMPQBetHeader);
297
+ return GetInfo_Allocated(pvFileInfo, cbFileInfo, pvSrcFileInfo, cbSrcFileInfo, pcbLengthNeeded);
298
+
299
+ case SFileMpqBetTable:
300
+ if((pvSrcFileInfo = LoadBetTable(ha)) == NULL)
301
+ return GetInfo_ReturnError(ERROR_NOT_ENOUGH_MEMORY);
302
+ return GetInfo_TablePointer(pvFileInfo, cbFileInfo, pvSrcFileInfo, InfoClass, pcbLengthNeeded);
303
+
304
+ case SFileMpqHashTableOffset:
305
+ Int64Value = MAKE_OFFSET64(pHeader->wHashTablePosHi, pHeader->dwHashTablePos);
306
+ return GetInfo(pvFileInfo, cbFileInfo, &Int64Value, sizeof(ULONGLONG), pcbLengthNeeded);
307
+
308
+ case SFileMpqHashTableSize64:
309
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->HashTableSize64, sizeof(ULONGLONG), pcbLengthNeeded);
310
+
311
+ case SFileMpqHashTableSize:
312
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->dwHashTableSize, sizeof(DWORD), pcbLengthNeeded);
313
+
314
+ case SFileMpqHashTable:
315
+ cbSrcFileInfo = pHeader->dwHashTableSize * sizeof(TMPQHash);
316
+ return GetInfo(pvFileInfo, cbFileInfo, ha->pHashTable, cbSrcFileInfo, pcbLengthNeeded);
317
+
318
+ case SFileMpqBlockTableOffset:
319
+ Int64Value = MAKE_OFFSET64(pHeader->wBlockTablePosHi, pHeader->dwBlockTablePos);
320
+ return GetInfo(pvFileInfo, cbFileInfo, &Int64Value, sizeof(ULONGLONG), pcbLengthNeeded);
321
+
322
+ case SFileMpqBlockTableSize64:
323
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->BlockTableSize64, sizeof(ULONGLONG), pcbLengthNeeded);
324
+
325
+ case SFileMpqBlockTableSize:
326
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->dwBlockTableSize, sizeof(DWORD), pcbLengthNeeded);
327
+
328
+ case SFileMpqBlockTable:
329
+ ByteOffset = FileOffsetFromMpqOffset(ha, MAKE_OFFSET64(pHeader->wBlockTablePosHi, pHeader->dwBlockTablePos));
330
+ if(ByteOffset >= ha->FileSize)
331
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
332
+ cbSrcFileInfo = pHeader->dwBlockTableSize * sizeof(TMPQBlock);
333
+ pvSrcFileInfo = LoadBlockTable(ha, true);
334
+ return GetInfo_Allocated(pvFileInfo, cbFileInfo, pvSrcFileInfo, cbSrcFileInfo, pcbLengthNeeded);
335
+
336
+ case SFileMpqHiBlockTableOffset:
337
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->HiBlockTablePos64, sizeof(ULONGLONG), pcbLengthNeeded);
338
+
339
+ case SFileMpqHiBlockTableSize64:
340
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->HiBlockTableSize64, sizeof(ULONGLONG), pcbLengthNeeded);
341
+
342
+ case SFileMpqHiBlockTable:
343
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
344
+
345
+ case SFileMpqSignatures:
346
+ if(!QueryMpqSignatureInfo(ha, &SignatureInfo))
347
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
348
+ return GetInfo(pvFileInfo, cbFileInfo, &SignatureInfo.SignatureTypes, sizeof(DWORD), pcbLengthNeeded);
349
+
350
+ case SFileMpqStrongSignatureOffset:
351
+ if(QueryMpqSignatureInfo(ha, &SignatureInfo) == false || (SignatureInfo.SignatureTypes & SIGNATURE_TYPE_STRONG) == 0)
352
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
353
+ return GetInfo(pvFileInfo, cbFileInfo, &SignatureInfo.EndMpqData, sizeof(ULONGLONG), pcbLengthNeeded);
354
+
355
+ case SFileMpqStrongSignatureSize:
356
+ if(QueryMpqSignatureInfo(ha, &SignatureInfo) == false || (SignatureInfo.SignatureTypes & SIGNATURE_TYPE_STRONG) == 0)
357
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
358
+ dwInt32Value = MPQ_STRONG_SIGNATURE_SIZE + 4;
359
+ return GetInfo(pvFileInfo, cbFileInfo, &dwInt32Value, sizeof(DWORD), pcbLengthNeeded);
360
+
361
+ case SFileMpqStrongSignature:
362
+ if(QueryMpqSignatureInfo(ha, &SignatureInfo) == false || (SignatureInfo.SignatureTypes & SIGNATURE_TYPE_STRONG) == 0)
363
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
364
+ return GetInfo(pvFileInfo, cbFileInfo, SignatureInfo.Signature, MPQ_STRONG_SIGNATURE_SIZE + 4, pcbLengthNeeded);
365
+
366
+ case SFileMpqArchiveSize64:
367
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->ArchiveSize64, sizeof(ULONGLONG), pcbLengthNeeded);
368
+
369
+ case SFileMpqArchiveSize:
370
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->dwArchiveSize, sizeof(DWORD), pcbLengthNeeded);
371
+
372
+ case SFileMpqMaxFileCount:
373
+ return GetInfo(pvFileInfo, cbFileInfo, &ha->dwMaxFileCount, sizeof(DWORD), pcbLengthNeeded);
374
+
375
+ case SFileMpqFileTableSize:
376
+ return GetInfo(pvFileInfo, cbFileInfo, &ha->dwFileTableSize, sizeof(DWORD), pcbLengthNeeded);
377
+
378
+ case SFileMpqSectorSize:
379
+ return GetInfo(pvFileInfo, cbFileInfo, &ha->dwSectorSize, sizeof(DWORD), pcbLengthNeeded);
380
+
381
+ case SFileMpqNumberOfFiles:
382
+ dwInt32Value = GetMpqFileCount(ha);
383
+ return GetInfo(pvFileInfo, cbFileInfo, &dwInt32Value, sizeof(DWORD), pcbLengthNeeded);
384
+
385
+ case SFileMpqRawChunkSize:
386
+ if(pHeader->dwRawChunkSize == 0)
387
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
388
+ return GetInfo(pvFileInfo, cbFileInfo, &pHeader->dwRawChunkSize, sizeof(DWORD), pcbLengthNeeded);
389
+
390
+ case SFileMpqStreamFlags:
391
+ FileStream_GetFlags(ha->pStream, &dwInt32Value);
392
+ return GetInfo(pvFileInfo, cbFileInfo, &dwInt32Value, sizeof(DWORD), pcbLengthNeeded);
393
+
394
+ case SFileMpqFlags:
395
+ return GetInfo(pvFileInfo, cbFileInfo, &ha->dwFlags, sizeof(DWORD), pcbLengthNeeded);
396
+
397
+ case SFileInfoPatchChain:
398
+ return GetInfo_PatchChain(hf, pvFileInfo, cbFileInfo, pcbLengthNeeded);
399
+
400
+ case SFileInfoFileEntry:
401
+ if(pFileEntry == NULL)
402
+ return GetInfo_ReturnError(ERROR_FILE_NOT_FOUND);
403
+ return GetInfo_FileEntry(pvFileInfo, cbFileInfo, pFileEntry, pcbLengthNeeded);
404
+
405
+ case SFileInfoHashEntry:
406
+ return GetInfo(pvFileInfo, cbFileInfo, hf->pHashEntry, sizeof(TMPQHash), pcbLengthNeeded);
407
+
408
+ case SFileInfoHashIndex:
409
+ return GetInfo(pvFileInfo, cbFileInfo, &hf->dwHashIndex, sizeof(DWORD), pcbLengthNeeded);
410
+
411
+ case SFileInfoNameHash1:
412
+ if(hf->pHashEntry == NULL)
413
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
414
+ return GetInfo(pvFileInfo, cbFileInfo, &hf->pHashEntry->dwName1, sizeof(DWORD), pcbLengthNeeded);
415
+
416
+ case SFileInfoNameHash2:
417
+ if(hf->pHashEntry == NULL)
418
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
419
+ return GetInfo(pvFileInfo, cbFileInfo, &hf->pHashEntry->dwName2, sizeof(DWORD), pcbLengthNeeded);
420
+
421
+ case SFileInfoNameHash3:
422
+ return GetInfo(pvFileInfo, cbFileInfo, &pFileEntry->FileNameHash, sizeof(ULONGLONG), pcbLengthNeeded);
423
+
424
+ case SFileInfoLocale:
425
+ if(hf->pHashEntry == NULL)
426
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
427
+ dwInt32Value = SFILE_MAKE_LCID(hf->pHashEntry->Locale, hf->pHashEntry->Platform);
428
+ return GetInfo(pvFileInfo, cbFileInfo, &dwInt32Value, sizeof(DWORD), pcbLengthNeeded);
429
+
430
+ case SFileInfoFileIndex:
431
+ if(hf->ha == NULL)
432
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
433
+ dwInt32Value = (DWORD)(pFileEntry - hf->ha->pFileTable);
434
+ return GetInfo(pvFileInfo, cbFileInfo, &dwInt32Value, sizeof(DWORD), pcbLengthNeeded);
435
+
436
+ case SFileInfoByteOffset:
437
+ return GetInfo(pvFileInfo, cbFileInfo, &pFileEntry->ByteOffset, sizeof(ULONGLONG), pcbLengthNeeded);
438
+
439
+ case SFileInfoFileTime:
440
+ return GetInfo(pvFileInfo, cbFileInfo, &pFileEntry->FileTime, sizeof(ULONGLONG), pcbLengthNeeded);
441
+
442
+ case SFileInfoFileSize:
443
+ return GetInfo(pvFileInfo, cbFileInfo, &pFileEntry->dwFileSize, sizeof(DWORD), pcbLengthNeeded);
444
+
445
+ case SFileInfoCompressedSize:
446
+ return GetInfo(pvFileInfo, cbFileInfo, &pFileEntry->dwCmpSize, sizeof(DWORD), pcbLengthNeeded);
447
+
448
+ case SFileInfoFlags:
449
+ return GetInfo(pvFileInfo, cbFileInfo, &pFileEntry->dwFlags, sizeof(DWORD), pcbLengthNeeded);
450
+
451
+ case SFileInfoEncryptionKey:
452
+ return GetInfo(pvFileInfo, cbFileInfo, &hf->dwFileKey, sizeof(DWORD), pcbLengthNeeded);
453
+
454
+ case SFileInfoEncryptionKeyRaw:
455
+ if(pFileEntry == NULL)
456
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
457
+ dwInt32Value = hf->dwFileKey;
458
+ if(pFileEntry->dwFlags & MPQ_FILE_KEY_V2)
459
+ dwInt32Value = (dwInt32Value ^ pFileEntry->dwFileSize) - (DWORD)hf->MpqFilePos;
460
+ return GetInfo(pvFileInfo, cbFileInfo, &dwInt32Value, sizeof(DWORD), pcbLengthNeeded);
461
+
462
+ case SFileInfoCRC32:
463
+ return GetInfo(pvFileInfo, cbFileInfo, &hf->pFileEntry->dwCrc32, sizeof(DWORD), pcbLengthNeeded);
464
+ default:
465
+ // Invalid info class
466
+ return GetInfo_ReturnError(ERROR_INVALID_PARAMETER);
467
+ }
468
+ }
469
+
470
+ bool WINAPI SFileFreeFileInfo(void * pvFileInfo, SFileInfoClass InfoClass)
471
+ {
472
+ switch(InfoClass)
473
+ {
474
+ case SFileMpqHetTable:
475
+ FreeHetTable((TMPQHetTable *)pvFileInfo);
476
+ return true;
477
+
478
+ case SFileMpqBetTable:
479
+ FreeBetTable((TMPQBetTable *)pvFileInfo);
480
+ return true;
481
+
482
+ default:
483
+ break;
484
+ }
485
+
486
+ SetLastError(ERROR_INVALID_PARAMETER);
487
+ return false;
488
+ }
489
+
490
+ //-----------------------------------------------------------------------------
491
+ // Tries to retrieve the file name
492
+
493
+ struct TFileHeader2Ext
494
+ {
495
+ DWORD dwOffset00Data; // Required data at offset 00 (32-bits)
496
+ DWORD dwOffset00Mask; // Mask for data at offset 00 (32 bits). 0 = data are ignored
497
+ DWORD dwOffset04Data; // Required data at offset 04 (32-bits)
498
+ DWORD dwOffset04Mask; // Mask for data at offset 04 (32 bits). 0 = data are ignored
499
+ const char * szExt; // Supplied extension, if the condition is true
500
+ };
501
+
502
+ static TFileHeader2Ext data2ext[] =
503
+ {
504
+ {0x00005A4D, 0x0000FFFF, 0x00000000, 0x00000000, "exe"}, // EXE files
505
+ {0x00000006, 0xFFFFFFFF, 0x00000001, 0xFFFFFFFF, "dc6"}, // EXE files
506
+ {0x1A51504D, 0xFFFFFFFF, 0x00000000, 0x00000000, "mpq"}, // MPQ archive header ID ('MPQ\x1A')
507
+ {0x46464952, 0xFFFFFFFF, 0x00000000, 0x00000000, "wav"}, // WAVE header 'RIFF'
508
+ {0x324B4D53, 0xFFFFFFFF, 0x00000000, 0x00000000, "smk"}, // Old "Smacker Video" files 'SMK2'
509
+ {0x694B4942, 0xFFFFFFFF, 0x00000000, 0x00000000, "bik"}, // Bink video files (new)
510
+ {0x0801050A, 0xFFFFFFFF, 0x00000000, 0x00000000, "pcx"}, // PCX images used in Diablo I
511
+ {0x544E4F46, 0xFFFFFFFF, 0x00000000, 0x00000000, "fnt"}, // Font files used in Diablo II
512
+ {0x6D74683C, 0xFFFFFFFF, 0x00000000, 0x00000000, "html"}, // HTML '<htm'
513
+ {0x4D54483C, 0xFFFFFFFF, 0x00000000, 0x00000000, "html"}, // HTML '<HTM
514
+ {0x216F6F57, 0xFFFFFFFF, 0x00000000, 0x00000000, "tbl"}, // Table files
515
+ {0x31504C42, 0xFFFFFFFF, 0x00000000, 0x00000000, "blp"}, // BLP textures
516
+ {0x32504C42, 0xFFFFFFFF, 0x00000000, 0x00000000, "blp"}, // BLP textures (v2)
517
+ {0x584C444D, 0xFFFFFFFF, 0x00000000, 0x00000000, "mdx"}, // MDX files
518
+ {0x45505954, 0xFFFFFFFF, 0x00000000, 0x00000000, "pud"}, // Warcraft II maps
519
+ {0x38464947, 0xFFFFFFFF, 0x00000000, 0x00000000, "gif"}, // GIF images 'GIF8'
520
+ {0x3032444D, 0xFFFFFFFF, 0x00000000, 0x00000000, "m2"}, // WoW ??? .m2
521
+ {0x43424457, 0xFFFFFFFF, 0x00000000, 0x00000000, "dbc"}, // ??? .dbc
522
+ {0x47585053, 0xFFFFFFFF, 0x00000000, 0x00000000, "bls"}, // WoW pixel shaders
523
+ {0xE0FFD8FF, 0xFFFFFFFF, 0x00000000, 0x00000000, "jpg"}, // JPEG image
524
+ {0x503B4449, 0xFFFFFFFF, 0x3B4C5857, 0xFFFFFFFF, "slk"}, // SLK file (usually starts with "ID;PWXL;N;E")
525
+ {0x61754C1B, 0xFFFFFFFF, 0x00000000, 0x00000000, "lua"}, // Compiled LUA files
526
+ {0x20534444, 0xFFFFFFFF, 0x00000000, 0x00000000, "dds"}, // DDS textures
527
+ {0x43614C66, 0xFFFFFFFF, 0x00000000, 0x00000000, "flac"}, // FLAC sound files
528
+ {0x0000FBFF, 0x0000FFFF, 0x00000000, 0x00000000, "mp3"}, // MP3 sound files
529
+ {0x0000F3FF, 0x0000FFFF, 0x00000000, 0x00000000, "mp3"}, // MP3 sound files
530
+ {0x0000F2FF, 0x0000FFFF, 0x00000000, 0x00000000, "mp3"}, // MP3 sound files
531
+ {0x00334449, 0x00FFFFFF, 0x00000000, 0x00000000, "mp3"}, // MP3 sound files
532
+ {0x57334D48, 0xFFFFFFFF, 0x00000000, 0x00000000, "w3x"}, // Warcraft III map files, can also be w3m
533
+ {0x6F643357, 0xFFFFFFFF, 0x00000000, 0x00000000, "doo"}, // Warcraft III doodad files
534
+ {0x21453357, 0xFFFFFFFF, 0x00000000, 0x00000000, "w3e"}, // Warcraft III environment files
535
+ {0x5733504D, 0xFFFFFFFF, 0x00000000, 0x00000000, "wpm"}, // Warcraft III pathing map files
536
+ {0x21475457, 0xFFFFFFFF, 0x00000000, 0x00000000, "wtg"}, // Warcraft III trigger files
537
+ {0x00000000, 0x00000000, 0x00000000, 0x00000000, "xxx"}, // Default extension
538
+ {0, 0, 0, 0, NULL} // Terminator
539
+ };
540
+
541
+ static DWORD CreatePseudoFileName(HANDLE hFile, TFileEntry * pFileEntry, char * szFileName)
542
+ {
543
+ TMPQFile * hf = (TMPQFile *)hFile; // MPQ File handle
544
+ DWORD FirstBytes[2] = {0, 0}; // The first 4 bytes of the file
545
+ DWORD dwBytesRead = 0;
546
+ DWORD dwFilePos; // Saved file position
547
+ char szPseudoName[20];
548
+
549
+ // Read the first 2 DWORDs bytes from the file
550
+ dwFilePos = SFileSetFilePointer(hFile, 0, NULL, FILE_CURRENT);
551
+ SFileReadFile(hFile, FirstBytes, sizeof(FirstBytes), &dwBytesRead, NULL);
552
+ SFileSetFilePointer(hFile, dwFilePos, NULL, FILE_BEGIN);
553
+
554
+ // If we read at least 8 bytes
555
+ if(dwBytesRead == sizeof(FirstBytes))
556
+ {
557
+ // Make sure that the array is properly BSWAP-ed
558
+ BSWAP_ARRAY32_UNSIGNED(FirstBytes, sizeof(FirstBytes));
559
+
560
+ // Try to guess file extension from those 2 DWORDs
561
+ for(size_t i = 0; data2ext[i].szExt != NULL; i++)
562
+ {
563
+ if((FirstBytes[0] & data2ext[i].dwOffset00Mask) == data2ext[i].dwOffset00Data &&
564
+ (FirstBytes[1] & data2ext[i].dwOffset04Mask) == data2ext[i].dwOffset04Data)
565
+ {
566
+ // Format the pseudo-name
567
+ StringCreatePseudoFileName(szPseudoName, _countof(szPseudoName), (unsigned int)(pFileEntry - hf->ha->pFileTable), data2ext[i].szExt);
568
+
569
+ // Save the pseudo-name in the file entry as well
570
+ AllocateFileName(hf->ha, pFileEntry, szPseudoName);
571
+
572
+ // If the caller wants to copy the file name, do it
573
+ if(szFileName != NULL)
574
+ strcpy(szFileName, szPseudoName);
575
+ return ERROR_SUCCESS;
576
+ }
577
+ }
578
+ }
579
+
580
+ return ERROR_CAN_NOT_COMPLETE;
581
+ }
582
+
583
+ bool WINAPI SFileGetFileName(HANDLE hFile, char * szFileName)
584
+ {
585
+ TMPQFile * hf;
586
+ DWORD dwErrCode = ERROR_INVALID_HANDLE;
587
+
588
+ // Check valid parameters
589
+ if((hf = IsValidFileHandle(hFile)) != NULL)
590
+ {
591
+ TFileEntry * pFileEntry = hf->pFileEntry;
592
+
593
+ // For MPQ files, retrieve the file name from the file entry
594
+ if(hf->pStream == NULL)
595
+ {
596
+ if(pFileEntry != NULL)
597
+ {
598
+ // If the file name is not there yet, create a pseudo name
599
+ if(pFileEntry->szFileName == NULL)
600
+ dwErrCode = CreatePseudoFileName(hFile, pFileEntry, szFileName);
601
+
602
+ // Copy the file name to the output buffer, if any
603
+ if(pFileEntry->szFileName && szFileName)
604
+ {
605
+ strcpy(szFileName, pFileEntry->szFileName);
606
+ dwErrCode = ERROR_SUCCESS;
607
+ }
608
+ }
609
+ }
610
+
611
+ // For local files, copy the file name from the stream
612
+ else
613
+ {
614
+ if(szFileName != NULL)
615
+ {
616
+ const TCHAR * szStreamName = FileStream_GetFileName(hf->pStream);
617
+ StringCopy(szFileName, MAX_PATH, szStreamName);
618
+ }
619
+ dwErrCode = ERROR_SUCCESS;
620
+ }
621
+ }
622
+
623
+ if(dwErrCode != ERROR_SUCCESS)
624
+ SetLastError(dwErrCode);
625
+ return (dwErrCode == ERROR_SUCCESS);
626
+ }
627
+