ROHC compression/decompression library
crcany.h
Go to the documentation of this file.
1 /*
2  * crcany version 1.6, 10 February 2017
3  *
4  * Copyright (C) 2014, 2016, 2017 Mark Adler
5  *
6  * This software is provided 'as-is', without any express or implied
7  * warranty. In no event will the authors be held liable for any damages
8  * arising from the use of this software.
9  *
10  * Permission is granted to anyone to use this software for any purpose,
11  * including commercial applications, and to alter it and redistribute it
12  * freely, subject to the following restrictions:
13  *
14  * 1. The origin of this software must not be misrepresented; you must not
15  * claim that you wrote the original software. If you use this software
16  * in a product, an acknowledgment in the product documentation would be
17  * appreciated but is not required.
18  * 2. Altered source versions must be plainly marked as such, and must not be
19  * misrepresented as being the original software.
20  * 3. This notice may not be removed or altered from any source distribution.
21  *
22  * Mark Adler
23  * madler@alumni.caltech.edu
24  */
25 
26 /*
27  * Copyright 2014,2016,2017 Mark Adler
28  * Copyright 2018 Didier Barvaux
29  * Copyright 2018 Viveris Technologies
30  *
31  * This library is free software; you can redistribute it and/or
32  * modify it under the terms of the GNU Lesser General Public
33  * License as published by the Free Software Foundation; either
34  * version 2.1 of the License, or (at your option) any later version.
35  *
36  * This library is distributed in the hope that it will be useful,
37  * but WITHOUT ANY WARRANTY; without even the implied warranty of
38  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
39  * Lesser General Public License for more details.
40  *
41  * You should have received a copy of the GNU Lesser General Public
42  * License along with this library; if not, write to the Free Software
43  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
44  */
45 
46 /**
47  * @file crcany.h
48  * @brief ROHC base CRC routines
49  * @author Mark Adler <madler@alumni.caltech.edu>
50  * @author Didier Barvaux <didier.barvaux@toulouse.viveris.com>
51  * @author Didier Barvaux <didier@barvaux.org>
52  *
53  * This is a modified version of the CRC-3/ROHC algorithm initially
54  * generated by crcany from Mark Adler (https://github.com/madler/crcany).
55  */
56 
57 #ifndef ROHC_COMMON_CRCANY_H
58 #define ROHC_COMMON_CRCANY_H
59 
60 #include <stddef.h>
61 #include <stdint.h>
62 
63 // Compute the CRC a word at a time.
64 unsigned crc3rohc_word(unsigned crc, void const *mem, size_t len)
65  __attribute__((warn_unused_result, nonnull(2)));
66 
67 #endif
68 
unsigned crc3rohc_word(unsigned crc, void const *mem, size_t len)
Definition: crcany.c:148
bool nonnull(1)))