* DEALINGS IN THE SOFTWARE.
*/
-#ifndef SHA1_H
-#define SHA1_H
+#ifndef MESA_SHA1_H
+#define MESA_SHA1_H
#include <stdlib.h>
+#include "c99_compat.h"
+#include "sha1/sha1.h"
#ifdef __cplusplus
extern "C" {
#endif
-struct mesa_sha1;
+#define mesa_sha1 _SHA1_CTX
-struct mesa_sha1 *
-_mesa_sha1_init(void);
+static inline void
+_mesa_sha1_init(struct mesa_sha1 *ctx)
+{
+ SHA1Init(ctx);
+}
-int
-_mesa_sha1_update(struct mesa_sha1 *ctx, const void *data, int size);
+static inline void
+_mesa_sha1_update(struct mesa_sha1 *ctx, const void *data, size_t size)
+{
+ SHA1Update(ctx, (const unsigned char *)data, size);
+}
-int
-_mesa_sha1_final(struct mesa_sha1 *ctx, unsigned char result[20]);
+static inline void
+_mesa_sha1_final(struct mesa_sha1 *ctx, unsigned char result[20])
+{
+ SHA1Final(result, ctx);
+}
-char *
+void
_mesa_sha1_format(char *buf, const unsigned char *sha1);
void