| Chris@10 | 1 /* | 
| Chris@10 | 2  * Copyright (c) 2003, 2007-11 Matteo Frigo | 
| Chris@10 | 3  * Copyright (c) 2003, 2007-11 Massachusetts Institute of Technology | 
| Chris@10 | 4  * | 
| Chris@10 | 5  * This program is free software; you can redistribute it and/or modify | 
| Chris@10 | 6  * it under the terms of the GNU General Public License as published by | 
| Chris@10 | 7  * the Free Software Foundation; either version 2 of the License, or | 
| Chris@10 | 8  * (at your option) any later version. | 
| Chris@10 | 9  * | 
| Chris@10 | 10  * This program is distributed in the hope that it will be useful, | 
| Chris@10 | 11  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| Chris@10 | 12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
| Chris@10 | 13  * GNU General Public License for more details. | 
| Chris@10 | 14  * | 
| Chris@10 | 15  * You should have received a copy of the GNU General Public License | 
| Chris@10 | 16  * along with this program; if not, write to the Free Software | 
| Chris@10 | 17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA | 
| Chris@10 | 18  * | 
| Chris@10 | 19  */ | 
| Chris@10 | 20 | 
| Chris@10 | 21 #include "ifftw.h" | 
| Chris@10 | 22 | 
| Chris@10 | 23 | 
| Chris@10 | 24 void X(md5putb)(md5 *p, const void *d_, size_t len) | 
| Chris@10 | 25 { | 
| Chris@10 | 26      size_t i; | 
| Chris@10 | 27      const unsigned char *d = (const unsigned char *)d_; | 
| Chris@10 | 28      for (i = 0; i < len; ++i) | 
| Chris@10 | 29 	  X(md5putc)(p, d[i]); | 
| Chris@10 | 30 } | 
| Chris@10 | 31 | 
| Chris@10 | 32 void X(md5puts)(md5 *p, const char *s) | 
| Chris@10 | 33 { | 
| Chris@10 | 34      /* also hash final '\0' */ | 
| Chris@10 | 35      do { | 
| Chris@10 | 36 	  X(md5putc)(p, *s); | 
| Chris@10 | 37      } while(*s++); | 
| Chris@10 | 38 } | 
| Chris@10 | 39 | 
| Chris@10 | 40 void X(md5int)(md5 *p, int i) | 
| Chris@10 | 41 { | 
| Chris@10 | 42      X(md5putb)(p, &i, sizeof(i)); | 
| Chris@10 | 43 } | 
| Chris@10 | 44 | 
| Chris@10 | 45 void X(md5INT)(md5 *p, INT i) | 
| Chris@10 | 46 { | 
| Chris@10 | 47      X(md5putb)(p, &i, sizeof(i)); | 
| Chris@10 | 48 } | 
| Chris@10 | 49 | 
| Chris@10 | 50 void X(md5unsigned)(md5 *p, unsigned i) | 
| Chris@10 | 51 { | 
| Chris@10 | 52      X(md5putb)(p, &i, sizeof(i)); | 
| Chris@10 | 53 } | 
| Chris@10 | 54 |