1 /*----------------------------------------------------------------------------*/ 2 /* Xymon monitor library. */ 3 /* */ 4 /* This file is part of the Xymon monitor library, but was taken from the */ 5 /* FreeBSD sources. It was originally written by Eric Young, and is NOT */ 6 /* licensed under the GPL. Please adhere the original copyright notice below. */ 7 /*----------------------------------------------------------------------------*/ 8 9 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 10 * All rights reserved. 11 * 12 * This package is an SSL implementation written 13 * by Eric Young (eay@cryptsoft.com). 14 * The implementation was written so as to conform with Netscapes SSL. 15 * 16 * This library is free for commercial and non-commercial use as long as 17 * the following conditions are aheared to. The following conditions 18 * apply to all code found in this distribution, be it the RC4, RSA, 19 * lhash, DES, etc., code; not just the SSL code. The SSL documentation 20 * included with this distribution is covered by the same copyright terms 21 * except that the holder is Tim Hudson (tjh@cryptsoft.com). 22 * 23 * Copyright remains Eric Young's, and as such any Copyright notices in 24 * the code are not to be removed. 25 * If this package is used in a product, Eric Young should be given attribution 26 * as the author of the parts of the library used. 27 * This can be in the form of a textual message at program startup or 28 * in documentation (online or textual) provided with the package. 29 * 30 * Redistribution and use in source and binary forms, with or without 31 * modification, are permitted provided that the following conditions 32 * are met: 33 * 1. Redistributions of source code must retain the copyright 34 * notice, this list of conditions and the following disclaimer. 35 * 2. Redistributions in binary form must reproduce the above copyright 36 * notice, this list of conditions and the following disclaimer in the 37 * documentation and/or other materials provided with the distribution. 38 * 3. All advertising materials mentioning features or use of this software 39 * must display the following acknowledgement: 40 * "This product includes cryptographic software written by 41 * Eric Young (eay@cryptsoft.com)" 42 * The word 'cryptographic' can be left out if the rouines from the library 43 * being used are not cryptographic related :-). 44 * 4. If you include any Windows specific code (or a derivative thereof) from 45 * the apps directory (application code) you must include an acknowledgement: 46 * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" 47 * 48 * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND 49 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 50 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 51 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 52 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 53 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 54 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 55 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 56 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 57 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 58 * SUCH DAMAGE. 59 * 60 * The licence and distribution terms for any publically available version or 61 * derivative of this code cannot be changed. i.e. this code cannot simply be 62 * copied and put under another distribution licence 63 * [including the GNU Public Licence.] 64 */ 65 #define KL0 0x00000000L 66 #define KL1 0x5A827999L 67 #define KL2 0x6ED9EBA1L 68 #define KL3 0x8F1BBCDCL 69 #define KL4 0xA953FD4EL 70 71 #define KR0 0x50A28BE6L 72 #define KR1 0x5C4DD124L 73 #define KR2 0x6D703EF3L 74 #define KR3 0x7A6D76E9L 75 #define KR4 0x00000000L 76 77 #define WL00 0 78 #define SL00 11 79 #define WL01 1 80 #define SL01 14 81 #define WL02 2 82 #define SL02 15 83 #define WL03 3 84 #define SL03 12 85 #define WL04 4 86 #define SL04 5 87 #define WL05 5 88 #define SL05 8 89 #define WL06 6 90 #define SL06 7 91 #define WL07 7 92 #define SL07 9 93 #define WL08 8 94 #define SL08 11 95 #define WL09 9 96 #define SL09 13 97 #define WL10 10 98 #define SL10 14 99 #define WL11 11 100 #define SL11 15 101 #define WL12 12 102 #define SL12 6 103 #define WL13 13 104 #define SL13 7 105 #define WL14 14 106 #define SL14 9 107 #define WL15 15 108 #define SL15 8 109 110 #define WL16 7 111 #define SL16 7 112 #define WL17 4 113 #define SL17 6 114 #define WL18 13 115 #define SL18 8 116 #define WL19 1 117 #define SL19 13 118 #define WL20 10 119 #define SL20 11 120 #define WL21 6 121 #define SL21 9 122 #define WL22 15 123 #define SL22 7 124 #define WL23 3 125 #define SL23 15 126 #define WL24 12 127 #define SL24 7 128 #define WL25 0 129 #define SL25 12 130 #define WL26 9 131 #define SL26 15 132 #define WL27 5 133 #define SL27 9 134 #define WL28 2 135 #define SL28 11 136 #define WL29 14 137 #define SL29 7 138 #define WL30 11 139 #define SL30 13 140 #define WL31 8 141 #define SL31 12 142 143 #define WL32 3 144 #define SL32 11 145 #define WL33 10 146 #define SL33 13 147 #define WL34 14 148 #define SL34 6 149 #define WL35 4 150 #define SL35 7 151 #define WL36 9 152 #define SL36 14 153 #define WL37 15 154 #define SL37 9 155 #define WL38 8 156 #define SL38 13 157 #define WL39 1 158 #define SL39 15 159 #define WL40 2 160 #define SL40 14 161 #define WL41 7 162 #define SL41 8 163 #define WL42 0 164 #define SL42 13 165 #define WL43 6 166 #define SL43 6 167 #define WL44 13 168 #define SL44 5 169 #define WL45 11 170 #define SL45 12 171 #define WL46 5 172 #define SL46 7 173 #define WL47 12 174 #define SL47 5 175 176 #define WL48 1 177 #define SL48 11 178 #define WL49 9 179 #define SL49 12 180 #define WL50 11 181 #define SL50 14 182 #define WL51 10 183 #define SL51 15 184 #define WL52 0 185 #define SL52 14 186 #define WL53 8 187 #define SL53 15 188 #define WL54 12 189 #define SL54 9 190 #define WL55 4 191 #define SL55 8 192 #define WL56 13 193 #define SL56 9 194 #define WL57 3 195 #define SL57 14 196 #define WL58 7 197 #define SL58 5 198 #define WL59 15 199 #define SL59 6 200 #define WL60 14 201 #define SL60 8 202 #define WL61 5 203 #define SL61 6 204 #define WL62 6 205 #define SL62 5 206 #define WL63 2 207 #define SL63 12 208 209 #define WL64 4 210 #define SL64 9 211 #define WL65 0 212 #define SL65 15 213 #define WL66 5 214 #define SL66 5 215 #define WL67 9 216 #define SL67 11 217 #define WL68 7 218 #define SL68 6 219 #define WL69 12 220 #define SL69 8 221 #define WL70 2 222 #define SL70 13 223 #define WL71 10 224 #define SL71 12 225 #define WL72 14 226 #define SL72 5 227 #define WL73 1 228 #define SL73 12 229 #define WL74 3 230 #define SL74 13 231 #define WL75 8 232 #define SL75 14 233 #define WL76 11 234 #define SL76 11 235 #define WL77 6 236 #define SL77 8 237 #define WL78 15 238 #define SL78 5 239 #define WL79 13 240 #define SL79 6 241 242 #define WR00 5 243 #define SR00 8 244 #define WR01 14 245 #define SR01 9 246 #define WR02 7 247 #define SR02 9 248 #define WR03 0 249 #define SR03 11 250 #define WR04 9 251 #define SR04 13 252 #define WR05 2 253 #define SR05 15 254 #define WR06 11 255 #define SR06 15 256 #define WR07 4 257 #define SR07 5 258 #define WR08 13 259 #define SR08 7 260 #define WR09 6 261 #define SR09 7 262 #define WR10 15 263 #define SR10 8 264 #define WR11 8 265 #define SR11 11 266 #define WR12 1 267 #define SR12 14 268 #define WR13 10 269 #define SR13 14 270 #define WR14 3 271 #define SR14 12 272 #define WR15 12 273 #define SR15 6 274 275 #define WR16 6 276 #define SR16 9 277 #define WR17 11 278 #define SR17 13 279 #define WR18 3 280 #define SR18 15 281 #define WR19 7 282 #define SR19 7 283 #define WR20 0 284 #define SR20 12 285 #define WR21 13 286 #define SR21 8 287 #define WR22 5 288 #define SR22 9 289 #define WR23 10 290 #define SR23 11 291 #define WR24 14 292 #define SR24 7 293 #define WR25 15 294 #define SR25 7 295 #define WR26 8 296 #define SR26 12 297 #define WR27 12 298 #define SR27 7 299 #define WR28 4 300 #define SR28 6 301 #define WR29 9 302 #define SR29 15 303 #define WR30 1 304 #define SR30 13 305 #define WR31 2 306 #define SR31 11 307 308 #define WR32 15 309 #define SR32 9 310 #define WR33 5 311 #define SR33 7 312 #define WR34 1 313 #define SR34 15 314 #define WR35 3 315 #define SR35 11 316 #define WR36 7 317 #define SR36 8 318 #define WR37 14 319 #define SR37 6 320 #define WR38 6 321 #define SR38 6 322 #define WR39 9 323 #define SR39 14 324 #define WR40 11 325 #define SR40 12 326 #define WR41 8 327 #define SR41 13 328 #define WR42 12 329 #define SR42 5 330 #define WR43 2 331 #define SR43 14 332 #define WR44 10 333 #define SR44 13 334 #define WR45 0 335 #define SR45 13 336 #define WR46 4 337 #define SR46 7 338 #define WR47 13 339 #define SR47 5 340 341 #define WR48 8 342 #define SR48 15 343 #define WR49 6 344 #define SR49 5 345 #define WR50 4 346 #define SR50 8 347 #define WR51 1 348 #define SR51 11 349 #define WR52 3 350 #define SR52 14 351 #define WR53 11 352 #define SR53 14 353 #define WR54 15 354 #define SR54 6 355 #define WR55 0 356 #define SR55 14 357 #define WR56 5 358 #define SR56 6 359 #define WR57 12 360 #define SR57 9 361 #define WR58 2 362 #define SR58 12 363 #define WR59 13 364 #define SR59 9 365 #define WR60 9 366 #define SR60 12 367 #define WR61 7 368 #define SR61 5 369 #define WR62 10 370 #define SR62 15 371 #define WR63 14 372 #define SR63 8 373 374 #define WR64 12 375 #define SR64 8 376 #define WR65 15 377 #define SR65 5 378 #define WR66 10 379 #define SR66 12 380 #define WR67 4 381 #define SR67 9 382 #define WR68 1 383 #define SR68 12 384 #define WR69 5 385 #define SR69 5 386 #define WR70 8 387 #define SR70 14 388 #define WR71 7 389 #define SR71 6 390 #define WR72 6 391 #define SR72 8 392 #define WR73 2 393 #define SR73 13 394 #define WR74 13 395 #define SR74 6 396 #define WR75 14 397 #define SR75 5 398 #define WR76 0 399 #define SR76 15 400 #define WR77 3 401 #define SR77 13 402 #define WR78 9 403 #define SR78 11 404 #define WR79 11 405 #define SR79 11 406 407