xref: /freebsd-src/sys/opencrypto/xform_comp.h (revision 71625ec9ad2a9bc8c09784fbd23b759830e0ee5f)
12155bb23SAllan Jude /*	$OpenBSD: xform.h,v 1.8 2001/08/28 12:20:43 ben Exp $	*/
22155bb23SAllan Jude 
32155bb23SAllan Jude /*-
42155bb23SAllan Jude  * The author of this code is Angelos D. Keromytis (angelos@cis.upenn.edu)
52155bb23SAllan Jude  *
62155bb23SAllan Jude  * This code was written by Angelos D. Keromytis in Athens, Greece, in
72155bb23SAllan Jude  * February 2000. Network Security Technologies Inc. (NSTI) kindly
82155bb23SAllan Jude  * supported the development of this code.
92155bb23SAllan Jude  *
102155bb23SAllan Jude  * Copyright (c) 2000 Angelos D. Keromytis
112155bb23SAllan Jude  * Copyright (c) 2014 The FreeBSD Foundation
122155bb23SAllan Jude  * All rights reserved.
132155bb23SAllan Jude  *
142155bb23SAllan Jude  * Portions of this software were developed by John-Mark Gurney
152155bb23SAllan Jude  * under sponsorship of the FreeBSD Foundation and
162155bb23SAllan Jude  * Rubicon Communications, LLC (Netgate).
172155bb23SAllan Jude  *
182155bb23SAllan Jude  * Permission to use, copy, and modify this software without fee
192155bb23SAllan Jude  * is hereby granted, provided that this entire notice is included in
202155bb23SAllan Jude  * all source code copies of any software which is or includes a copy or
212155bb23SAllan Jude  * modification of this software.
222155bb23SAllan Jude  *
232155bb23SAllan Jude  * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR
242155bb23SAllan Jude  * IMPLIED WARRANTY. IN PARTICULAR, NONE OF THE AUTHORS MAKES ANY
252155bb23SAllan Jude  * REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE
262155bb23SAllan Jude  * MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR
272155bb23SAllan Jude  * PURPOSE.
282155bb23SAllan Jude  */
292155bb23SAllan Jude 
302155bb23SAllan Jude #ifndef _CRYPTO_XFORM_COMP_H_
312155bb23SAllan Jude #define _CRYPTO_XFORM_COMP_H_
322155bb23SAllan Jude 
33*46f69ebaSJohn Baldwin #include <sys/types.h>
342155bb23SAllan Jude 
352155bb23SAllan Jude #include <opencrypto/deflate.h>
362155bb23SAllan Jude #include <opencrypto/cryptodev.h>
372155bb23SAllan Jude 
382155bb23SAllan Jude /* Declarations */
392155bb23SAllan Jude struct comp_algo {
402155bb23SAllan Jude 	int type;
412155bb23SAllan Jude 	char *name;
422155bb23SAllan Jude 	size_t minlen;
43d3d79e96SJohn Baldwin 	uint32_t (*compress) (uint8_t *, uint32_t, uint8_t **);
44d3d79e96SJohn Baldwin 	uint32_t (*decompress) (uint8_t *, uint32_t, uint8_t **);
452155bb23SAllan Jude };
462155bb23SAllan Jude 
47d8787d4fSMark Johnston extern const struct comp_algo comp_algo_deflate;
482155bb23SAllan Jude 
492155bb23SAllan Jude #endif /* _CRYPTO_XFORM_COMP_H_ */
50