util_md5.h revision b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering/* ====================================================================
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * Copyright (c) 1995-1999 The Apache Group. All rights reserved.
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * Redistribution and use in source and binary forms, with or without
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * modification, are permitted provided that the following conditions
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * are met:
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * 1. Redistributions of source code must retain the above copyright
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * notice, this list of conditions and the following disclaimer.
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * 2. Redistributions in binary form must reproduce the above copyright
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * notice, this list of conditions and the following disclaimer in
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * the documentation and/or other materials provided with the
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * distribution.
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * 3. All advertising materials mentioning features or use of this
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * software must display the following acknowledgment:
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * "This product includes software developed by the Apache Group
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * for use in the Apache HTTP server project (http://www.apache.org/)."
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * 4. The names "Apache Server" and "Apache Group" must not be used to
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * endorse or promote products derived from this software without
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * prior written permission. For written permission, please contact
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * apache@apache.org.
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * 5. Products derived from this software may not be called "Apache"
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * nor may "Apache" appear in their names without prior written
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * permission of the Apache Group.
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * 6. Redistributions of any form whatsoever must retain the following
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * acknowledgment:
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * "This product includes software developed by the Apache Group
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * for use in the Apache HTTP server project (http://www.apache.org/)."
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * OF THE POSSIBILITY OF SUCH DAMAGE.
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * ====================================================================
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * This software consists of voluntary contributions made by many
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * individuals on behalf of the Apache Group and was originally based
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * on public domain software written at the National Center for
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * Supercomputing Applications, University of Illinois, Urbana-Champaign.
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * For more information on the Apache Group and the Apache HTTP server
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering * project, please see <http://www.apache.org/>.
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering *
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering */
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering#ifndef APACHE_UTIL_MD5_H
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering#define APACHE_UTIL_MD5_H
d167824896e583ffaca891b1c355ff852496ff66Iago López Galeiras
d8fc6a000fe21b0c1ba27fbfed8b42d00b349a4bLennart Poettering#ifdef __cplusplus
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poetteringextern "C" {
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering#endif
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering#include "ap_md5.h"
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart PoetteringAPI_EXPORT(char *) ap_md5(ap_context_t *a, const unsigned char *string);
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart PoetteringAPI_EXPORT(char *) ap_md5_binary(ap_context_t *a, const unsigned char *buf, int len);
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart PoetteringAPI_EXPORT(char *) ap_md5contextTo64(ap_context_t *p, AP_MD5_CTX * context);
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart Poettering#ifdef CHARSET_EBCDIC
e83bebeff7d9d734e17c3e38ac13daabc09518e1Lennart PoetteringAPI_EXPORT(char *) ap_md5digest(ap_context_t *p, FILE *infile, int convert);
#else
API_EXPORT(char *) ap_md5digest(ap_context_t *p, APRFile infile);
#endif /* CHARSET_EBCDIC */
#ifdef __cplusplus
}
#endif
#endif /* !APACHE_UTIL_MD5_H */