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,750 @@
1
+ /*****************************************************************************/
2
+ /* SListFile.cpp Copyright (c) Ladislav Zezula 2004 */
3
+ /*---------------------------------------------------------------------------*/
4
+ /* Description: */
5
+ /*---------------------------------------------------------------------------*/
6
+ /* Date Ver Who Comment */
7
+ /* -------- ---- --- ------- */
8
+ /* 12.06.04 1.00 Lad The first version of SListFile.cpp */
9
+ /*****************************************************************************/
10
+
11
+ #define __STORMLIB_SELF__
12
+ #include "StormLib.h"
13
+ #include "StormCommon.h"
14
+ #include <assert.h>
15
+
16
+ //-----------------------------------------------------------------------------
17
+ // Listfile entry structure
18
+
19
+ #define CACHE_BUFFER_SIZE 0x1000 // Size of the cache buffer
20
+ #define MAX_LISTFILE_SIZE 0x8000000 // Maximum accepted listfile size is 128 MB
21
+
22
+ union TListFileHandle
23
+ {
24
+ TFileStream * pStream; // Opened local file
25
+ HANDLE hFile; // Opened MPQ file
26
+ };
27
+
28
+ struct TListFileCache
29
+ {
30
+ char * szWildCard; // Self-relative pointer to file mask
31
+ LPBYTE pBegin; // The begin of the listfile cache
32
+ LPBYTE pPos; // Current position in the cache
33
+ LPBYTE pEnd; // The last character in the file cache
34
+ DWORD dwFlags; // Flags from TMPQArchive
35
+
36
+ // char szWildCard[wildcard_length]; // Followed by the name mask (if any)
37
+ // char szListFile[listfile_length]; // Followed by the listfile (if any)
38
+ };
39
+
40
+ typedef bool (*LOAD_LISTFILE)(TListFileHandle * pHandle, void * pvBuffer, DWORD cbBuffer, LPDWORD pdwBytesRead);
41
+
42
+ //-----------------------------------------------------------------------------
43
+ // Local functions (cache)
44
+
45
+ // In SFileFindFile.cll
46
+ bool SFileCheckWildCard(const char * szString, const char * szWildCard);
47
+
48
+ static char * CopyListLine(char * szListLine, const char * szFileName)
49
+ {
50
+ // Copy the string
51
+ while(szFileName[0] != 0)
52
+ *szListLine++ = *szFileName++;
53
+
54
+ // Append the end-of-line
55
+ *szListLine++ = 0x0D;
56
+ *szListLine++ = 0x0A;
57
+ return szListLine;
58
+ }
59
+
60
+ static bool LoadListFile_Stream(TListFileHandle * pHandle, void * pvBuffer, DWORD cbBuffer, LPDWORD pdwBytesRead)
61
+ {
62
+ ULONGLONG ByteOffset = 0;
63
+ bool bResult;
64
+
65
+ bResult = FileStream_Read(pHandle->pStream, &ByteOffset, pvBuffer, cbBuffer);
66
+ if(bResult)
67
+ *pdwBytesRead = cbBuffer;
68
+ return bResult;
69
+ }
70
+
71
+ static bool LoadListFile_MPQ(TListFileHandle * pHandle, void * pvBuffer, DWORD cbBuffer, LPDWORD pdwBytesRead)
72
+ {
73
+ return SFileReadFile(pHandle->hFile, pvBuffer, cbBuffer, pdwBytesRead, NULL);
74
+ }
75
+
76
+ static bool FreeListFileCache(TListFileCache * pCache)
77
+ {
78
+ // Valid parameter check
79
+ if(pCache != NULL)
80
+ STORM_FREE(pCache);
81
+ return true;
82
+ }
83
+
84
+ static TListFileCache * CreateListFileCache(
85
+ LOAD_LISTFILE PfnLoadFile,
86
+ TListFileHandle * pHandle,
87
+ const char * szWildCard,
88
+ DWORD dwFileSize,
89
+ DWORD dwMaxSize,
90
+ DWORD dwFlags)
91
+ {
92
+ TListFileCache * pCache = NULL;
93
+ size_t cchWildCardAligned = 0;
94
+ size_t cchWildCard = 0;
95
+ DWORD dwBytesRead = 0;
96
+
97
+ // Get the amount of bytes that need to be allocated
98
+ if(dwFileSize == 0 || dwFileSize > dwMaxSize)
99
+ return NULL;
100
+
101
+ // Append buffer for name mask, if any
102
+ if(szWildCard != NULL)
103
+ {
104
+ cchWildCard = strlen(szWildCard) + 1;
105
+ cchWildCardAligned = (cchWildCard + 3) & 0xFFFFFFFC;
106
+ }
107
+
108
+ // Allocate cache for one file block
109
+ pCache = (TListFileCache *)STORM_ALLOC(BYTE, sizeof(TListFileCache) + cchWildCardAligned + dwFileSize + 1);
110
+ if(pCache != NULL)
111
+ {
112
+ // Clear the entire structure
113
+ memset(pCache, 0, sizeof(TListFileCache) + cchWildCard);
114
+ pCache->dwFlags = dwFlags;
115
+
116
+ // Shall we copy the mask?
117
+ if(cchWildCard != 0)
118
+ {
119
+ pCache->szWildCard = (char *)(pCache + 1);
120
+ memcpy(pCache->szWildCard, szWildCard, cchWildCard);
121
+ }
122
+
123
+ // Fill-in the rest of the cache pointers
124
+ pCache->pBegin = (LPBYTE)(pCache + 1) + cchWildCardAligned;
125
+
126
+ // Load the entire listfile to the cache
127
+ PfnLoadFile(pHandle, pCache->pBegin, dwFileSize, &dwBytesRead);
128
+ if(dwBytesRead != 0)
129
+ {
130
+ // Allocate pointers
131
+ pCache->pPos = pCache->pBegin;
132
+ pCache->pEnd = pCache->pBegin + dwBytesRead;
133
+ }
134
+ else
135
+ {
136
+ FreeListFileCache(pCache);
137
+ pCache = NULL;
138
+ }
139
+ }
140
+
141
+ // Return the cache
142
+ return pCache;
143
+ }
144
+
145
+ static TListFileCache * CreateListFileCache(
146
+ HANDLE hMpq,
147
+ const TCHAR * szListFile,
148
+ const char * szWildCard,
149
+ DWORD dwMaxSize,
150
+ DWORD dwFlags)
151
+ {
152
+ TListFileCache * pCache = NULL;
153
+ TListFileHandle ListHandle = {NULL};
154
+
155
+ // Put default value to dwMaxSize
156
+ if(dwMaxSize == 0)
157
+ dwMaxSize = MAX_LISTFILE_SIZE;
158
+
159
+ // Internal listfile: hMPQ must be non NULL and szListFile must be NULL.
160
+ // We load the MPQ::(listfile) file
161
+ if(hMpq != NULL && szListFile == NULL)
162
+ {
163
+ DWORD dwFileSize = 0;
164
+
165
+ // Open the file from the MPQ
166
+ if(SFileOpenFileEx(hMpq, LISTFILE_NAME, 0, &ListHandle.hFile))
167
+ {
168
+ // Get the file size and create the listfile cache
169
+ dwFileSize = SFileGetFileSize(ListHandle.hFile, NULL);
170
+ pCache = CreateListFileCache(LoadListFile_MPQ, &ListHandle, szWildCard, dwFileSize, dwMaxSize, dwFlags);
171
+
172
+ // Close the MPQ file
173
+ SFileCloseFile(ListHandle.hFile);
174
+ }
175
+
176
+ // Return the loaded cache
177
+ return pCache;
178
+ }
179
+
180
+ // External listfile: hMpq must be NULL and szListFile must be non-NULL.
181
+ // We load the file using TFileStream
182
+ if(hMpq == NULL && szListFile != NULL)
183
+ {
184
+ ULONGLONG FileSize = 0;
185
+
186
+ // Open the local file
187
+ ListHandle.pStream = FileStream_OpenFile(szListFile, STREAM_FLAG_READ_ONLY);
188
+ if(ListHandle.pStream != NULL)
189
+ {
190
+ // Verify the file size
191
+ FileStream_GetSize(ListHandle.pStream, &FileSize);
192
+ if(0 < FileSize && FileSize < dwMaxSize)
193
+ {
194
+ pCache = CreateListFileCache(LoadListFile_Stream, &ListHandle, szWildCard, (DWORD)FileSize, dwMaxSize, dwFlags);
195
+ }
196
+
197
+ // Close the stream
198
+ FileStream_Close(ListHandle.pStream);
199
+ }
200
+
201
+ // Return the loaded cache
202
+ return pCache;
203
+ }
204
+
205
+ // This combination should never happen
206
+ SetLastError(ERROR_INVALID_PARAMETER);
207
+ assert(false);
208
+ return NULL;
209
+ }
210
+
211
+ #ifdef _DEBUG
212
+ /*
213
+ TMPQNameCache * CreateNameCache(HANDLE hListFile, const char * szSearchMask)
214
+ {
215
+ TMPQNameCache * pNameCache;
216
+ char * szCachePointer;
217
+ size_t cbToAllocate;
218
+ size_t nMaskLength = 1;
219
+ DWORD dwBytesRead = 0;
220
+ DWORD dwFileSize;
221
+
222
+ // Get the size of the listfile. Ignore zero or too long ones
223
+ dwFileSize = SFileGetFileSize(hListFile, NULL);
224
+ if(dwFileSize == 0 || dwFileSize > MAX_LISTFILE_SIZE)
225
+ return NULL;
226
+
227
+ // Get the length of the search mask
228
+ if(szSearchMask == NULL)
229
+ szSearchMask = "*";
230
+ nMaskLength = strlen(szSearchMask) + 1;
231
+
232
+ // Allocate the name cache
233
+ cbToAllocate = sizeof(TMPQNameCache) + nMaskLength + dwFileSize + 1;
234
+ pNameCache = (TMPQNameCache *)STORM_ALLOC(BYTE, cbToAllocate);
235
+ if(pNameCache != NULL)
236
+ {
237
+ // Initialize the name cache
238
+ memset(pNameCache, 0, sizeof(TMPQNameCache));
239
+ pNameCache->TotalCacheSize = (DWORD)(nMaskLength + dwFileSize + 1);
240
+ szCachePointer = (char *)(pNameCache + 1);
241
+
242
+ // Copy the search mask, if any
243
+ memcpy(szCachePointer, szSearchMask, nMaskLength);
244
+ pNameCache->FirstNameOffset = (DWORD)nMaskLength;
245
+ pNameCache->FreeSpaceOffset = (DWORD)nMaskLength;
246
+
247
+ // Read the listfile itself
248
+ SFileSetFilePointer(hListFile, 0, NULL, FILE_BEGIN);
249
+ SFileReadFile(hListFile, szCachePointer + nMaskLength, dwFileSize, &dwBytesRead, NULL);
250
+
251
+ // If nothing has been read from the listfile, clear the cache
252
+ if(dwBytesRead == 0)
253
+ {
254
+ STORM_FREE(pNameCache);
255
+ return NULL;
256
+ }
257
+
258
+ // Move the free space offset
259
+ pNameCache->FreeSpaceOffset = pNameCache->FirstNameOffset + dwBytesRead + 1;
260
+ szCachePointer[nMaskLength + dwBytesRead] = 0;
261
+ }
262
+
263
+ return pNameCache;
264
+ }
265
+
266
+ static void FreeNameCache(TMPQNameCache * pNameCache)
267
+ {
268
+ if(pNameCache != NULL)
269
+ STORM_FREE(pNameCache);
270
+ pNameCache = NULL;
271
+ }
272
+ */
273
+ #endif // _DEBUG
274
+
275
+ static char * ReadListFileLine(TListFileCache * pCache, size_t * PtrLength)
276
+ {
277
+ LPBYTE pbLineBegin;
278
+ LPBYTE pbLineEnd;
279
+
280
+ // Skip newlines. Keep spaces and tabs, as they can be a legal part of the file name
281
+ while(pCache->pPos < pCache->pEnd && (pCache->pPos[0] == 0x0A || pCache->pPos[0] == 0x0D))
282
+ pCache->pPos++;
283
+
284
+ // Set the line begin and end
285
+ if(pCache->pPos >= pCache->pEnd)
286
+ return NULL;
287
+ pbLineBegin = pbLineEnd = pCache->pPos;
288
+
289
+ // Find the end of the line
290
+ while(pCache->pPos < pCache->pEnd && pCache->pPos[0] != 0x0A && pCache->pPos[0] != 0x0D)
291
+ pCache->pPos++;
292
+
293
+ // Remember the end of the line
294
+ pbLineEnd = pCache->pPos++;
295
+ pbLineEnd[0] = 0;
296
+
297
+ // Give the line to the caller
298
+ if(PtrLength != NULL)
299
+ PtrLength[0] = (size_t)(pbLineEnd - pbLineBegin);
300
+ return (char *)pbLineBegin;
301
+ }
302
+
303
+ static int STORMLIB_CDECL CompareFileNodes(const void * p1, const void * p2)
304
+ {
305
+ char * szFileName1 = *(char **)p1;
306
+ char * szFileName2 = *(char **)p2;
307
+
308
+ return _stricmp(szFileName1, szFileName2);
309
+ }
310
+
311
+ static LPBYTE CreateListFile(TMPQArchive * ha, DWORD * pcbListFile)
312
+ {
313
+ TFileEntry * pFileTableEnd = ha->pFileTable + ha->dwFileTableSize;
314
+ TFileEntry * pFileEntry;
315
+ char ** SortTable = NULL;
316
+ char * szListFile = NULL;
317
+ char * szListLine;
318
+ size_t nFileNodes = 0;
319
+ size_t cbListFile = 0;
320
+ size_t nIndex0;
321
+ size_t nIndex1;
322
+
323
+ // Allocate the table for sorting listfile
324
+ SortTable = STORM_ALLOC(char*, ha->dwFileTableSize);
325
+ if(SortTable == NULL)
326
+ return NULL;
327
+
328
+ // Construct the sort table
329
+ // Note: in MPQs with multiple locale versions of the same file,
330
+ // this code causes adding multiple listfile entries.
331
+ // They will get removed after the listfile sorting
332
+ for(pFileEntry = ha->pFileTable; pFileEntry < pFileTableEnd; pFileEntry++)
333
+ {
334
+ // Only take existing items
335
+ if((pFileEntry->dwFlags & MPQ_FILE_EXISTS) && pFileEntry->szFileName != NULL)
336
+ {
337
+ // Ignore pseudo-names and internal names
338
+ if(!IsPseudoFileName(pFileEntry->szFileName, NULL) && !IsInternalMpqFileName(pFileEntry->szFileName))
339
+ {
340
+ SortTable[nFileNodes++] = pFileEntry->szFileName;
341
+ }
342
+ }
343
+ }
344
+
345
+ // Remove duplicities
346
+ if(nFileNodes > 0)
347
+ {
348
+ // Sort the table
349
+ qsort(SortTable, nFileNodes, sizeof(char *), CompareFileNodes);
350
+
351
+ // Count the 0-th item
352
+ cbListFile += strlen(SortTable[0]) + 2;
353
+
354
+ // Walk through the items and only use the ones that are not duplicated
355
+ for(nIndex0 = 0, nIndex1 = 1; nIndex1 < nFileNodes; nIndex1++)
356
+ {
357
+ // If the next file node is different, we will include it to the result listfile
358
+ if(_stricmp(SortTable[nIndex1], SortTable[nIndex0]) != 0)
359
+ {
360
+ cbListFile += strlen(SortTable[nIndex1]) + 2;
361
+ nIndex0 = nIndex1;
362
+ }
363
+ }
364
+
365
+ // Now allocate buffer for the entire listfile
366
+ szListFile = szListLine = STORM_ALLOC(char, cbListFile + 1);
367
+ if(szListFile != NULL)
368
+ {
369
+ // Copy the 0-th item
370
+ szListLine = CopyListLine(szListLine, SortTable[0]);
371
+
372
+ // Walk through the items and only use the ones that are not duplicated
373
+ for(nIndex0 = 0, nIndex1 = 1; nIndex1 < nFileNodes; nIndex1++)
374
+ {
375
+ // If the next file node is different, we will include it to the result listfile
376
+ if(_stricmp(SortTable[nIndex1], SortTable[nIndex0]) != 0)
377
+ {
378
+ // Copy the listfile line
379
+ szListLine = CopyListLine(szListLine, SortTable[nIndex1]);
380
+ nIndex0 = nIndex1;
381
+ }
382
+ }
383
+
384
+ // Sanity check - does the size match?
385
+ assert((size_t)(szListLine - szListFile) == cbListFile);
386
+ }
387
+ }
388
+ else
389
+ {
390
+ szListFile = STORM_ALLOC(char, 1);
391
+ cbListFile = 0;
392
+ }
393
+
394
+ // Free the sort table
395
+ STORM_FREE(SortTable);
396
+
397
+ // Give away the listfile
398
+ if(pcbListFile != NULL)
399
+ *pcbListFile = (DWORD)cbListFile;
400
+ return (LPBYTE)szListFile;
401
+ }
402
+
403
+ //-----------------------------------------------------------------------------
404
+ // Local functions (listfile nodes)
405
+
406
+ // Adds a name into the list of all names. For each locale in the MPQ,
407
+ // one entry will be created
408
+ // If the file name is already there, does nothing.
409
+ static DWORD SListFileCreateNodeForAllLocales(TMPQArchive * ha, const char * szFileName)
410
+ {
411
+ TFileEntry * pFileEntry;
412
+ TMPQHash * pHashEnd;
413
+ TMPQHash * pHash;
414
+ DWORD dwName1;
415
+ DWORD dwName2;
416
+
417
+ // If we have HET table, use that one
418
+ if(ha->pHetTable != NULL)
419
+ {
420
+ pFileEntry = GetFileEntryLocale(ha, szFileName, 0);
421
+ if(pFileEntry != NULL)
422
+ {
423
+ // Allocate file name for the file entry
424
+ AllocateFileName(ha, pFileEntry, szFileName);
425
+ }
426
+
427
+ return ERROR_SUCCESS;
428
+ }
429
+
430
+ // If we have hash table, we use it
431
+ if(ha->pHashTable != NULL)
432
+ {
433
+ // Get the end of the hash table and both names
434
+ pHashEnd = ha->pHashTable + ha->pHeader->dwHashTableSize;
435
+ dwName1 = ha->pfnHashString(szFileName, MPQ_HASH_NAME_A);
436
+ dwName2 = ha->pfnHashString(szFileName, MPQ_HASH_NAME_B);
437
+
438
+ // Some protectors set very high hash table size (0x00400000 items or more)
439
+ // in order to make this process very slow. We will ignore items
440
+ // in the hash table that would be beyond the end of the file.
441
+ // Example MPQ: MPQ_2022_v1_Sniper.scx
442
+ if(ha->dwFlags & MPQ_FLAG_HASH_TABLE_CUT)
443
+ pHashEnd = ha->pHashTable + (ha->dwRealHashTableSize / sizeof(TMPQHash));
444
+
445
+ // Go through the hash table and put the name in each item that has the same name pair
446
+ for(pHash = ha->pHashTable; pHash < pHashEnd; pHash++)
447
+ {
448
+ if(pHash->dwName1 == dwName1 && pHash->dwName2 == dwName2 && MPQ_BLOCK_INDEX(pHash) < ha->dwFileTableSize)
449
+ {
450
+ // Allocate file name for the file entry
451
+ AllocateFileName(ha, ha->pFileTable + MPQ_BLOCK_INDEX(pHash), szFileName);
452
+ }
453
+ }
454
+
455
+ // Go while we found something
456
+ //pFirstHash = pHash = GetFirstHashEntry(ha, szFileName);
457
+ //while(pHash != NULL)
458
+ //{
459
+ // // Allocate file name for the file entry
460
+ // AllocateFileName(ha, ha->pFileTable + MPQ_BLOCK_INDEX(pHash), szFileName);
461
+
462
+ // // Now find the next language version of the file
463
+ // pHash = GetNextHashEntry(ha, pFirstHash, pHash);
464
+ //}
465
+
466
+ return ERROR_SUCCESS;
467
+ }
468
+
469
+ return ERROR_CAN_NOT_COMPLETE;
470
+ }
471
+
472
+ // Saves the whole listfile to the MPQ
473
+ DWORD SListFileSaveToMpq(TMPQArchive * ha)
474
+ {
475
+ TMPQFile * hf = NULL;
476
+ LPBYTE pbListFile;
477
+ DWORD cbListFile = 0;
478
+ DWORD dwErrCode = ERROR_SUCCESS;
479
+
480
+ // Only save the listfile if we should do so
481
+ if(ha->dwFileFlags1 != 0)
482
+ {
483
+ // At this point, we expect to have at least one reserved entry in the file table
484
+ assert(ha->dwFlags & MPQ_FLAG_LISTFILE_NEW);
485
+ assert(ha->dwReservedFiles > 0);
486
+
487
+ // Create the raw data that is to be written to (listfile)
488
+ // Note: Creating the raw data before the (listfile) has been created in the MPQ
489
+ // causes that the name of the listfile will not be included in the listfile itself.
490
+ // That is OK, because (listfile) in Blizzard MPQs does not contain it either.
491
+ pbListFile = CreateListFile(ha, &cbListFile);
492
+ if(pbListFile != NULL)
493
+ {
494
+ // Determine the real flags for (listfile)
495
+ if(ha->dwFileFlags1 == MPQ_FILE_DEFAULT_INTERNAL)
496
+ ha->dwFileFlags1 = GetDefaultSpecialFileFlags(cbListFile, ha->pHeader->wFormatVersion);
497
+
498
+ // Create the listfile in the MPQ
499
+ dwErrCode = SFileAddFile_Init(ha, LISTFILE_NAME,
500
+ 0,
501
+ cbListFile,
502
+ LANG_NEUTRAL,
503
+ ha->dwFileFlags1 | MPQ_FILE_REPLACEEXISTING,
504
+ &hf);
505
+
506
+ // Write the listfile raw data to it
507
+ if(dwErrCode == ERROR_SUCCESS)
508
+ {
509
+ // Write the content of the listfile to the MPQ
510
+ dwErrCode = SFileAddFile_Write(hf, pbListFile, cbListFile, MPQ_COMPRESSION_ZLIB);
511
+ SFileAddFile_Finish(hf);
512
+ }
513
+
514
+ // Clear the listfile flags
515
+ ha->dwFlags &= ~(MPQ_FLAG_LISTFILE_NEW | MPQ_FLAG_LISTFILE_NONE);
516
+ ha->dwReservedFiles--;
517
+
518
+ // Free the listfile buffer
519
+ STORM_FREE(pbListFile);
520
+ }
521
+ else
522
+ {
523
+ // If the (listfile) file would be empty, its OK
524
+ dwErrCode = (cbListFile == 0) ? ERROR_SUCCESS : ERROR_NOT_ENOUGH_MEMORY;
525
+ }
526
+ }
527
+
528
+ return dwErrCode;
529
+ }
530
+
531
+ static DWORD SFileAddArbitraryListFile(
532
+ TMPQArchive * ha,
533
+ HANDLE hMpq,
534
+ const TCHAR * szListFile,
535
+ DWORD dwMaxSize)
536
+ {
537
+ TListFileCache * pCache = NULL;
538
+
539
+ // Create the listfile cache for that file
540
+ pCache = CreateListFileCache(hMpq, szListFile, NULL, dwMaxSize, ha->dwFlags);
541
+ if(pCache != NULL)
542
+ {
543
+ char * szFileName;
544
+ size_t nLength = 0;
545
+
546
+ // Get the next line
547
+ while((szFileName = ReadListFileLine(pCache, &nLength)) != NULL)
548
+ {
549
+ // Add the line to the MPQ
550
+ if(nLength != 0)
551
+ SListFileCreateNodeForAllLocales(ha, szFileName);
552
+ }
553
+
554
+ // Delete the cache
555
+ FreeListFileCache(pCache);
556
+ }
557
+
558
+ return (pCache != NULL) ? ERROR_SUCCESS : ERROR_FILE_CORRUPT;
559
+ }
560
+
561
+ static DWORD SFileAddArbitraryListFile(
562
+ TMPQArchive * ha,
563
+ const char ** listFileEntries,
564
+ DWORD dwEntryCount)
565
+ {
566
+ if(listFileEntries != NULL && dwEntryCount > 0)
567
+ {
568
+ // Get the next line
569
+ for(DWORD dwListFileNum = 0; dwListFileNum < dwEntryCount; dwListFileNum++)
570
+ {
571
+ const char * listFileEntry = listFileEntries[dwListFileNum];
572
+ if(listFileEntry != NULL)
573
+ {
574
+ SListFileCreateNodeForAllLocales(ha, listFileEntry);
575
+ }
576
+ }
577
+ }
578
+
579
+ return (listFileEntries != NULL && dwEntryCount > 0) ? ERROR_SUCCESS : ERROR_INVALID_PARAMETER;
580
+ }
581
+
582
+ static DWORD SFileAddInternalListFile(
583
+ TMPQArchive * ha,
584
+ HANDLE hMpq)
585
+ {
586
+ TMPQHash * pFirstHash;
587
+ TMPQHash * pHash;
588
+ LCID lcSaveLocale = g_lcFileLocale;
589
+ DWORD dwMaxSize = MAX_LISTFILE_SIZE;
590
+ DWORD dwErrCode = ERROR_SUCCESS;
591
+
592
+ // If there is hash table, we need to support multiple listfiles
593
+ // with different locales (BrooDat.mpq)
594
+ if(ha->pHashTable != NULL)
595
+ {
596
+ // If the archive is a malformed map, ignore too large listfiles
597
+ if(STORMLIB_TEST_FLAGS(ha->dwFlags, MPQ_FLAG_MALFORMED | MPQ_FLAG_PATCH, MPQ_FLAG_MALFORMED))
598
+ dwMaxSize = 0x40000;
599
+
600
+ pFirstHash = pHash = GetFirstHashEntry(ha, LISTFILE_NAME);
601
+ while(dwErrCode == ERROR_SUCCESS && pHash != NULL)
602
+ {
603
+ // Set the prefered locale to that from list file
604
+ SFileSetLocale(SFILE_MAKE_LCID(pHash->Locale, pHash->Platform));
605
+
606
+ // Add that listfile
607
+ dwErrCode = SFileAddArbitraryListFile(ha, hMpq, NULL, dwMaxSize);
608
+
609
+ // Move to the next hash
610
+ pHash = GetNextHashEntry(ha, pFirstHash, pHash);
611
+ }
612
+
613
+ // Restore the original locale
614
+ SFileSetLocale(lcSaveLocale);
615
+ }
616
+ else
617
+ {
618
+ // Add the single listfile
619
+ dwErrCode = SFileAddArbitraryListFile(ha, hMpq, NULL, dwMaxSize);
620
+ }
621
+
622
+ // Return the result of the operation
623
+ return dwErrCode;
624
+ }
625
+
626
+ static bool DoListFileSearch(TListFileCache * pCache, SFILE_FIND_DATA * lpFindFileData)
627
+ {
628
+ // Check for the valid search handle
629
+ if(pCache != NULL)
630
+ {
631
+ char * szFileName;
632
+ size_t nLength = 0;
633
+
634
+ // Get the next line
635
+ while((szFileName = ReadListFileLine(pCache, &nLength)) != NULL)
636
+ {
637
+ // Check search mask
638
+ if(nLength != 0 && SFileCheckWildCard(szFileName, pCache->szWildCard))
639
+ {
640
+ if(nLength >= sizeof(lpFindFileData->cFileName))
641
+ nLength = sizeof(lpFindFileData->cFileName) - 1;
642
+
643
+ memcpy(lpFindFileData->cFileName, szFileName, nLength);
644
+ lpFindFileData->cFileName[nLength] = 0;
645
+ return true;
646
+ }
647
+ }
648
+ }
649
+
650
+ // No more files
651
+ memset(lpFindFileData, 0, sizeof(SFILE_FIND_DATA));
652
+ SetLastError(ERROR_NO_MORE_FILES);
653
+ return false;
654
+ }
655
+
656
+ //-----------------------------------------------------------------------------
657
+ // File functions
658
+
659
+ // Adds a listfile into the MPQ archive.
660
+ DWORD WINAPI SFileAddListFile(HANDLE hMpq, const TCHAR * szListFile)
661
+ {
662
+ TMPQArchive * ha = (TMPQArchive *)hMpq;
663
+ DWORD dwErrCode = ERROR_SUCCESS;
664
+
665
+ // Add the listfile for each MPQ in the patch chain
666
+ while(ha != NULL)
667
+ {
668
+ if(szListFile != NULL)
669
+ dwErrCode = SFileAddArbitraryListFile(ha, NULL, szListFile, MAX_LISTFILE_SIZE);
670
+ else
671
+ dwErrCode = SFileAddInternalListFile(ha, hMpq);
672
+
673
+ // Also, add three special files to the listfile:
674
+ // (listfile) itself, (attributes) and (signature)
675
+ SListFileCreateNodeForAllLocales(ha, LISTFILE_NAME);
676
+ SListFileCreateNodeForAllLocales(ha, SIGNATURE_NAME);
677
+ SListFileCreateNodeForAllLocales(ha, ATTRIBUTES_NAME);
678
+
679
+ // Move to the next archive in the chain
680
+ ha = ha->haPatch;
681
+ }
682
+
683
+ return dwErrCode;
684
+ }
685
+
686
+ DWORD WINAPI SFileAddListFileEntries(HANDLE hMpq, const char ** listFileEntries, DWORD dwEntryCount)
687
+ {
688
+ TMPQArchive * ha = (TMPQArchive *)hMpq;
689
+ DWORD dwErrCode = ERROR_SUCCESS;
690
+
691
+ // Add the listfile for each MPQ in the patch chain
692
+ while(ha != NULL)
693
+ {
694
+ if(listFileEntries != NULL && dwEntryCount > 0)
695
+ dwErrCode = SFileAddArbitraryListFile(ha, listFileEntries, dwEntryCount);
696
+ else
697
+ dwErrCode = SFileAddInternalListFile(ha, hMpq);
698
+
699
+ // Also, add three special files to the listfile:
700
+ // (listfile) itself, (attributes) and (signature)
701
+ SListFileCreateNodeForAllLocales(ha, LISTFILE_NAME);
702
+ SListFileCreateNodeForAllLocales(ha, SIGNATURE_NAME);
703
+ SListFileCreateNodeForAllLocales(ha, ATTRIBUTES_NAME);
704
+
705
+ // Move to the next archive in the chain
706
+ ha = ha->haPatch;
707
+ }
708
+
709
+ return dwErrCode;
710
+ }
711
+
712
+ //-----------------------------------------------------------------------------
713
+ // Enumerating files in listfile
714
+
715
+ HANDLE WINAPI SListFileFindFirstFile(HANDLE hMpq, const TCHAR * szListFile, const char * szMask, SFILE_FIND_DATA * lpFindFileData)
716
+ {
717
+ TListFileCache * pCache = NULL;
718
+
719
+ // Initialize the structure with zeros
720
+ memset(lpFindFileData, 0, sizeof(SFILE_FIND_DATA));
721
+
722
+ // Open the local/internal listfile
723
+ pCache = CreateListFileCache(hMpq, szListFile, szMask, 0, 0);
724
+ if(pCache != NULL)
725
+ {
726
+ if(!DoListFileSearch(pCache, lpFindFileData))
727
+ {
728
+ memset(lpFindFileData, 0, sizeof(SFILE_FIND_DATA));
729
+ SetLastError(ERROR_NO_MORE_FILES);
730
+ FreeListFileCache(pCache);
731
+ pCache = NULL;
732
+ }
733
+ }
734
+
735
+ // Return the listfile cache as handle
736
+ return (HANDLE)pCache;
737
+ }
738
+
739
+ bool WINAPI SListFileFindNextFile(HANDLE hFind, SFILE_FIND_DATA * lpFindFileData)
740
+ {
741
+ return DoListFileSearch((TListFileCache *)hFind, lpFindFileData);
742
+ }
743
+
744
+ bool WINAPI SListFileFindClose(HANDLE hFind)
745
+ {
746
+ TListFileCache * pCache = (TListFileCache *)hFind;
747
+
748
+ return FreeListFileCache(pCache);
749
+ }
750
+