1 #ifndef DEBUG_SBOX32_HASH 2 #define DEBUG_SBOX32_HASH 0 3 4 #include "zaphod32_hash.h" 5 6 #if DEBUG_SBOX32_HASH == 1 7 #include <stdio.h> 8 #define SBOX32_WARN6(pat,v0,v1,v2,v3,v4,v5) printf(pat, v0, v1, v2, v3, v4, v5) 9 #define SBOX32_WARN5(pat,v0,v1,v2,v3,v4) printf(pat, v0, v1, v2, v3, v4) 10 #define SBOX32_WARN4(pat,v0,v1,v2,v3) printf(pat, v0, v1, v2, v3) 11 #define SBOX32_WARN3(pat,v0,v1,v2) printf(pat, v0, v1, v2) 12 #define SBOX32_WARN2(pat,v0,v1) printf(pat, v0, v1) 13 #define NOTE3(pat,v0,v1,v2) printf(pat, v0, v1, v2) 14 #elif DEBUG_SBOX32_HASH == 2 15 #define SBOX32_WARN6(pat,v0,v1,v2,v3,v4,v5) 16 #define SBOX32_WARN5(pat,v0,v1,v2,v3,v4) 17 #define SBOX32_WARN4(pat,v0,v1,v2,v3) 18 #define SBOX32_WARN3(pat,v0,v1,v2) 19 #define SBOX32_WARN2(pat,v0,v1) 20 #define NOTE3(pat,v0,v1,v2) printf(pat, v0, v1, v2) 21 #else 22 #define SBOX32_WARN6(pat,v0,v1,v2,v3,v4,v5) 23 #define SBOX32_WARN5(pat,v0,v1,v2,v3,v4) 24 #define SBOX32_WARN4(pat,v0,v1,v2,v3) 25 #define SBOX32_WARN3(pat,v0,v1,v2) 26 #define NOTE3(pat,v0,v1,v2) 27 #define SBOX32_WARN2(pat,v0,v1) 28 #endif 29 30 #ifndef PERL_SEEN_HV_FUNC_H 31 #if !defined(U32) 32 #include <stdint.h> 33 #define U32 uint32_t 34 #endif 35 36 #if !defined(U8) 37 #define U8 unsigned char 38 #endif 39 40 #if !defined(U16) 41 #define U16 uint16_t 42 #endif 43 44 #ifndef STRLEN 45 #define STRLEN int 46 #endif 47 #endif 48 49 #ifndef SBOX32_STATIC_INLINE 50 #ifdef PERL_STATIC_INLINE 51 #define SBOX32_STATIC_INLINE PERL_STATIC_INLINE 52 #else 53 #define SBOX32_STATIC_INLINE static inline 54 #endif 55 #endif 56 57 #ifndef STMT_START 58 #define STMT_START do 59 #define STMT_END while(0) 60 #endif 61 62 /* Find best way to ROTL32/ROTL64 */ 63 #ifndef ROTL32 64 #if defined(_MSC_VER) 65 #include <stdlib.h> /* Microsoft put _rotl declaration in here */ 66 #define ROTL32(x,r) _rotl(x,r) 67 #define ROTR32(x,r) _rotr(x,r) 68 #else 69 /* gcc recognises this code and generates a rotate instruction for CPUs with one */ 70 #define ROTL32(x,r) (((U32)(x) << (r)) | ((U32)(x) >> (32 - (r)))) 71 #define ROTR32(x,r) (((U32)(x) << (32 - (r))) | ((U32)(x) >> (r))) 72 #endif 73 #endif 74 75 #ifndef SBOX32_MAX_LEN 76 #define SBOX32_MAX_LEN 256 77 #endif 78 79 #ifndef SBOX32_STATE_WORDS 80 #define SBOX32_STATE_WORDS (1 + (SBOX32_MAX_LEN * 256)) 81 #define SBOX32_STATE_BYTES (SBOX32_STATE_WORDS * sizeof(U32)) 82 #define SBOX32_STATE_BITS (SBOX32_STATE_BYTES * 8) 83 #endif 84 85 #define SBOX32_MIX4(v0,v1,v2,v3,text) STMT_START { \ 86 SBOX32_WARN5("v0=%08x v1=%08x v2=%08x v3=%08x - SBOX32_MIX4 %s\n", \ 87 (unsigned int)v0, (unsigned int)v1, \ 88 (unsigned int)v2, (unsigned int)v3, text); \ 89 v0 = ROTL32(v0,13) - v3; \ 90 v1 ^= v2; \ 91 v3 = ROTL32(v3, 9) + v1; \ 92 v2 ^= v0; \ 93 v0 = ROTL32(v0,14) ^ v3; \ 94 v1 = ROTL32(v1,25) - v2; \ 95 v3 ^= v1; \ 96 v2 = ROTL32(v2, 4) - v0; \ 97 } STMT_END 98 99 #define SBOX32_MIX3(v0,v1,v2,text) STMT_START { \ 100 SBOX32_WARN4("v0=%08x v1=%08x v2=%08x - SBOX32_MIX3 %s\n", \ 101 (unsigned int)v0,(unsigned int)v1,(unsigned int)v2, text ); \ 102 v0 = ROTL32(v0,16) - v2; \ 103 v1 = ROTR32(v1,13) ^ v2; \ 104 v2 = ROTL32(v2,17) + v1; \ 105 v0 = ROTR32(v0, 2) + v1; \ 106 v1 = ROTR32(v1,17) - v0; \ 107 v2 = ROTR32(v2, 7) ^ v0; \ 108 } STMT_END 109 110 #if SBOX32_MAX_LEN > 256 111 #error "SBOX32_MAX_LEN is set too high!" 112 #elif SBOX32_MAX_LEN == 256 113 #define case_256_SBOX32(hash,state,key) _SBOX32_CASE(256,hash,state,key) 114 #else 115 #define case_256_SBOX32(hash,state,key) /**/ 116 #endif 117 #if SBOX32_MAX_LEN >= 255 118 #define case_255_SBOX32(hash,state,key) _SBOX32_CASE(255,hash,state,key) 119 #else 120 #define case_255_SBOX32(hash,state,key) /**/ 121 #endif 122 #if SBOX32_MAX_LEN >= 254 123 #define case_254_SBOX32(hash,state,key) _SBOX32_CASE(254,hash,state,key) 124 #else 125 #define case_254_SBOX32(hash,state,key) /**/ 126 #endif 127 #if SBOX32_MAX_LEN >= 253 128 #define case_253_SBOX32(hash,state,key) _SBOX32_CASE(253,hash,state,key) 129 #else 130 #define case_253_SBOX32(hash,state,key) /**/ 131 #endif 132 #if SBOX32_MAX_LEN >= 252 133 #define case_252_SBOX32(hash,state,key) _SBOX32_CASE(252,hash,state,key) 134 #else 135 #define case_252_SBOX32(hash,state,key) /**/ 136 #endif 137 #if SBOX32_MAX_LEN >= 251 138 #define case_251_SBOX32(hash,state,key) _SBOX32_CASE(251,hash,state,key) 139 #else 140 #define case_251_SBOX32(hash,state,key) /**/ 141 #endif 142 #if SBOX32_MAX_LEN >= 250 143 #define case_250_SBOX32(hash,state,key) _SBOX32_CASE(250,hash,state,key) 144 #else 145 #define case_250_SBOX32(hash,state,key) /**/ 146 #endif 147 #if SBOX32_MAX_LEN >= 249 148 #define case_249_SBOX32(hash,state,key) _SBOX32_CASE(249,hash,state,key) 149 #else 150 #define case_249_SBOX32(hash,state,key) /**/ 151 #endif 152 #if SBOX32_MAX_LEN >= 248 153 #define case_248_SBOX32(hash,state,key) _SBOX32_CASE(248,hash,state,key) 154 #else 155 #define case_248_SBOX32(hash,state,key) /**/ 156 #endif 157 #if SBOX32_MAX_LEN >= 247 158 #define case_247_SBOX32(hash,state,key) _SBOX32_CASE(247,hash,state,key) 159 #else 160 #define case_247_SBOX32(hash,state,key) /**/ 161 #endif 162 #if SBOX32_MAX_LEN >= 246 163 #define case_246_SBOX32(hash,state,key) _SBOX32_CASE(246,hash,state,key) 164 #else 165 #define case_246_SBOX32(hash,state,key) /**/ 166 #endif 167 #if SBOX32_MAX_LEN >= 245 168 #define case_245_SBOX32(hash,state,key) _SBOX32_CASE(245,hash,state,key) 169 #else 170 #define case_245_SBOX32(hash,state,key) /**/ 171 #endif 172 #if SBOX32_MAX_LEN >= 244 173 #define case_244_SBOX32(hash,state,key) _SBOX32_CASE(244,hash,state,key) 174 #else 175 #define case_244_SBOX32(hash,state,key) /**/ 176 #endif 177 #if SBOX32_MAX_LEN >= 243 178 #define case_243_SBOX32(hash,state,key) _SBOX32_CASE(243,hash,state,key) 179 #else 180 #define case_243_SBOX32(hash,state,key) /**/ 181 #endif 182 #if SBOX32_MAX_LEN >= 242 183 #define case_242_SBOX32(hash,state,key) _SBOX32_CASE(242,hash,state,key) 184 #else 185 #define case_242_SBOX32(hash,state,key) /**/ 186 #endif 187 #if SBOX32_MAX_LEN >= 241 188 #define case_241_SBOX32(hash,state,key) _SBOX32_CASE(241,hash,state,key) 189 #else 190 #define case_241_SBOX32(hash,state,key) /**/ 191 #endif 192 #if SBOX32_MAX_LEN >= 240 193 #define case_240_SBOX32(hash,state,key) _SBOX32_CASE(240,hash,state,key) 194 #else 195 #define case_240_SBOX32(hash,state,key) /**/ 196 #endif 197 #if SBOX32_MAX_LEN >= 239 198 #define case_239_SBOX32(hash,state,key) _SBOX32_CASE(239,hash,state,key) 199 #else 200 #define case_239_SBOX32(hash,state,key) /**/ 201 #endif 202 #if SBOX32_MAX_LEN >= 238 203 #define case_238_SBOX32(hash,state,key) _SBOX32_CASE(238,hash,state,key) 204 #else 205 #define case_238_SBOX32(hash,state,key) /**/ 206 #endif 207 #if SBOX32_MAX_LEN >= 237 208 #define case_237_SBOX32(hash,state,key) _SBOX32_CASE(237,hash,state,key) 209 #else 210 #define case_237_SBOX32(hash,state,key) /**/ 211 #endif 212 #if SBOX32_MAX_LEN >= 236 213 #define case_236_SBOX32(hash,state,key) _SBOX32_CASE(236,hash,state,key) 214 #else 215 #define case_236_SBOX32(hash,state,key) /**/ 216 #endif 217 #if SBOX32_MAX_LEN >= 235 218 #define case_235_SBOX32(hash,state,key) _SBOX32_CASE(235,hash,state,key) 219 #else 220 #define case_235_SBOX32(hash,state,key) /**/ 221 #endif 222 #if SBOX32_MAX_LEN >= 234 223 #define case_234_SBOX32(hash,state,key) _SBOX32_CASE(234,hash,state,key) 224 #else 225 #define case_234_SBOX32(hash,state,key) /**/ 226 #endif 227 #if SBOX32_MAX_LEN >= 233 228 #define case_233_SBOX32(hash,state,key) _SBOX32_CASE(233,hash,state,key) 229 #else 230 #define case_233_SBOX32(hash,state,key) /**/ 231 #endif 232 #if SBOX32_MAX_LEN >= 232 233 #define case_232_SBOX32(hash,state,key) _SBOX32_CASE(232,hash,state,key) 234 #else 235 #define case_232_SBOX32(hash,state,key) /**/ 236 #endif 237 #if SBOX32_MAX_LEN >= 231 238 #define case_231_SBOX32(hash,state,key) _SBOX32_CASE(231,hash,state,key) 239 #else 240 #define case_231_SBOX32(hash,state,key) /**/ 241 #endif 242 #if SBOX32_MAX_LEN >= 230 243 #define case_230_SBOX32(hash,state,key) _SBOX32_CASE(230,hash,state,key) 244 #else 245 #define case_230_SBOX32(hash,state,key) /**/ 246 #endif 247 #if SBOX32_MAX_LEN >= 229 248 #define case_229_SBOX32(hash,state,key) _SBOX32_CASE(229,hash,state,key) 249 #else 250 #define case_229_SBOX32(hash,state,key) /**/ 251 #endif 252 #if SBOX32_MAX_LEN >= 228 253 #define case_228_SBOX32(hash,state,key) _SBOX32_CASE(228,hash,state,key) 254 #else 255 #define case_228_SBOX32(hash,state,key) /**/ 256 #endif 257 #if SBOX32_MAX_LEN >= 227 258 #define case_227_SBOX32(hash,state,key) _SBOX32_CASE(227,hash,state,key) 259 #else 260 #define case_227_SBOX32(hash,state,key) /**/ 261 #endif 262 #if SBOX32_MAX_LEN >= 226 263 #define case_226_SBOX32(hash,state,key) _SBOX32_CASE(226,hash,state,key) 264 #else 265 #define case_226_SBOX32(hash,state,key) /**/ 266 #endif 267 #if SBOX32_MAX_LEN >= 225 268 #define case_225_SBOX32(hash,state,key) _SBOX32_CASE(225,hash,state,key) 269 #else 270 #define case_225_SBOX32(hash,state,key) /**/ 271 #endif 272 #if SBOX32_MAX_LEN >= 224 273 #define case_224_SBOX32(hash,state,key) _SBOX32_CASE(224,hash,state,key) 274 #else 275 #define case_224_SBOX32(hash,state,key) /**/ 276 #endif 277 #if SBOX32_MAX_LEN >= 223 278 #define case_223_SBOX32(hash,state,key) _SBOX32_CASE(223,hash,state,key) 279 #else 280 #define case_223_SBOX32(hash,state,key) /**/ 281 #endif 282 #if SBOX32_MAX_LEN >= 222 283 #define case_222_SBOX32(hash,state,key) _SBOX32_CASE(222,hash,state,key) 284 #else 285 #define case_222_SBOX32(hash,state,key) /**/ 286 #endif 287 #if SBOX32_MAX_LEN >= 221 288 #define case_221_SBOX32(hash,state,key) _SBOX32_CASE(221,hash,state,key) 289 #else 290 #define case_221_SBOX32(hash,state,key) /**/ 291 #endif 292 #if SBOX32_MAX_LEN >= 220 293 #define case_220_SBOX32(hash,state,key) _SBOX32_CASE(220,hash,state,key) 294 #else 295 #define case_220_SBOX32(hash,state,key) /**/ 296 #endif 297 #if SBOX32_MAX_LEN >= 219 298 #define case_219_SBOX32(hash,state,key) _SBOX32_CASE(219,hash,state,key) 299 #else 300 #define case_219_SBOX32(hash,state,key) /**/ 301 #endif 302 #if SBOX32_MAX_LEN >= 218 303 #define case_218_SBOX32(hash,state,key) _SBOX32_CASE(218,hash,state,key) 304 #else 305 #define case_218_SBOX32(hash,state,key) /**/ 306 #endif 307 #if SBOX32_MAX_LEN >= 217 308 #define case_217_SBOX32(hash,state,key) _SBOX32_CASE(217,hash,state,key) 309 #else 310 #define case_217_SBOX32(hash,state,key) /**/ 311 #endif 312 #if SBOX32_MAX_LEN >= 216 313 #define case_216_SBOX32(hash,state,key) _SBOX32_CASE(216,hash,state,key) 314 #else 315 #define case_216_SBOX32(hash,state,key) /**/ 316 #endif 317 #if SBOX32_MAX_LEN >= 215 318 #define case_215_SBOX32(hash,state,key) _SBOX32_CASE(215,hash,state,key) 319 #else 320 #define case_215_SBOX32(hash,state,key) /**/ 321 #endif 322 #if SBOX32_MAX_LEN >= 214 323 #define case_214_SBOX32(hash,state,key) _SBOX32_CASE(214,hash,state,key) 324 #else 325 #define case_214_SBOX32(hash,state,key) /**/ 326 #endif 327 #if SBOX32_MAX_LEN >= 213 328 #define case_213_SBOX32(hash,state,key) _SBOX32_CASE(213,hash,state,key) 329 #else 330 #define case_213_SBOX32(hash,state,key) /**/ 331 #endif 332 #if SBOX32_MAX_LEN >= 212 333 #define case_212_SBOX32(hash,state,key) _SBOX32_CASE(212,hash,state,key) 334 #else 335 #define case_212_SBOX32(hash,state,key) /**/ 336 #endif 337 #if SBOX32_MAX_LEN >= 211 338 #define case_211_SBOX32(hash,state,key) _SBOX32_CASE(211,hash,state,key) 339 #else 340 #define case_211_SBOX32(hash,state,key) /**/ 341 #endif 342 #if SBOX32_MAX_LEN >= 210 343 #define case_210_SBOX32(hash,state,key) _SBOX32_CASE(210,hash,state,key) 344 #else 345 #define case_210_SBOX32(hash,state,key) /**/ 346 #endif 347 #if SBOX32_MAX_LEN >= 209 348 #define case_209_SBOX32(hash,state,key) _SBOX32_CASE(209,hash,state,key) 349 #else 350 #define case_209_SBOX32(hash,state,key) /**/ 351 #endif 352 #if SBOX32_MAX_LEN >= 208 353 #define case_208_SBOX32(hash,state,key) _SBOX32_CASE(208,hash,state,key) 354 #else 355 #define case_208_SBOX32(hash,state,key) /**/ 356 #endif 357 #if SBOX32_MAX_LEN >= 207 358 #define case_207_SBOX32(hash,state,key) _SBOX32_CASE(207,hash,state,key) 359 #else 360 #define case_207_SBOX32(hash,state,key) /**/ 361 #endif 362 #if SBOX32_MAX_LEN >= 206 363 #define case_206_SBOX32(hash,state,key) _SBOX32_CASE(206,hash,state,key) 364 #else 365 #define case_206_SBOX32(hash,state,key) /**/ 366 #endif 367 #if SBOX32_MAX_LEN >= 205 368 #define case_205_SBOX32(hash,state,key) _SBOX32_CASE(205,hash,state,key) 369 #else 370 #define case_205_SBOX32(hash,state,key) /**/ 371 #endif 372 #if SBOX32_MAX_LEN >= 204 373 #define case_204_SBOX32(hash,state,key) _SBOX32_CASE(204,hash,state,key) 374 #else 375 #define case_204_SBOX32(hash,state,key) /**/ 376 #endif 377 #if SBOX32_MAX_LEN >= 203 378 #define case_203_SBOX32(hash,state,key) _SBOX32_CASE(203,hash,state,key) 379 #else 380 #define case_203_SBOX32(hash,state,key) /**/ 381 #endif 382 #if SBOX32_MAX_LEN >= 202 383 #define case_202_SBOX32(hash,state,key) _SBOX32_CASE(202,hash,state,key) 384 #else 385 #define case_202_SBOX32(hash,state,key) /**/ 386 #endif 387 #if SBOX32_MAX_LEN >= 201 388 #define case_201_SBOX32(hash,state,key) _SBOX32_CASE(201,hash,state,key) 389 #else 390 #define case_201_SBOX32(hash,state,key) /**/ 391 #endif 392 #if SBOX32_MAX_LEN >= 200 393 #define case_200_SBOX32(hash,state,key) _SBOX32_CASE(200,hash,state,key) 394 #else 395 #define case_200_SBOX32(hash,state,key) /**/ 396 #endif 397 #if SBOX32_MAX_LEN >= 199 398 #define case_199_SBOX32(hash,state,key) _SBOX32_CASE(199,hash,state,key) 399 #else 400 #define case_199_SBOX32(hash,state,key) /**/ 401 #endif 402 #if SBOX32_MAX_LEN >= 198 403 #define case_198_SBOX32(hash,state,key) _SBOX32_CASE(198,hash,state,key) 404 #else 405 #define case_198_SBOX32(hash,state,key) /**/ 406 #endif 407 #if SBOX32_MAX_LEN >= 197 408 #define case_197_SBOX32(hash,state,key) _SBOX32_CASE(197,hash,state,key) 409 #else 410 #define case_197_SBOX32(hash,state,key) /**/ 411 #endif 412 #if SBOX32_MAX_LEN >= 196 413 #define case_196_SBOX32(hash,state,key) _SBOX32_CASE(196,hash,state,key) 414 #else 415 #define case_196_SBOX32(hash,state,key) /**/ 416 #endif 417 #if SBOX32_MAX_LEN >= 195 418 #define case_195_SBOX32(hash,state,key) _SBOX32_CASE(195,hash,state,key) 419 #else 420 #define case_195_SBOX32(hash,state,key) /**/ 421 #endif 422 #if SBOX32_MAX_LEN >= 194 423 #define case_194_SBOX32(hash,state,key) _SBOX32_CASE(194,hash,state,key) 424 #else 425 #define case_194_SBOX32(hash,state,key) /**/ 426 #endif 427 #if SBOX32_MAX_LEN >= 193 428 #define case_193_SBOX32(hash,state,key) _SBOX32_CASE(193,hash,state,key) 429 #else 430 #define case_193_SBOX32(hash,state,key) /**/ 431 #endif 432 #if SBOX32_MAX_LEN >= 192 433 #define case_192_SBOX32(hash,state,key) _SBOX32_CASE(192,hash,state,key) 434 #else 435 #define case_192_SBOX32(hash,state,key) /**/ 436 #endif 437 #if SBOX32_MAX_LEN >= 191 438 #define case_191_SBOX32(hash,state,key) _SBOX32_CASE(191,hash,state,key) 439 #else 440 #define case_191_SBOX32(hash,state,key) /**/ 441 #endif 442 #if SBOX32_MAX_LEN >= 190 443 #define case_190_SBOX32(hash,state,key) _SBOX32_CASE(190,hash,state,key) 444 #else 445 #define case_190_SBOX32(hash,state,key) /**/ 446 #endif 447 #if SBOX32_MAX_LEN >= 189 448 #define case_189_SBOX32(hash,state,key) _SBOX32_CASE(189,hash,state,key) 449 #else 450 #define case_189_SBOX32(hash,state,key) /**/ 451 #endif 452 #if SBOX32_MAX_LEN >= 188 453 #define case_188_SBOX32(hash,state,key) _SBOX32_CASE(188,hash,state,key) 454 #else 455 #define case_188_SBOX32(hash,state,key) /**/ 456 #endif 457 #if SBOX32_MAX_LEN >= 187 458 #define case_187_SBOX32(hash,state,key) _SBOX32_CASE(187,hash,state,key) 459 #else 460 #define case_187_SBOX32(hash,state,key) /**/ 461 #endif 462 #if SBOX32_MAX_LEN >= 186 463 #define case_186_SBOX32(hash,state,key) _SBOX32_CASE(186,hash,state,key) 464 #else 465 #define case_186_SBOX32(hash,state,key) /**/ 466 #endif 467 #if SBOX32_MAX_LEN >= 185 468 #define case_185_SBOX32(hash,state,key) _SBOX32_CASE(185,hash,state,key) 469 #else 470 #define case_185_SBOX32(hash,state,key) /**/ 471 #endif 472 #if SBOX32_MAX_LEN >= 184 473 #define case_184_SBOX32(hash,state,key) _SBOX32_CASE(184,hash,state,key) 474 #else 475 #define case_184_SBOX32(hash,state,key) /**/ 476 #endif 477 #if SBOX32_MAX_LEN >= 183 478 #define case_183_SBOX32(hash,state,key) _SBOX32_CASE(183,hash,state,key) 479 #else 480 #define case_183_SBOX32(hash,state,key) /**/ 481 #endif 482 #if SBOX32_MAX_LEN >= 182 483 #define case_182_SBOX32(hash,state,key) _SBOX32_CASE(182,hash,state,key) 484 #else 485 #define case_182_SBOX32(hash,state,key) /**/ 486 #endif 487 #if SBOX32_MAX_LEN >= 181 488 #define case_181_SBOX32(hash,state,key) _SBOX32_CASE(181,hash,state,key) 489 #else 490 #define case_181_SBOX32(hash,state,key) /**/ 491 #endif 492 #if SBOX32_MAX_LEN >= 180 493 #define case_180_SBOX32(hash,state,key) _SBOX32_CASE(180,hash,state,key) 494 #else 495 #define case_180_SBOX32(hash,state,key) /**/ 496 #endif 497 #if SBOX32_MAX_LEN >= 179 498 #define case_179_SBOX32(hash,state,key) _SBOX32_CASE(179,hash,state,key) 499 #else 500 #define case_179_SBOX32(hash,state,key) /**/ 501 #endif 502 #if SBOX32_MAX_LEN >= 178 503 #define case_178_SBOX32(hash,state,key) _SBOX32_CASE(178,hash,state,key) 504 #else 505 #define case_178_SBOX32(hash,state,key) /**/ 506 #endif 507 #if SBOX32_MAX_LEN >= 177 508 #define case_177_SBOX32(hash,state,key) _SBOX32_CASE(177,hash,state,key) 509 #else 510 #define case_177_SBOX32(hash,state,key) /**/ 511 #endif 512 #if SBOX32_MAX_LEN >= 176 513 #define case_176_SBOX32(hash,state,key) _SBOX32_CASE(176,hash,state,key) 514 #else 515 #define case_176_SBOX32(hash,state,key) /**/ 516 #endif 517 #if SBOX32_MAX_LEN >= 175 518 #define case_175_SBOX32(hash,state,key) _SBOX32_CASE(175,hash,state,key) 519 #else 520 #define case_175_SBOX32(hash,state,key) /**/ 521 #endif 522 #if SBOX32_MAX_LEN >= 174 523 #define case_174_SBOX32(hash,state,key) _SBOX32_CASE(174,hash,state,key) 524 #else 525 #define case_174_SBOX32(hash,state,key) /**/ 526 #endif 527 #if SBOX32_MAX_LEN >= 173 528 #define case_173_SBOX32(hash,state,key) _SBOX32_CASE(173,hash,state,key) 529 #else 530 #define case_173_SBOX32(hash,state,key) /**/ 531 #endif 532 #if SBOX32_MAX_LEN >= 172 533 #define case_172_SBOX32(hash,state,key) _SBOX32_CASE(172,hash,state,key) 534 #else 535 #define case_172_SBOX32(hash,state,key) /**/ 536 #endif 537 #if SBOX32_MAX_LEN >= 171 538 #define case_171_SBOX32(hash,state,key) _SBOX32_CASE(171,hash,state,key) 539 #else 540 #define case_171_SBOX32(hash,state,key) /**/ 541 #endif 542 #if SBOX32_MAX_LEN >= 170 543 #define case_170_SBOX32(hash,state,key) _SBOX32_CASE(170,hash,state,key) 544 #else 545 #define case_170_SBOX32(hash,state,key) /**/ 546 #endif 547 #if SBOX32_MAX_LEN >= 169 548 #define case_169_SBOX32(hash,state,key) _SBOX32_CASE(169,hash,state,key) 549 #else 550 #define case_169_SBOX32(hash,state,key) /**/ 551 #endif 552 #if SBOX32_MAX_LEN >= 168 553 #define case_168_SBOX32(hash,state,key) _SBOX32_CASE(168,hash,state,key) 554 #else 555 #define case_168_SBOX32(hash,state,key) /**/ 556 #endif 557 #if SBOX32_MAX_LEN >= 167 558 #define case_167_SBOX32(hash,state,key) _SBOX32_CASE(167,hash,state,key) 559 #else 560 #define case_167_SBOX32(hash,state,key) /**/ 561 #endif 562 #if SBOX32_MAX_LEN >= 166 563 #define case_166_SBOX32(hash,state,key) _SBOX32_CASE(166,hash,state,key) 564 #else 565 #define case_166_SBOX32(hash,state,key) /**/ 566 #endif 567 #if SBOX32_MAX_LEN >= 165 568 #define case_165_SBOX32(hash,state,key) _SBOX32_CASE(165,hash,state,key) 569 #else 570 #define case_165_SBOX32(hash,state,key) /**/ 571 #endif 572 #if SBOX32_MAX_LEN >= 164 573 #define case_164_SBOX32(hash,state,key) _SBOX32_CASE(164,hash,state,key) 574 #else 575 #define case_164_SBOX32(hash,state,key) /**/ 576 #endif 577 #if SBOX32_MAX_LEN >= 163 578 #define case_163_SBOX32(hash,state,key) _SBOX32_CASE(163,hash,state,key) 579 #else 580 #define case_163_SBOX32(hash,state,key) /**/ 581 #endif 582 #if SBOX32_MAX_LEN >= 162 583 #define case_162_SBOX32(hash,state,key) _SBOX32_CASE(162,hash,state,key) 584 #else 585 #define case_162_SBOX32(hash,state,key) /**/ 586 #endif 587 #if SBOX32_MAX_LEN >= 161 588 #define case_161_SBOX32(hash,state,key) _SBOX32_CASE(161,hash,state,key) 589 #else 590 #define case_161_SBOX32(hash,state,key) /**/ 591 #endif 592 #if SBOX32_MAX_LEN >= 160 593 #define case_160_SBOX32(hash,state,key) _SBOX32_CASE(160,hash,state,key) 594 #else 595 #define case_160_SBOX32(hash,state,key) /**/ 596 #endif 597 #if SBOX32_MAX_LEN >= 159 598 #define case_159_SBOX32(hash,state,key) _SBOX32_CASE(159,hash,state,key) 599 #else 600 #define case_159_SBOX32(hash,state,key) /**/ 601 #endif 602 #if SBOX32_MAX_LEN >= 158 603 #define case_158_SBOX32(hash,state,key) _SBOX32_CASE(158,hash,state,key) 604 #else 605 #define case_158_SBOX32(hash,state,key) /**/ 606 #endif 607 #if SBOX32_MAX_LEN >= 157 608 #define case_157_SBOX32(hash,state,key) _SBOX32_CASE(157,hash,state,key) 609 #else 610 #define case_157_SBOX32(hash,state,key) /**/ 611 #endif 612 #if SBOX32_MAX_LEN >= 156 613 #define case_156_SBOX32(hash,state,key) _SBOX32_CASE(156,hash,state,key) 614 #else 615 #define case_156_SBOX32(hash,state,key) /**/ 616 #endif 617 #if SBOX32_MAX_LEN >= 155 618 #define case_155_SBOX32(hash,state,key) _SBOX32_CASE(155,hash,state,key) 619 #else 620 #define case_155_SBOX32(hash,state,key) /**/ 621 #endif 622 #if SBOX32_MAX_LEN >= 154 623 #define case_154_SBOX32(hash,state,key) _SBOX32_CASE(154,hash,state,key) 624 #else 625 #define case_154_SBOX32(hash,state,key) /**/ 626 #endif 627 #if SBOX32_MAX_LEN >= 153 628 #define case_153_SBOX32(hash,state,key) _SBOX32_CASE(153,hash,state,key) 629 #else 630 #define case_153_SBOX32(hash,state,key) /**/ 631 #endif 632 #if SBOX32_MAX_LEN >= 152 633 #define case_152_SBOX32(hash,state,key) _SBOX32_CASE(152,hash,state,key) 634 #else 635 #define case_152_SBOX32(hash,state,key) /**/ 636 #endif 637 #if SBOX32_MAX_LEN >= 151 638 #define case_151_SBOX32(hash,state,key) _SBOX32_CASE(151,hash,state,key) 639 #else 640 #define case_151_SBOX32(hash,state,key) /**/ 641 #endif 642 #if SBOX32_MAX_LEN >= 150 643 #define case_150_SBOX32(hash,state,key) _SBOX32_CASE(150,hash,state,key) 644 #else 645 #define case_150_SBOX32(hash,state,key) /**/ 646 #endif 647 #if SBOX32_MAX_LEN >= 149 648 #define case_149_SBOX32(hash,state,key) _SBOX32_CASE(149,hash,state,key) 649 #else 650 #define case_149_SBOX32(hash,state,key) /**/ 651 #endif 652 #if SBOX32_MAX_LEN >= 148 653 #define case_148_SBOX32(hash,state,key) _SBOX32_CASE(148,hash,state,key) 654 #else 655 #define case_148_SBOX32(hash,state,key) /**/ 656 #endif 657 #if SBOX32_MAX_LEN >= 147 658 #define case_147_SBOX32(hash,state,key) _SBOX32_CASE(147,hash,state,key) 659 #else 660 #define case_147_SBOX32(hash,state,key) /**/ 661 #endif 662 #if SBOX32_MAX_LEN >= 146 663 #define case_146_SBOX32(hash,state,key) _SBOX32_CASE(146,hash,state,key) 664 #else 665 #define case_146_SBOX32(hash,state,key) /**/ 666 #endif 667 #if SBOX32_MAX_LEN >= 145 668 #define case_145_SBOX32(hash,state,key) _SBOX32_CASE(145,hash,state,key) 669 #else 670 #define case_145_SBOX32(hash,state,key) /**/ 671 #endif 672 #if SBOX32_MAX_LEN >= 144 673 #define case_144_SBOX32(hash,state,key) _SBOX32_CASE(144,hash,state,key) 674 #else 675 #define case_144_SBOX32(hash,state,key) /**/ 676 #endif 677 #if SBOX32_MAX_LEN >= 143 678 #define case_143_SBOX32(hash,state,key) _SBOX32_CASE(143,hash,state,key) 679 #else 680 #define case_143_SBOX32(hash,state,key) /**/ 681 #endif 682 #if SBOX32_MAX_LEN >= 142 683 #define case_142_SBOX32(hash,state,key) _SBOX32_CASE(142,hash,state,key) 684 #else 685 #define case_142_SBOX32(hash,state,key) /**/ 686 #endif 687 #if SBOX32_MAX_LEN >= 141 688 #define case_141_SBOX32(hash,state,key) _SBOX32_CASE(141,hash,state,key) 689 #else 690 #define case_141_SBOX32(hash,state,key) /**/ 691 #endif 692 #if SBOX32_MAX_LEN >= 140 693 #define case_140_SBOX32(hash,state,key) _SBOX32_CASE(140,hash,state,key) 694 #else 695 #define case_140_SBOX32(hash,state,key) /**/ 696 #endif 697 #if SBOX32_MAX_LEN >= 139 698 #define case_139_SBOX32(hash,state,key) _SBOX32_CASE(139,hash,state,key) 699 #else 700 #define case_139_SBOX32(hash,state,key) /**/ 701 #endif 702 #if SBOX32_MAX_LEN >= 138 703 #define case_138_SBOX32(hash,state,key) _SBOX32_CASE(138,hash,state,key) 704 #else 705 #define case_138_SBOX32(hash,state,key) /**/ 706 #endif 707 #if SBOX32_MAX_LEN >= 137 708 #define case_137_SBOX32(hash,state,key) _SBOX32_CASE(137,hash,state,key) 709 #else 710 #define case_137_SBOX32(hash,state,key) /**/ 711 #endif 712 #if SBOX32_MAX_LEN >= 136 713 #define case_136_SBOX32(hash,state,key) _SBOX32_CASE(136,hash,state,key) 714 #else 715 #define case_136_SBOX32(hash,state,key) /**/ 716 #endif 717 #if SBOX32_MAX_LEN >= 135 718 #define case_135_SBOX32(hash,state,key) _SBOX32_CASE(135,hash,state,key) 719 #else 720 #define case_135_SBOX32(hash,state,key) /**/ 721 #endif 722 #if SBOX32_MAX_LEN >= 134 723 #define case_134_SBOX32(hash,state,key) _SBOX32_CASE(134,hash,state,key) 724 #else 725 #define case_134_SBOX32(hash,state,key) /**/ 726 #endif 727 #if SBOX32_MAX_LEN >= 133 728 #define case_133_SBOX32(hash,state,key) _SBOX32_CASE(133,hash,state,key) 729 #else 730 #define case_133_SBOX32(hash,state,key) /**/ 731 #endif 732 #if SBOX32_MAX_LEN >= 132 733 #define case_132_SBOX32(hash,state,key) _SBOX32_CASE(132,hash,state,key) 734 #else 735 #define case_132_SBOX32(hash,state,key) /**/ 736 #endif 737 #if SBOX32_MAX_LEN >= 131 738 #define case_131_SBOX32(hash,state,key) _SBOX32_CASE(131,hash,state,key) 739 #else 740 #define case_131_SBOX32(hash,state,key) /**/ 741 #endif 742 #if SBOX32_MAX_LEN >= 130 743 #define case_130_SBOX32(hash,state,key) _SBOX32_CASE(130,hash,state,key) 744 #else 745 #define case_130_SBOX32(hash,state,key) /**/ 746 #endif 747 #if SBOX32_MAX_LEN >= 129 748 #define case_129_SBOX32(hash,state,key) _SBOX32_CASE(129,hash,state,key) 749 #else 750 #define case_129_SBOX32(hash,state,key) /**/ 751 #endif 752 #if SBOX32_MAX_LEN >= 128 753 #define case_128_SBOX32(hash,state,key) _SBOX32_CASE(128,hash,state,key) 754 #else 755 #define case_128_SBOX32(hash,state,key) /**/ 756 #endif 757 #if SBOX32_MAX_LEN >= 127 758 #define case_127_SBOX32(hash,state,key) _SBOX32_CASE(127,hash,state,key) 759 #else 760 #define case_127_SBOX32(hash,state,key) /**/ 761 #endif 762 #if SBOX32_MAX_LEN >= 126 763 #define case_126_SBOX32(hash,state,key) _SBOX32_CASE(126,hash,state,key) 764 #else 765 #define case_126_SBOX32(hash,state,key) /**/ 766 #endif 767 #if SBOX32_MAX_LEN >= 125 768 #define case_125_SBOX32(hash,state,key) _SBOX32_CASE(125,hash,state,key) 769 #else 770 #define case_125_SBOX32(hash,state,key) /**/ 771 #endif 772 #if SBOX32_MAX_LEN >= 124 773 #define case_124_SBOX32(hash,state,key) _SBOX32_CASE(124,hash,state,key) 774 #else 775 #define case_124_SBOX32(hash,state,key) /**/ 776 #endif 777 #if SBOX32_MAX_LEN >= 123 778 #define case_123_SBOX32(hash,state,key) _SBOX32_CASE(123,hash,state,key) 779 #else 780 #define case_123_SBOX32(hash,state,key) /**/ 781 #endif 782 #if SBOX32_MAX_LEN >= 122 783 #define case_122_SBOX32(hash,state,key) _SBOX32_CASE(122,hash,state,key) 784 #else 785 #define case_122_SBOX32(hash,state,key) /**/ 786 #endif 787 #if SBOX32_MAX_LEN >= 121 788 #define case_121_SBOX32(hash,state,key) _SBOX32_CASE(121,hash,state,key) 789 #else 790 #define case_121_SBOX32(hash,state,key) /**/ 791 #endif 792 #if SBOX32_MAX_LEN >= 120 793 #define case_120_SBOX32(hash,state,key) _SBOX32_CASE(120,hash,state,key) 794 #else 795 #define case_120_SBOX32(hash,state,key) /**/ 796 #endif 797 #if SBOX32_MAX_LEN >= 119 798 #define case_119_SBOX32(hash,state,key) _SBOX32_CASE(119,hash,state,key) 799 #else 800 #define case_119_SBOX32(hash,state,key) /**/ 801 #endif 802 #if SBOX32_MAX_LEN >= 118 803 #define case_118_SBOX32(hash,state,key) _SBOX32_CASE(118,hash,state,key) 804 #else 805 #define case_118_SBOX32(hash,state,key) /**/ 806 #endif 807 #if SBOX32_MAX_LEN >= 117 808 #define case_117_SBOX32(hash,state,key) _SBOX32_CASE(117,hash,state,key) 809 #else 810 #define case_117_SBOX32(hash,state,key) /**/ 811 #endif 812 #if SBOX32_MAX_LEN >= 116 813 #define case_116_SBOX32(hash,state,key) _SBOX32_CASE(116,hash,state,key) 814 #else 815 #define case_116_SBOX32(hash,state,key) /**/ 816 #endif 817 #if SBOX32_MAX_LEN >= 115 818 #define case_115_SBOX32(hash,state,key) _SBOX32_CASE(115,hash,state,key) 819 #else 820 #define case_115_SBOX32(hash,state,key) /**/ 821 #endif 822 #if SBOX32_MAX_LEN >= 114 823 #define case_114_SBOX32(hash,state,key) _SBOX32_CASE(114,hash,state,key) 824 #else 825 #define case_114_SBOX32(hash,state,key) /**/ 826 #endif 827 #if SBOX32_MAX_LEN >= 113 828 #define case_113_SBOX32(hash,state,key) _SBOX32_CASE(113,hash,state,key) 829 #else 830 #define case_113_SBOX32(hash,state,key) /**/ 831 #endif 832 #if SBOX32_MAX_LEN >= 112 833 #define case_112_SBOX32(hash,state,key) _SBOX32_CASE(112,hash,state,key) 834 #else 835 #define case_112_SBOX32(hash,state,key) /**/ 836 #endif 837 #if SBOX32_MAX_LEN >= 111 838 #define case_111_SBOX32(hash,state,key) _SBOX32_CASE(111,hash,state,key) 839 #else 840 #define case_111_SBOX32(hash,state,key) /**/ 841 #endif 842 #if SBOX32_MAX_LEN >= 110 843 #define case_110_SBOX32(hash,state,key) _SBOX32_CASE(110,hash,state,key) 844 #else 845 #define case_110_SBOX32(hash,state,key) /**/ 846 #endif 847 #if SBOX32_MAX_LEN >= 109 848 #define case_109_SBOX32(hash,state,key) _SBOX32_CASE(109,hash,state,key) 849 #else 850 #define case_109_SBOX32(hash,state,key) /**/ 851 #endif 852 #if SBOX32_MAX_LEN >= 108 853 #define case_108_SBOX32(hash,state,key) _SBOX32_CASE(108,hash,state,key) 854 #else 855 #define case_108_SBOX32(hash,state,key) /**/ 856 #endif 857 #if SBOX32_MAX_LEN >= 107 858 #define case_107_SBOX32(hash,state,key) _SBOX32_CASE(107,hash,state,key) 859 #else 860 #define case_107_SBOX32(hash,state,key) /**/ 861 #endif 862 #if SBOX32_MAX_LEN >= 106 863 #define case_106_SBOX32(hash,state,key) _SBOX32_CASE(106,hash,state,key) 864 #else 865 #define case_106_SBOX32(hash,state,key) /**/ 866 #endif 867 #if SBOX32_MAX_LEN >= 105 868 #define case_105_SBOX32(hash,state,key) _SBOX32_CASE(105,hash,state,key) 869 #else 870 #define case_105_SBOX32(hash,state,key) /**/ 871 #endif 872 #if SBOX32_MAX_LEN >= 104 873 #define case_104_SBOX32(hash,state,key) _SBOX32_CASE(104,hash,state,key) 874 #else 875 #define case_104_SBOX32(hash,state,key) /**/ 876 #endif 877 #if SBOX32_MAX_LEN >= 103 878 #define case_103_SBOX32(hash,state,key) _SBOX32_CASE(103,hash,state,key) 879 #else 880 #define case_103_SBOX32(hash,state,key) /**/ 881 #endif 882 #if SBOX32_MAX_LEN >= 102 883 #define case_102_SBOX32(hash,state,key) _SBOX32_CASE(102,hash,state,key) 884 #else 885 #define case_102_SBOX32(hash,state,key) /**/ 886 #endif 887 #if SBOX32_MAX_LEN >= 101 888 #define case_101_SBOX32(hash,state,key) _SBOX32_CASE(101,hash,state,key) 889 #else 890 #define case_101_SBOX32(hash,state,key) /**/ 891 #endif 892 #if SBOX32_MAX_LEN >= 100 893 #define case_100_SBOX32(hash,state,key) _SBOX32_CASE(100,hash,state,key) 894 #else 895 #define case_100_SBOX32(hash,state,key) /**/ 896 #endif 897 #if SBOX32_MAX_LEN >= 99 898 #define case_99_SBOX32(hash,state,key) _SBOX32_CASE(99,hash,state,key) 899 #else 900 #define case_99_SBOX32(hash,state,key) /**/ 901 #endif 902 #if SBOX32_MAX_LEN >= 98 903 #define case_98_SBOX32(hash,state,key) _SBOX32_CASE(98,hash,state,key) 904 #else 905 #define case_98_SBOX32(hash,state,key) /**/ 906 #endif 907 #if SBOX32_MAX_LEN >= 97 908 #define case_97_SBOX32(hash,state,key) _SBOX32_CASE(97,hash,state,key) 909 #else 910 #define case_97_SBOX32(hash,state,key) /**/ 911 #endif 912 #if SBOX32_MAX_LEN >= 96 913 #define case_96_SBOX32(hash,state,key) _SBOX32_CASE(96,hash,state,key) 914 #else 915 #define case_96_SBOX32(hash,state,key) /**/ 916 #endif 917 #if SBOX32_MAX_LEN >= 95 918 #define case_95_SBOX32(hash,state,key) _SBOX32_CASE(95,hash,state,key) 919 #else 920 #define case_95_SBOX32(hash,state,key) /**/ 921 #endif 922 #if SBOX32_MAX_LEN >= 94 923 #define case_94_SBOX32(hash,state,key) _SBOX32_CASE(94,hash,state,key) 924 #else 925 #define case_94_SBOX32(hash,state,key) /**/ 926 #endif 927 #if SBOX32_MAX_LEN >= 93 928 #define case_93_SBOX32(hash,state,key) _SBOX32_CASE(93,hash,state,key) 929 #else 930 #define case_93_SBOX32(hash,state,key) /**/ 931 #endif 932 #if SBOX32_MAX_LEN >= 92 933 #define case_92_SBOX32(hash,state,key) _SBOX32_CASE(92,hash,state,key) 934 #else 935 #define case_92_SBOX32(hash,state,key) /**/ 936 #endif 937 #if SBOX32_MAX_LEN >= 91 938 #define case_91_SBOX32(hash,state,key) _SBOX32_CASE(91,hash,state,key) 939 #else 940 #define case_91_SBOX32(hash,state,key) /**/ 941 #endif 942 #if SBOX32_MAX_LEN >= 90 943 #define case_90_SBOX32(hash,state,key) _SBOX32_CASE(90,hash,state,key) 944 #else 945 #define case_90_SBOX32(hash,state,key) /**/ 946 #endif 947 #if SBOX32_MAX_LEN >= 89 948 #define case_89_SBOX32(hash,state,key) _SBOX32_CASE(89,hash,state,key) 949 #else 950 #define case_89_SBOX32(hash,state,key) /**/ 951 #endif 952 #if SBOX32_MAX_LEN >= 88 953 #define case_88_SBOX32(hash,state,key) _SBOX32_CASE(88,hash,state,key) 954 #else 955 #define case_88_SBOX32(hash,state,key) /**/ 956 #endif 957 #if SBOX32_MAX_LEN >= 87 958 #define case_87_SBOX32(hash,state,key) _SBOX32_CASE(87,hash,state,key) 959 #else 960 #define case_87_SBOX32(hash,state,key) /**/ 961 #endif 962 #if SBOX32_MAX_LEN >= 86 963 #define case_86_SBOX32(hash,state,key) _SBOX32_CASE(86,hash,state,key) 964 #else 965 #define case_86_SBOX32(hash,state,key) /**/ 966 #endif 967 #if SBOX32_MAX_LEN >= 85 968 #define case_85_SBOX32(hash,state,key) _SBOX32_CASE(85,hash,state,key) 969 #else 970 #define case_85_SBOX32(hash,state,key) /**/ 971 #endif 972 #if SBOX32_MAX_LEN >= 84 973 #define case_84_SBOX32(hash,state,key) _SBOX32_CASE(84,hash,state,key) 974 #else 975 #define case_84_SBOX32(hash,state,key) /**/ 976 #endif 977 #if SBOX32_MAX_LEN >= 83 978 #define case_83_SBOX32(hash,state,key) _SBOX32_CASE(83,hash,state,key) 979 #else 980 #define case_83_SBOX32(hash,state,key) /**/ 981 #endif 982 #if SBOX32_MAX_LEN >= 82 983 #define case_82_SBOX32(hash,state,key) _SBOX32_CASE(82,hash,state,key) 984 #else 985 #define case_82_SBOX32(hash,state,key) /**/ 986 #endif 987 #if SBOX32_MAX_LEN >= 81 988 #define case_81_SBOX32(hash,state,key) _SBOX32_CASE(81,hash,state,key) 989 #else 990 #define case_81_SBOX32(hash,state,key) /**/ 991 #endif 992 #if SBOX32_MAX_LEN >= 80 993 #define case_80_SBOX32(hash,state,key) _SBOX32_CASE(80,hash,state,key) 994 #else 995 #define case_80_SBOX32(hash,state,key) /**/ 996 #endif 997 #if SBOX32_MAX_LEN >= 79 998 #define case_79_SBOX32(hash,state,key) _SBOX32_CASE(79,hash,state,key) 999 #else 1000 #define case_79_SBOX32(hash,state,key) /**/ 1001 #endif 1002 #if SBOX32_MAX_LEN >= 78 1003 #define case_78_SBOX32(hash,state,key) _SBOX32_CASE(78,hash,state,key) 1004 #else 1005 #define case_78_SBOX32(hash,state,key) /**/ 1006 #endif 1007 #if SBOX32_MAX_LEN >= 77 1008 #define case_77_SBOX32(hash,state,key) _SBOX32_CASE(77,hash,state,key) 1009 #else 1010 #define case_77_SBOX32(hash,state,key) /**/ 1011 #endif 1012 #if SBOX32_MAX_LEN >= 76 1013 #define case_76_SBOX32(hash,state,key) _SBOX32_CASE(76,hash,state,key) 1014 #else 1015 #define case_76_SBOX32(hash,state,key) /**/ 1016 #endif 1017 #if SBOX32_MAX_LEN >= 75 1018 #define case_75_SBOX32(hash,state,key) _SBOX32_CASE(75,hash,state,key) 1019 #else 1020 #define case_75_SBOX32(hash,state,key) /**/ 1021 #endif 1022 #if SBOX32_MAX_LEN >= 74 1023 #define case_74_SBOX32(hash,state,key) _SBOX32_CASE(74,hash,state,key) 1024 #else 1025 #define case_74_SBOX32(hash,state,key) /**/ 1026 #endif 1027 #if SBOX32_MAX_LEN >= 73 1028 #define case_73_SBOX32(hash,state,key) _SBOX32_CASE(73,hash,state,key) 1029 #else 1030 #define case_73_SBOX32(hash,state,key) /**/ 1031 #endif 1032 #if SBOX32_MAX_LEN >= 72 1033 #define case_72_SBOX32(hash,state,key) _SBOX32_CASE(72,hash,state,key) 1034 #else 1035 #define case_72_SBOX32(hash,state,key) /**/ 1036 #endif 1037 #if SBOX32_MAX_LEN >= 71 1038 #define case_71_SBOX32(hash,state,key) _SBOX32_CASE(71,hash,state,key) 1039 #else 1040 #define case_71_SBOX32(hash,state,key) /**/ 1041 #endif 1042 #if SBOX32_MAX_LEN >= 70 1043 #define case_70_SBOX32(hash,state,key) _SBOX32_CASE(70,hash,state,key) 1044 #else 1045 #define case_70_SBOX32(hash,state,key) /**/ 1046 #endif 1047 #if SBOX32_MAX_LEN >= 69 1048 #define case_69_SBOX32(hash,state,key) _SBOX32_CASE(69,hash,state,key) 1049 #else 1050 #define case_69_SBOX32(hash,state,key) /**/ 1051 #endif 1052 #if SBOX32_MAX_LEN >= 68 1053 #define case_68_SBOX32(hash,state,key) _SBOX32_CASE(68,hash,state,key) 1054 #else 1055 #define case_68_SBOX32(hash,state,key) /**/ 1056 #endif 1057 #if SBOX32_MAX_LEN >= 67 1058 #define case_67_SBOX32(hash,state,key) _SBOX32_CASE(67,hash,state,key) 1059 #else 1060 #define case_67_SBOX32(hash,state,key) /**/ 1061 #endif 1062 #if SBOX32_MAX_LEN >= 66 1063 #define case_66_SBOX32(hash,state,key) _SBOX32_CASE(66,hash,state,key) 1064 #else 1065 #define case_66_SBOX32(hash,state,key) /**/ 1066 #endif 1067 #if SBOX32_MAX_LEN >= 65 1068 #define case_65_SBOX32(hash,state,key) _SBOX32_CASE(65,hash,state,key) 1069 #else 1070 #define case_65_SBOX32(hash,state,key) /**/ 1071 #endif 1072 #if SBOX32_MAX_LEN >= 64 1073 #define case_64_SBOX32(hash,state,key) _SBOX32_CASE(64,hash,state,key) 1074 #else 1075 #define case_64_SBOX32(hash,state,key) /**/ 1076 #endif 1077 #if SBOX32_MAX_LEN >= 63 1078 #define case_63_SBOX32(hash,state,key) _SBOX32_CASE(63,hash,state,key) 1079 #else 1080 #define case_63_SBOX32(hash,state,key) /**/ 1081 #endif 1082 #if SBOX32_MAX_LEN >= 62 1083 #define case_62_SBOX32(hash,state,key) _SBOX32_CASE(62,hash,state,key) 1084 #else 1085 #define case_62_SBOX32(hash,state,key) /**/ 1086 #endif 1087 #if SBOX32_MAX_LEN >= 61 1088 #define case_61_SBOX32(hash,state,key) _SBOX32_CASE(61,hash,state,key) 1089 #else 1090 #define case_61_SBOX32(hash,state,key) /**/ 1091 #endif 1092 #if SBOX32_MAX_LEN >= 60 1093 #define case_60_SBOX32(hash,state,key) _SBOX32_CASE(60,hash,state,key) 1094 #else 1095 #define case_60_SBOX32(hash,state,key) /**/ 1096 #endif 1097 #if SBOX32_MAX_LEN >= 59 1098 #define case_59_SBOX32(hash,state,key) _SBOX32_CASE(59,hash,state,key) 1099 #else 1100 #define case_59_SBOX32(hash,state,key) /**/ 1101 #endif 1102 #if SBOX32_MAX_LEN >= 58 1103 #define case_58_SBOX32(hash,state,key) _SBOX32_CASE(58,hash,state,key) 1104 #else 1105 #define case_58_SBOX32(hash,state,key) /**/ 1106 #endif 1107 #if SBOX32_MAX_LEN >= 57 1108 #define case_57_SBOX32(hash,state,key) _SBOX32_CASE(57,hash,state,key) 1109 #else 1110 #define case_57_SBOX32(hash,state,key) /**/ 1111 #endif 1112 #if SBOX32_MAX_LEN >= 56 1113 #define case_56_SBOX32(hash,state,key) _SBOX32_CASE(56,hash,state,key) 1114 #else 1115 #define case_56_SBOX32(hash,state,key) /**/ 1116 #endif 1117 #if SBOX32_MAX_LEN >= 55 1118 #define case_55_SBOX32(hash,state,key) _SBOX32_CASE(55,hash,state,key) 1119 #else 1120 #define case_55_SBOX32(hash,state,key) /**/ 1121 #endif 1122 #if SBOX32_MAX_LEN >= 54 1123 #define case_54_SBOX32(hash,state,key) _SBOX32_CASE(54,hash,state,key) 1124 #else 1125 #define case_54_SBOX32(hash,state,key) /**/ 1126 #endif 1127 #if SBOX32_MAX_LEN >= 53 1128 #define case_53_SBOX32(hash,state,key) _SBOX32_CASE(53,hash,state,key) 1129 #else 1130 #define case_53_SBOX32(hash,state,key) /**/ 1131 #endif 1132 #if SBOX32_MAX_LEN >= 52 1133 #define case_52_SBOX32(hash,state,key) _SBOX32_CASE(52,hash,state,key) 1134 #else 1135 #define case_52_SBOX32(hash,state,key) /**/ 1136 #endif 1137 #if SBOX32_MAX_LEN >= 51 1138 #define case_51_SBOX32(hash,state,key) _SBOX32_CASE(51,hash,state,key) 1139 #else 1140 #define case_51_SBOX32(hash,state,key) /**/ 1141 #endif 1142 #if SBOX32_MAX_LEN >= 50 1143 #define case_50_SBOX32(hash,state,key) _SBOX32_CASE(50,hash,state,key) 1144 #else 1145 #define case_50_SBOX32(hash,state,key) /**/ 1146 #endif 1147 #if SBOX32_MAX_LEN >= 49 1148 #define case_49_SBOX32(hash,state,key) _SBOX32_CASE(49,hash,state,key) 1149 #else 1150 #define case_49_SBOX32(hash,state,key) /**/ 1151 #endif 1152 #if SBOX32_MAX_LEN >= 48 1153 #define case_48_SBOX32(hash,state,key) _SBOX32_CASE(48,hash,state,key) 1154 #else 1155 #define case_48_SBOX32(hash,state,key) /**/ 1156 #endif 1157 #if SBOX32_MAX_LEN >= 47 1158 #define case_47_SBOX32(hash,state,key) _SBOX32_CASE(47,hash,state,key) 1159 #else 1160 #define case_47_SBOX32(hash,state,key) /**/ 1161 #endif 1162 #if SBOX32_MAX_LEN >= 46 1163 #define case_46_SBOX32(hash,state,key) _SBOX32_CASE(46,hash,state,key) 1164 #else 1165 #define case_46_SBOX32(hash,state,key) /**/ 1166 #endif 1167 #if SBOX32_MAX_LEN >= 45 1168 #define case_45_SBOX32(hash,state,key) _SBOX32_CASE(45,hash,state,key) 1169 #else 1170 #define case_45_SBOX32(hash,state,key) /**/ 1171 #endif 1172 #if SBOX32_MAX_LEN >= 44 1173 #define case_44_SBOX32(hash,state,key) _SBOX32_CASE(44,hash,state,key) 1174 #else 1175 #define case_44_SBOX32(hash,state,key) /**/ 1176 #endif 1177 #if SBOX32_MAX_LEN >= 43 1178 #define case_43_SBOX32(hash,state,key) _SBOX32_CASE(43,hash,state,key) 1179 #else 1180 #define case_43_SBOX32(hash,state,key) /**/ 1181 #endif 1182 #if SBOX32_MAX_LEN >= 42 1183 #define case_42_SBOX32(hash,state,key) _SBOX32_CASE(42,hash,state,key) 1184 #else 1185 #define case_42_SBOX32(hash,state,key) /**/ 1186 #endif 1187 #if SBOX32_MAX_LEN >= 41 1188 #define case_41_SBOX32(hash,state,key) _SBOX32_CASE(41,hash,state,key) 1189 #else 1190 #define case_41_SBOX32(hash,state,key) /**/ 1191 #endif 1192 #if SBOX32_MAX_LEN >= 40 1193 #define case_40_SBOX32(hash,state,key) _SBOX32_CASE(40,hash,state,key) 1194 #else 1195 #define case_40_SBOX32(hash,state,key) /**/ 1196 #endif 1197 #if SBOX32_MAX_LEN >= 39 1198 #define case_39_SBOX32(hash,state,key) _SBOX32_CASE(39,hash,state,key) 1199 #else 1200 #define case_39_SBOX32(hash,state,key) /**/ 1201 #endif 1202 #if SBOX32_MAX_LEN >= 38 1203 #define case_38_SBOX32(hash,state,key) _SBOX32_CASE(38,hash,state,key) 1204 #else 1205 #define case_38_SBOX32(hash,state,key) /**/ 1206 #endif 1207 #if SBOX32_MAX_LEN >= 37 1208 #define case_37_SBOX32(hash,state,key) _SBOX32_CASE(37,hash,state,key) 1209 #else 1210 #define case_37_SBOX32(hash,state,key) /**/ 1211 #endif 1212 #if SBOX32_MAX_LEN >= 36 1213 #define case_36_SBOX32(hash,state,key) _SBOX32_CASE(36,hash,state,key) 1214 #else 1215 #define case_36_SBOX32(hash,state,key) /**/ 1216 #endif 1217 #if SBOX32_MAX_LEN >= 35 1218 #define case_35_SBOX32(hash,state,key) _SBOX32_CASE(35,hash,state,key) 1219 #else 1220 #define case_35_SBOX32(hash,state,key) /**/ 1221 #endif 1222 #if SBOX32_MAX_LEN >= 34 1223 #define case_34_SBOX32(hash,state,key) _SBOX32_CASE(34,hash,state,key) 1224 #else 1225 #define case_34_SBOX32(hash,state,key) /**/ 1226 #endif 1227 #if SBOX32_MAX_LEN >= 33 1228 #define case_33_SBOX32(hash,state,key) _SBOX32_CASE(33,hash,state,key) 1229 #else 1230 #define case_33_SBOX32(hash,state,key) /**/ 1231 #endif 1232 #if SBOX32_MAX_LEN >= 32 1233 #define case_32_SBOX32(hash,state,key) _SBOX32_CASE(32,hash,state,key) 1234 #else 1235 #define case_32_SBOX32(hash,state,key) /**/ 1236 #endif 1237 #if SBOX32_MAX_LEN >= 31 1238 #define case_31_SBOX32(hash,state,key) _SBOX32_CASE(31,hash,state,key) 1239 #else 1240 #define case_31_SBOX32(hash,state,key) /**/ 1241 #endif 1242 #if SBOX32_MAX_LEN >= 30 1243 #define case_30_SBOX32(hash,state,key) _SBOX32_CASE(30,hash,state,key) 1244 #else 1245 #define case_30_SBOX32(hash,state,key) /**/ 1246 #endif 1247 #if SBOX32_MAX_LEN >= 29 1248 #define case_29_SBOX32(hash,state,key) _SBOX32_CASE(29,hash,state,key) 1249 #else 1250 #define case_29_SBOX32(hash,state,key) /**/ 1251 #endif 1252 #if SBOX32_MAX_LEN >= 28 1253 #define case_28_SBOX32(hash,state,key) _SBOX32_CASE(28,hash,state,key) 1254 #else 1255 #define case_28_SBOX32(hash,state,key) /**/ 1256 #endif 1257 #if SBOX32_MAX_LEN >= 27 1258 #define case_27_SBOX32(hash,state,key) _SBOX32_CASE(27,hash,state,key) 1259 #else 1260 #define case_27_SBOX32(hash,state,key) /**/ 1261 #endif 1262 #if SBOX32_MAX_LEN >= 26 1263 #define case_26_SBOX32(hash,state,key) _SBOX32_CASE(26,hash,state,key) 1264 #else 1265 #define case_26_SBOX32(hash,state,key) /**/ 1266 #endif 1267 #if SBOX32_MAX_LEN >= 25 1268 #define case_25_SBOX32(hash,state,key) _SBOX32_CASE(25,hash,state,key) 1269 #else 1270 #define case_25_SBOX32(hash,state,key) /**/ 1271 #endif 1272 #if SBOX32_MAX_LEN >= 24 1273 #define case_24_SBOX32(hash,state,key) _SBOX32_CASE(24,hash,state,key) 1274 #else 1275 #define case_24_SBOX32(hash,state,key) /**/ 1276 #endif 1277 #if SBOX32_MAX_LEN >= 23 1278 #define case_23_SBOX32(hash,state,key) _SBOX32_CASE(23,hash,state,key) 1279 #else 1280 #define case_23_SBOX32(hash,state,key) /**/ 1281 #endif 1282 #if SBOX32_MAX_LEN >= 22 1283 #define case_22_SBOX32(hash,state,key) _SBOX32_CASE(22,hash,state,key) 1284 #else 1285 #define case_22_SBOX32(hash,state,key) /**/ 1286 #endif 1287 #if SBOX32_MAX_LEN >= 21 1288 #define case_21_SBOX32(hash,state,key) _SBOX32_CASE(21,hash,state,key) 1289 #else 1290 #define case_21_SBOX32(hash,state,key) /**/ 1291 #endif 1292 #if SBOX32_MAX_LEN >= 20 1293 #define case_20_SBOX32(hash,state,key) _SBOX32_CASE(20,hash,state,key) 1294 #else 1295 #define case_20_SBOX32(hash,state,key) /**/ 1296 #endif 1297 #if SBOX32_MAX_LEN >= 19 1298 #define case_19_SBOX32(hash,state,key) _SBOX32_CASE(19,hash,state,key) 1299 #else 1300 #define case_19_SBOX32(hash,state,key) /**/ 1301 #endif 1302 #if SBOX32_MAX_LEN >= 18 1303 #define case_18_SBOX32(hash,state,key) _SBOX32_CASE(18,hash,state,key) 1304 #else 1305 #define case_18_SBOX32(hash,state,key) /**/ 1306 #endif 1307 #if SBOX32_MAX_LEN >= 17 1308 #define case_17_SBOX32(hash,state,key) _SBOX32_CASE(17,hash,state,key) 1309 #else 1310 #define case_17_SBOX32(hash,state,key) /**/ 1311 #endif 1312 #if SBOX32_MAX_LEN >= 16 1313 #define case_16_SBOX32(hash,state,key) _SBOX32_CASE(16,hash,state,key) 1314 #else 1315 #define case_16_SBOX32(hash,state,key) /**/ 1316 #endif 1317 #if SBOX32_MAX_LEN >= 15 1318 #define case_15_SBOX32(hash,state,key) _SBOX32_CASE(15,hash,state,key) 1319 #else 1320 #define case_15_SBOX32(hash,state,key) /**/ 1321 #endif 1322 #if SBOX32_MAX_LEN >= 14 1323 #define case_14_SBOX32(hash,state,key) _SBOX32_CASE(14,hash,state,key) 1324 #else 1325 #define case_14_SBOX32(hash,state,key) /**/ 1326 #endif 1327 #if SBOX32_MAX_LEN >= 13 1328 #define case_13_SBOX32(hash,state,key) _SBOX32_CASE(13,hash,state,key) 1329 #else 1330 #define case_13_SBOX32(hash,state,key) /**/ 1331 #endif 1332 #if SBOX32_MAX_LEN >= 12 1333 #define case_12_SBOX32(hash,state,key) _SBOX32_CASE(12,hash,state,key) 1334 #else 1335 #define case_12_SBOX32(hash,state,key) /**/ 1336 #endif 1337 #if SBOX32_MAX_LEN >= 11 1338 #define case_11_SBOX32(hash,state,key) _SBOX32_CASE(11,hash,state,key) 1339 #else 1340 #define case_11_SBOX32(hash,state,key) /**/ 1341 #endif 1342 #if SBOX32_MAX_LEN >= 10 1343 #define case_10_SBOX32(hash,state,key) _SBOX32_CASE(10,hash,state,key) 1344 #else 1345 #define case_10_SBOX32(hash,state,key) /**/ 1346 #endif 1347 #if SBOX32_MAX_LEN >= 9 1348 #define case_9_SBOX32(hash,state,key) _SBOX32_CASE(9,hash,state,key) 1349 #else 1350 #define case_9_SBOX32(hash,state,key) /**/ 1351 #endif 1352 #if SBOX32_MAX_LEN >= 8 1353 #define case_8_SBOX32(hash,state,key) _SBOX32_CASE(8,hash,state,key) 1354 #else 1355 #define case_8_SBOX32(hash,state,key) /**/ 1356 #endif 1357 #if SBOX32_MAX_LEN >= 7 1358 #define case_7_SBOX32(hash,state,key) _SBOX32_CASE(7,hash,state,key) 1359 #else 1360 #define case_7_SBOX32(hash,state,key) /**/ 1361 #endif 1362 #if SBOX32_MAX_LEN >= 6 1363 #define case_6_SBOX32(hash,state,key) _SBOX32_CASE(6,hash,state,key) 1364 #else 1365 #define case_6_SBOX32(hash,state,key) /**/ 1366 #endif 1367 #if SBOX32_MAX_LEN >= 5 1368 #define case_5_SBOX32(hash,state,key) _SBOX32_CASE(5,hash,state,key) 1369 #else 1370 #define case_5_SBOX32(hash,state,key) /**/ 1371 #endif 1372 #if SBOX32_MAX_LEN >= 4 1373 #define case_4_SBOX32(hash,state,key) _SBOX32_CASE(4,hash,state,key) 1374 #else 1375 #define case_4_SBOX32(hash,state,key) /**/ 1376 #endif 1377 #if SBOX32_MAX_LEN >= 3 1378 #define case_3_SBOX32(hash,state,key) _SBOX32_CASE(3,hash,state,key) 1379 #else 1380 #define case_3_SBOX32(hash,state,key) /**/ 1381 #endif 1382 #if SBOX32_MAX_LEN >= 2 1383 #define case_2_SBOX32(hash,state,key) _SBOX32_CASE(2,hash,state,key) 1384 #else 1385 #define case_2_SBOX32(hash,state,key) /**/ 1386 #endif 1387 #if SBOX32_MAX_LEN >= 1 1388 #define case_1_SBOX32(hash,state,key) _SBOX32_CASE(1,hash,state,key) 1389 #else 1390 #define case_1_SBOX32(hash,state,key) /**/ 1391 #endif 1392 1393 #define XORSHIFT96_set(r,x,y,z,t) STMT_START { \ 1394 t = (x ^ ( x << 10 ) ); \ 1395 x = y; y = z; \ 1396 r = z = (z ^ ( z >> 26 ) ) ^ ( t ^ ( t >> 5 ) ); \ 1397 } STMT_END 1398 1399 #define XORSHIFT128_set(r,x,y,z,w,t) STMT_START { \ 1400 t = ( x ^ ( x << 5 ) ); \ 1401 x = y; y = z; z = w; \ 1402 r = w = ( w ^ ( w >> 29 ) ) ^ ( t ^ ( t >> 12 ) ); \ 1403 } STMT_END 1404 1405 #define SBOX32_SCRAMBLE32(v,prime) STMT_START { \ 1406 v ^= (v>>9); \ 1407 v ^= (v<<21); \ 1408 v ^= (v>>16); \ 1409 v *= prime; \ 1410 v ^= (v>>17); \ 1411 v ^= (v<<15); \ 1412 v ^= (v>>23); \ 1413 } STMT_END 1414 1415 #ifndef SBOX32_CHURN_ROUNDS 1416 #define SBOX32_CHURN_ROUNDS 5 1417 #endif 1418 #ifndef SBOX32_SKIP_MASK 1419 #define SBOX32_SKIP_MASK 0x3 1420 #endif 1421 1422 #define _SBOX32_CASE(len,hash,state,key) \ 1423 /* FALLTHROUGH */ \ 1424 case len: hash ^= state[ 1 + ( 256 * ( len - 1 ) ) + key[ len - 1 ] ]; 1425 1426 1427 SBOX32_STATIC_INLINE void sbox32_seed_state96 ( 1428 const U8 *seed_ch, 1429 U8 *state_ch 1430 ) { 1431 const U32 *seed= (const U32 *)seed_ch; 1432 U32 *state= (U32 *)state_ch; 1433 U32 *state_cursor = state + 1; 1434 U32 *sbox32_end = state + 1 + (256 * SBOX32_MAX_LEN); 1435 U32 s0 = seed[0] ^ 0x68736168; /* sbox */ 1436 U32 s1 = seed[1] ^ 0x786f6273; /* hash */ 1437 U32 s2 = seed[2] ^ 0x646f6f67; /* good */ 1438 U32 t1,t2,i; 1439 1440 /* make sure we have all non-zero state elements */ 1441 if (!s0) s0 = 1; 1442 if (!s1) s1 = 2; 1443 if (!s2) s2 = 4; 1444 1445 /* Do a bunch of mix rounds to avalanche the seedbits 1446 * before we use them for the XORSHIFT rng. */ 1447 for ( i = 0; i < SBOX32_CHURN_ROUNDS; i++ ) 1448 SBOX32_MIX3(s0,s1,s2,"SEED STATE"); 1449 1450 while ( state_cursor < sbox32_end ) { 1451 U32 *row_end = state_cursor + 256; 1452 for ( ; state_cursor < row_end; state_cursor++ ) { 1453 XORSHIFT96_set(*state_cursor,s0,s1,s2,t1); 1454 } 1455 } 1456 XORSHIFT96_set(*state,s0,s1,s2,t2); 1457 } 1458 1459 SBOX32_STATIC_INLINE void sbox32_seed_state128 ( 1460 const U8 *seed_ch, 1461 U8 *state_ch 1462 ) { 1463 U32 *seed= (U32 *)seed_ch; 1464 U32 *state= (U32 *)state_ch; 1465 U32 *state_cursor = state + 1; 1466 U32 *sbox32_end = state + 1 + (256 * SBOX32_MAX_LEN); 1467 U32 s0 = seed[0] ^ 0x68736168; /* sbox */ 1468 U32 s1 = seed[1] ^ 0x786f6273; /* hash */ 1469 U32 s2 = seed[2] ^ 0x646f6f67; /* good */ 1470 U32 s3 = seed[3] ^ 0x74736166; /* fast */ 1471 U32 t1,t2,i; 1472 1473 /* make sure we have all non-zero state elements */ 1474 if (!s0) s0 = 1; 1475 if (!s1) s1 = 2; 1476 if (!s2) s2 = 4; 1477 if (!s3) s3 = 8; 1478 1479 /* Do a bunch of mix rounds to avalanche the seedbits 1480 * before we use them for the XORSHIFT rng. */ 1481 for ( i = 0; i < SBOX32_CHURN_ROUNDS; i++ ) 1482 SBOX32_MIX4(s0,s1,s2,s3,"SEED STATE"); 1483 1484 while ( state_cursor < sbox32_end ) { 1485 U32 *row_end = state_cursor + 256; 1486 for ( ; state_cursor < row_end; state_cursor++ ) { 1487 XORSHIFT128_set(*state_cursor,s0,s1,s2,s3,t1); 1488 } 1489 } 1490 XORSHIFT128_set(*state,s0,s1,s2,s3,t2); 1491 } 1492 1493 SBOX32_STATIC_INLINE U32 sbox32_hash_with_state( 1494 const U8 *state_ch, 1495 const U8 *key, 1496 const STRLEN key_len 1497 ) { 1498 U32 *state= (U32 *)state_ch; 1499 U32 hash = *state; 1500 switch (key_len) { 1501 default: return zaphod32_hash_with_state(state_ch, key, key_len); 1502 case_256_SBOX32(hash,state,key) 1503 case_255_SBOX32(hash,state,key) 1504 case_254_SBOX32(hash,state,key) 1505 case_253_SBOX32(hash,state,key) 1506 case_252_SBOX32(hash,state,key) 1507 case_251_SBOX32(hash,state,key) 1508 case_250_SBOX32(hash,state,key) 1509 case_249_SBOX32(hash,state,key) 1510 case_248_SBOX32(hash,state,key) 1511 case_247_SBOX32(hash,state,key) 1512 case_246_SBOX32(hash,state,key) 1513 case_245_SBOX32(hash,state,key) 1514 case_244_SBOX32(hash,state,key) 1515 case_243_SBOX32(hash,state,key) 1516 case_242_SBOX32(hash,state,key) 1517 case_241_SBOX32(hash,state,key) 1518 case_240_SBOX32(hash,state,key) 1519 case_239_SBOX32(hash,state,key) 1520 case_238_SBOX32(hash,state,key) 1521 case_237_SBOX32(hash,state,key) 1522 case_236_SBOX32(hash,state,key) 1523 case_235_SBOX32(hash,state,key) 1524 case_234_SBOX32(hash,state,key) 1525 case_233_SBOX32(hash,state,key) 1526 case_232_SBOX32(hash,state,key) 1527 case_231_SBOX32(hash,state,key) 1528 case_230_SBOX32(hash,state,key) 1529 case_229_SBOX32(hash,state,key) 1530 case_228_SBOX32(hash,state,key) 1531 case_227_SBOX32(hash,state,key) 1532 case_226_SBOX32(hash,state,key) 1533 case_225_SBOX32(hash,state,key) 1534 case_224_SBOX32(hash,state,key) 1535 case_223_SBOX32(hash,state,key) 1536 case_222_SBOX32(hash,state,key) 1537 case_221_SBOX32(hash,state,key) 1538 case_220_SBOX32(hash,state,key) 1539 case_219_SBOX32(hash,state,key) 1540 case_218_SBOX32(hash,state,key) 1541 case_217_SBOX32(hash,state,key) 1542 case_216_SBOX32(hash,state,key) 1543 case_215_SBOX32(hash,state,key) 1544 case_214_SBOX32(hash,state,key) 1545 case_213_SBOX32(hash,state,key) 1546 case_212_SBOX32(hash,state,key) 1547 case_211_SBOX32(hash,state,key) 1548 case_210_SBOX32(hash,state,key) 1549 case_209_SBOX32(hash,state,key) 1550 case_208_SBOX32(hash,state,key) 1551 case_207_SBOX32(hash,state,key) 1552 case_206_SBOX32(hash,state,key) 1553 case_205_SBOX32(hash,state,key) 1554 case_204_SBOX32(hash,state,key) 1555 case_203_SBOX32(hash,state,key) 1556 case_202_SBOX32(hash,state,key) 1557 case_201_SBOX32(hash,state,key) 1558 case_200_SBOX32(hash,state,key) 1559 case_199_SBOX32(hash,state,key) 1560 case_198_SBOX32(hash,state,key) 1561 case_197_SBOX32(hash,state,key) 1562 case_196_SBOX32(hash,state,key) 1563 case_195_SBOX32(hash,state,key) 1564 case_194_SBOX32(hash,state,key) 1565 case_193_SBOX32(hash,state,key) 1566 case_192_SBOX32(hash,state,key) 1567 case_191_SBOX32(hash,state,key) 1568 case_190_SBOX32(hash,state,key) 1569 case_189_SBOX32(hash,state,key) 1570 case_188_SBOX32(hash,state,key) 1571 case_187_SBOX32(hash,state,key) 1572 case_186_SBOX32(hash,state,key) 1573 case_185_SBOX32(hash,state,key) 1574 case_184_SBOX32(hash,state,key) 1575 case_183_SBOX32(hash,state,key) 1576 case_182_SBOX32(hash,state,key) 1577 case_181_SBOX32(hash,state,key) 1578 case_180_SBOX32(hash,state,key) 1579 case_179_SBOX32(hash,state,key) 1580 case_178_SBOX32(hash,state,key) 1581 case_177_SBOX32(hash,state,key) 1582 case_176_SBOX32(hash,state,key) 1583 case_175_SBOX32(hash,state,key) 1584 case_174_SBOX32(hash,state,key) 1585 case_173_SBOX32(hash,state,key) 1586 case_172_SBOX32(hash,state,key) 1587 case_171_SBOX32(hash,state,key) 1588 case_170_SBOX32(hash,state,key) 1589 case_169_SBOX32(hash,state,key) 1590 case_168_SBOX32(hash,state,key) 1591 case_167_SBOX32(hash,state,key) 1592 case_166_SBOX32(hash,state,key) 1593 case_165_SBOX32(hash,state,key) 1594 case_164_SBOX32(hash,state,key) 1595 case_163_SBOX32(hash,state,key) 1596 case_162_SBOX32(hash,state,key) 1597 case_161_SBOX32(hash,state,key) 1598 case_160_SBOX32(hash,state,key) 1599 case_159_SBOX32(hash,state,key) 1600 case_158_SBOX32(hash,state,key) 1601 case_157_SBOX32(hash,state,key) 1602 case_156_SBOX32(hash,state,key) 1603 case_155_SBOX32(hash,state,key) 1604 case_154_SBOX32(hash,state,key) 1605 case_153_SBOX32(hash,state,key) 1606 case_152_SBOX32(hash,state,key) 1607 case_151_SBOX32(hash,state,key) 1608 case_150_SBOX32(hash,state,key) 1609 case_149_SBOX32(hash,state,key) 1610 case_148_SBOX32(hash,state,key) 1611 case_147_SBOX32(hash,state,key) 1612 case_146_SBOX32(hash,state,key) 1613 case_145_SBOX32(hash,state,key) 1614 case_144_SBOX32(hash,state,key) 1615 case_143_SBOX32(hash,state,key) 1616 case_142_SBOX32(hash,state,key) 1617 case_141_SBOX32(hash,state,key) 1618 case_140_SBOX32(hash,state,key) 1619 case_139_SBOX32(hash,state,key) 1620 case_138_SBOX32(hash,state,key) 1621 case_137_SBOX32(hash,state,key) 1622 case_136_SBOX32(hash,state,key) 1623 case_135_SBOX32(hash,state,key) 1624 case_134_SBOX32(hash,state,key) 1625 case_133_SBOX32(hash,state,key) 1626 case_132_SBOX32(hash,state,key) 1627 case_131_SBOX32(hash,state,key) 1628 case_130_SBOX32(hash,state,key) 1629 case_129_SBOX32(hash,state,key) 1630 case_128_SBOX32(hash,state,key) 1631 case_127_SBOX32(hash,state,key) 1632 case_126_SBOX32(hash,state,key) 1633 case_125_SBOX32(hash,state,key) 1634 case_124_SBOX32(hash,state,key) 1635 case_123_SBOX32(hash,state,key) 1636 case_122_SBOX32(hash,state,key) 1637 case_121_SBOX32(hash,state,key) 1638 case_120_SBOX32(hash,state,key) 1639 case_119_SBOX32(hash,state,key) 1640 case_118_SBOX32(hash,state,key) 1641 case_117_SBOX32(hash,state,key) 1642 case_116_SBOX32(hash,state,key) 1643 case_115_SBOX32(hash,state,key) 1644 case_114_SBOX32(hash,state,key) 1645 case_113_SBOX32(hash,state,key) 1646 case_112_SBOX32(hash,state,key) 1647 case_111_SBOX32(hash,state,key) 1648 case_110_SBOX32(hash,state,key) 1649 case_109_SBOX32(hash,state,key) 1650 case_108_SBOX32(hash,state,key) 1651 case_107_SBOX32(hash,state,key) 1652 case_106_SBOX32(hash,state,key) 1653 case_105_SBOX32(hash,state,key) 1654 case_104_SBOX32(hash,state,key) 1655 case_103_SBOX32(hash,state,key) 1656 case_102_SBOX32(hash,state,key) 1657 case_101_SBOX32(hash,state,key) 1658 case_100_SBOX32(hash,state,key) 1659 case_99_SBOX32(hash,state,key) 1660 case_98_SBOX32(hash,state,key) 1661 case_97_SBOX32(hash,state,key) 1662 case_96_SBOX32(hash,state,key) 1663 case_95_SBOX32(hash,state,key) 1664 case_94_SBOX32(hash,state,key) 1665 case_93_SBOX32(hash,state,key) 1666 case_92_SBOX32(hash,state,key) 1667 case_91_SBOX32(hash,state,key) 1668 case_90_SBOX32(hash,state,key) 1669 case_89_SBOX32(hash,state,key) 1670 case_88_SBOX32(hash,state,key) 1671 case_87_SBOX32(hash,state,key) 1672 case_86_SBOX32(hash,state,key) 1673 case_85_SBOX32(hash,state,key) 1674 case_84_SBOX32(hash,state,key) 1675 case_83_SBOX32(hash,state,key) 1676 case_82_SBOX32(hash,state,key) 1677 case_81_SBOX32(hash,state,key) 1678 case_80_SBOX32(hash,state,key) 1679 case_79_SBOX32(hash,state,key) 1680 case_78_SBOX32(hash,state,key) 1681 case_77_SBOX32(hash,state,key) 1682 case_76_SBOX32(hash,state,key) 1683 case_75_SBOX32(hash,state,key) 1684 case_74_SBOX32(hash,state,key) 1685 case_73_SBOX32(hash,state,key) 1686 case_72_SBOX32(hash,state,key) 1687 case_71_SBOX32(hash,state,key) 1688 case_70_SBOX32(hash,state,key) 1689 case_69_SBOX32(hash,state,key) 1690 case_68_SBOX32(hash,state,key) 1691 case_67_SBOX32(hash,state,key) 1692 case_66_SBOX32(hash,state,key) 1693 case_65_SBOX32(hash,state,key) 1694 case_64_SBOX32(hash,state,key) 1695 case_63_SBOX32(hash,state,key) 1696 case_62_SBOX32(hash,state,key) 1697 case_61_SBOX32(hash,state,key) 1698 case_60_SBOX32(hash,state,key) 1699 case_59_SBOX32(hash,state,key) 1700 case_58_SBOX32(hash,state,key) 1701 case_57_SBOX32(hash,state,key) 1702 case_56_SBOX32(hash,state,key) 1703 case_55_SBOX32(hash,state,key) 1704 case_54_SBOX32(hash,state,key) 1705 case_53_SBOX32(hash,state,key) 1706 case_52_SBOX32(hash,state,key) 1707 case_51_SBOX32(hash,state,key) 1708 case_50_SBOX32(hash,state,key) 1709 case_49_SBOX32(hash,state,key) 1710 case_48_SBOX32(hash,state,key) 1711 case_47_SBOX32(hash,state,key) 1712 case_46_SBOX32(hash,state,key) 1713 case_45_SBOX32(hash,state,key) 1714 case_44_SBOX32(hash,state,key) 1715 case_43_SBOX32(hash,state,key) 1716 case_42_SBOX32(hash,state,key) 1717 case_41_SBOX32(hash,state,key) 1718 case_40_SBOX32(hash,state,key) 1719 case_39_SBOX32(hash,state,key) 1720 case_38_SBOX32(hash,state,key) 1721 case_37_SBOX32(hash,state,key) 1722 case_36_SBOX32(hash,state,key) 1723 case_35_SBOX32(hash,state,key) 1724 case_34_SBOX32(hash,state,key) 1725 case_33_SBOX32(hash,state,key) 1726 case_32_SBOX32(hash,state,key) 1727 case_31_SBOX32(hash,state,key) 1728 case_30_SBOX32(hash,state,key) 1729 case_29_SBOX32(hash,state,key) 1730 case_28_SBOX32(hash,state,key) 1731 case_27_SBOX32(hash,state,key) 1732 case_26_SBOX32(hash,state,key) 1733 case_25_SBOX32(hash,state,key) 1734 case_24_SBOX32(hash,state,key) 1735 case_23_SBOX32(hash,state,key) 1736 case_22_SBOX32(hash,state,key) 1737 case_21_SBOX32(hash,state,key) 1738 case_20_SBOX32(hash,state,key) 1739 case_19_SBOX32(hash,state,key) 1740 case_18_SBOX32(hash,state,key) 1741 case_17_SBOX32(hash,state,key) 1742 case_16_SBOX32(hash,state,key) 1743 case_15_SBOX32(hash,state,key) 1744 case_14_SBOX32(hash,state,key) 1745 case_13_SBOX32(hash,state,key) 1746 case_12_SBOX32(hash,state,key) 1747 case_11_SBOX32(hash,state,key) 1748 case_10_SBOX32(hash,state,key) 1749 case_9_SBOX32(hash,state,key) 1750 case_8_SBOX32(hash,state,key) 1751 case_7_SBOX32(hash,state,key) 1752 case_6_SBOX32(hash,state,key) 1753 case_5_SBOX32(hash,state,key) 1754 case_4_SBOX32(hash,state,key) 1755 case_3_SBOX32(hash,state,key) 1756 case_2_SBOX32(hash,state,key) 1757 case_1_SBOX32(hash,state,key) 1758 case 0: break; 1759 } 1760 return hash; 1761 } 1762 1763 SBOX32_STATIC_INLINE U32 sbox32_hash96( 1764 const U8 *seed_ch, 1765 const U8 *key, 1766 const STRLEN key_len 1767 ) { 1768 U32 state[SBOX32_STATE_WORDS]; 1769 sbox32_seed_state96(seed_ch,(U8*)state); 1770 return sbox32_hash_with_state((U8*)state,key,key_len); 1771 } 1772 1773 SBOX32_STATIC_INLINE U32 sbox32_hash128( 1774 const U8 *seed_ch, 1775 const U8 *key, 1776 const STRLEN key_len 1777 ) { 1778 U32 state[SBOX32_STATE_WORDS]; 1779 sbox32_seed_state128(seed_ch,(U8*)state); 1780 return sbox32_hash_with_state((U8*)state,key,key_len); 1781 } 1782 1783 #endif 1784