summaryrefslogtreecommitdiff
path: root/libavutil
diff options
context:
space:
mode:
authorKostya Shishkov <kostya.shishkov@gmail.com>2009-07-09 07:07:01 +0000
committerKostya Shishkov <kostya.shishkov@gmail.com>2009-07-09 07:07:01 +0000
commit4364fc9a0d630183dbb4c676062d4369181131f1 (patch)
tree0ad4996a26a96e9046265122cfdd1233081c3e0c /libavutil
parent71ed6c8f0662fad1b4ad30b6f9ba71467c458ae9 (diff)
Document SHA-1 functions and structures
Originally committed as revision 19385 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavutil')
-rw-r--r--libavutil/sha1.c7
-rw-r--r--libavutil/sha1.h20
2 files changed, 24 insertions, 3 deletions
diff --git a/libavutil/sha1.c b/libavutil/sha1.c
index f3e45deb91..fbff52a17b 100644
--- a/libavutil/sha1.c
+++ b/libavutil/sha1.c
@@ -23,10 +23,11 @@
#include "bswap.h"
#include "sha1.h"
+/** hash context */
typedef struct AVSHA1 {
- uint64_t count;
- uint8_t buffer[64];
- uint32_t state[5];
+ uint64_t count; ///< number of bytes in buffer
+ uint8_t buffer[64]; ///< 512-bit buffer of input values used in hash updating
+ uint32_t state[5]; ///< current hash value
} AVSHA1;
const int av_sha1_size = sizeof(AVSHA1);
diff --git a/libavutil/sha1.h b/libavutil/sha1.h
index 0f14ca8960..b9a43cdd39 100644
--- a/libavutil/sha1.h
+++ b/libavutil/sha1.h
@@ -27,8 +27,28 @@ extern const int av_sha1_size;
struct AVSHA1;
+/**
+ * Initializes SHA-1 hashing.
+ *
+ * @param context pointer to the function context (of size av_sha_size)
+ */
void av_sha1_init(struct AVSHA1* context);
+
+/**
+ * Updates hash value.
+ *
+ * @param context hash function context
+ * @param data input data to update hash with
+ * @param len input data length
+ */
void av_sha1_update(struct AVSHA1* context, const uint8_t* data, unsigned int len);
+
+/**
+ * Finishes hashing and output digest value.
+ *
+ * @param context hash function context
+ * @param digest buffer where output digest value is stored
+ */
void av_sha1_final(struct AVSHA1* context, uint8_t digest[20]);
#endif /* AVUTIL_SHA1_H */