mirror of
				https://github.com/PowerShell/openssh-portable.git
				synced 2025-10-30 19:14:27 +01:00 
			
		
		
		
	[Makefile.in auth-bsdauth.c auth-chall.c auth-options.c auth-rsa.c
     [auth2-none.c auth2-pubkey.c authfile.c authfile.h cipher-3des1.c
     [cipher-chachapoly.c cipher-chachapoly.h cipher.c cipher.h
     [digest-libc.c digest-openssl.c digest.h dns.c entropy.c hmac.h
     [hostfile.c key.c key.h krl.c monitor.c packet.c rsa.c rsa.h
     [ssh-add.c ssh-agent.c ssh-dss.c ssh-ecdsa.c ssh-ed25519.c
     [ssh-keygen.c ssh-pkcs11-client.c ssh-pkcs11-helper.c ssh-pkcs11.c
     [ssh-rsa.c sshbuf-misc.c sshbuf.h sshconnect.c sshconnect1.c
     [sshconnect2.c sshd.c sshkey.c sshkey.h
     [openbsd-compat/openssl-compat.c openbsd-compat/openssl-compat.h]
     New key API: refactor key-related functions to be more library-like,
     existing API is offered as a set of wrappers.
     with and ok markus@
     Thanks also to Ben Hawkes, David Tomaschik, Ivan Fratric, Matthew
     Dempsky and Ron Bowes for a detailed review a few months ago.
     NB. This commit also removes portable OpenSSH support for OpenSSL
     <0.9.8e.
		
	
			
		
			
				
	
	
		
			39 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* $OpenBSD: hmac.h,v 1.9 2014/06/24 01:13:21 djm Exp $ */
 | |
| /*
 | |
|  * Copyright (c) 2014 Markus Friedl.  All rights reserved.
 | |
|  *
 | |
|  * Permission to use, copy, modify, and distribute this software for any
 | |
|  * purpose with or without fee is hereby granted, provided that the above
 | |
|  * copyright notice and this permission notice appear in all copies.
 | |
|  *
 | |
|  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 | |
|  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 | |
|  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 | |
|  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 | |
|  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 | |
|  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 | |
|  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | |
|  */
 | |
| 
 | |
| #ifndef _HMAC_H
 | |
| #define _HMAC_H
 | |
| 
 | |
| /* Returns the algorithm's digest length in bytes or 0 for invalid algorithm */
 | |
| size_t ssh_hmac_bytes(int alg);
 | |
| 
 | |
| struct sshbuf;
 | |
| struct ssh_hmac_ctx;
 | |
| struct ssh_hmac_ctx *ssh_hmac_start(int alg);
 | |
| 
 | |
| /* Sets the state of the HMAC or resets the state if key == NULL */
 | |
| int ssh_hmac_init(struct ssh_hmac_ctx *ctx, const void *key, size_t klen)
 | |
| 	__attribute__((__bounded__(__buffer__, 2, 3)));
 | |
| int ssh_hmac_update(struct ssh_hmac_ctx *ctx, const void *m, size_t mlen)
 | |
| 	__attribute__((__bounded__(__buffer__, 2, 3)));
 | |
| int ssh_hmac_update_buffer(struct ssh_hmac_ctx *ctx, const struct sshbuf *b);
 | |
| int ssh_hmac_final(struct ssh_hmac_ctx *ctx, u_char *d, size_t dlen)
 | |
| 	__attribute__((__bounded__(__buffer__, 2, 3)));
 | |
| void ssh_hmac_free(struct ssh_hmac_ctx *ctx);
 | |
| 
 | |
| #endif /* _HMAC_H */
 |