1#' @useDynLib openssl R_md_init
2md_init <- function(algo){
3  .Call(R_md_init, as.character(algo))
4}
5
6#' @useDynLib openssl R_md_feed
7md_feed <- function(md, data){
8  stopifnot(inherits(md, "md"))
9  stopifnot(is.raw(data))
10  .Call(R_md_feed, md, data)
11}
12
13#' @useDynLib openssl R_md_final
14md_final <- function(md){
15  stopifnot(inherits(md, "md"))
16  .Call(R_md_final, md)
17}
18
19#' @useDynLib openssl R_hmac_init
20hmac_init <- function(algo, key){
21  .Call(R_hmac_init, as.character(algo), key)
22}
23
24#' @useDynLib openssl R_hmac_feed
25hmac_feed <- function(ptr, data){
26  stopifnot(inherits(ptr, "md"))
27  stopifnot(is.raw(data))
28  .Call(R_hmac_feed, ptr, data)
29}
30
31#' @useDynLib openssl R_hmac_final
32hmac_final <- function(md){
33  stopifnot(inherits(md, "md"))
34  .Call(R_hmac_final, md)
35}
36
37