Loading...
Searching...
No Matches
apr_md4.h
Go to the documentation of this file.
/* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/* This is derived from material copyright RSA Data Security, Inc.
* Their notice is reproduced below in its entirety.
*
* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
* rights reserved.
*
* License to copy and use this software is granted provided that it
* is identified as the "RSA Data Security, Inc. MD4 Message-Digest
* Algorithm" in all material mentioning or referencing this software
* or this function.
*
* License is also granted to make and use derivative works provided
* that such works are identified as "derived from the RSA Data
* Security, Inc. MD4 Message-Digest Algorithm" in all material
* mentioning or referencing the derived work.
*
* RSA Data Security, Inc. makes no representations concerning either
* the merchantability of this software or the suitability of this
* software for any particular purpose. It is provided "as is"
* without express or implied warranty of any kind.
*
* These notices must be retained in any copies of any part of this
* documentation and/or software.
*/
#ifndef APR_MD4_H
#define APR_MD4_H
#include "apu.h"
#include "apr_xlate.h"
#ifdef __cplusplus
extern "C" {
#endif
#define APR_MD4_DIGESTSIZE 16
typedef struct apr_md4_ctx_t apr_md4_ctx_t;
struct apr_md4_ctx_t {
apr_uint32_t state[4];
apr_uint32_t count[2];
unsigned char buffer[64];
#if APR_HAS_XLATE
apr_xlate_t *xlate;
#endif
};
APU_DECLARE(apr_status_t) apr_md4_init(apr_md4_ctx_t *context);
#if APR_HAS_XLATE
APU_DECLARE(apr_status_t) apr_md4_set_xlate(apr_md4_ctx_t *context,
apr_xlate_t *xlate);
#else
#define apr_md4_set_xlate(context, xlate) APR_ENOTIMPL
#endif
APU_DECLARE(apr_status_t) apr_md4_update(apr_md4_ctx_t *context,
const unsigned char *input,
apr_size_t inputLen);
APU_DECLARE(apr_status_t) apr_md4_final(
unsigned char digest[APR_MD4_DIGESTSIZE],
apr_md4_ctx_t *context);
APU_DECLARE(apr_status_t) apr_md4(unsigned char digest[APR_MD4_DIGESTSIZE],
const unsigned char *input,
apr_size_t inputLen);
#ifdef __cplusplus
}
#endif
#endif /* !APR_MD4_H */
apr_xlate.h
APR I18N translation library.
apr_md4_final
apr_status_t apr_md4_final(unsigned char digest[APR_MD4_DIGESTSIZE], apr_md4_ctx_t *context)
apr_md4_init
apr_status_t apr_md4_init(apr_md4_ctx_t *context)
APR_MD4_DIGESTSIZE
#define APR_MD4_DIGESTSIZE
Definition apr_md4.h:61
apr_md4_set_xlate
apr_status_t apr_md4_set_xlate(apr_md4_ctx_t *context, apr_xlate_t *xlate)
apr_md4
apr_status_t apr_md4(unsigned char digest[APR_MD4_DIGESTSIZE], const unsigned char *input, apr_size_t inputLen)
apr_md4_update
apr_status_t apr_md4_update(apr_md4_ctx_t *context, const unsigned char *input, apr_size_t inputLen)
apr_xlate_t
struct apr_xlate_t apr_xlate_t
Definition apr_xlate.h:39
apr_md4_ctx_t
Definition apr_md4.h:67
apr_md4_ctx_t::count
apr_uint32_t count[2]
Definition apr_md4.h:71
apr_md4_ctx_t::buffer
unsigned char buffer[64]
Definition apr_md4.h:73
apr_md4_ctx_t::state
apr_uint32_t state[4]
Definition apr_md4.h:69
apr_md4_ctx_t::xlate
apr_xlate_t * xlate
Definition apr_md4.h:76