1/* Licensed to the Apache Software Foundation (ASF) under one or more 2 * contributor license agreements. See the NOTICE file distributed with 3 * this work for additional information regarding copyright ownership. 4 * The ASF licenses this file to You under the Apache License, Version 2.0 5 * (the "License"); you may not use this file except in compliance with 6 * the License. You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17/** 18 * @file util_md5.h 19 * @brief Apache MD5 library 20 * 21 * @defgroup APACHE_CORE_MD5 MD5 Package Library 22 * @ingroup APACHE_CORE 23 * @{ 24 */ 25 26#ifndef APACHE_UTIL_MD5_H 27#define APACHE_UTIL_MD5_H 28 29#ifdef __cplusplus 30extern "C" { 31#endif 32 33#include "apr_md5.h" 34 35/** 36 * Create an MD5 checksum of a given string 37 * @param a Pool to allocate out of 38 * @param string String to get the checksum of 39 * @return The checksum 40 * @fn char *ap_md5(apr_pool_t *a, const unsigned char *string) 41 */ 42AP_DECLARE(char *) ap_md5(apr_pool_t *a, const unsigned char *string); 43 44/** 45 * Create an MD5 checksum of a string of binary data 46 * @param a Pool to allocate out of 47 * @param buf Buffer to generate checksum for 48 * @param len The length of the buffer 49 * @return The checksum 50 * @fn char *ap_md5_binary(apr_pool_t *a, const unsigned char *buf, int len) 51 */ 52AP_DECLARE(char *) ap_md5_binary(apr_pool_t *a, const unsigned char *buf, int len); 53 54/** 55 * Convert an MD5 checksum into a base64 encoding 56 * @param p The pool to allocate out of 57 * @param context The context to convert 58 * @return The converted encoding 59 * @fn char *ap_md5contextTo64(apr_pool_t *p, apr_md5_ctx_t *context) 60 */ 61AP_DECLARE(char *) ap_md5contextTo64(apr_pool_t *p, apr_md5_ctx_t *context); 62 63/** 64 * Create an MD5 Digest for a given file 65 * @param p The pool to allocate out of 66 * @param infile The file to create the digest for 67 * @fn char *ap_md5digest(apr_pool_t *p, apr_file_t *infile) 68 */ 69AP_DECLARE(char *) ap_md5digest(apr_pool_t *p, apr_file_t *infile); 70 71#ifdef __cplusplus 72} 73#endif 74 75#endif /* !APACHE_UTIL_MD5_H */ 76/** @} */ 77