Wireshark 4.7.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
Functions
golay.h File Reference
#include <stdint.h>
#include "ws_symbol_export.h"

Go to the source code of this file.

Functions

WS_DLL_PUBLIC uint32_t golay_encode (unsigned w)
 Encodes a 12-bit word to a 24-bit codeword.
 
WS_DLL_PUBLIC int32_t golay_errors (uint32_t codeword)
 Returns a mask showing the bits which are in error in a received Golay codeword.
 
WS_DLL_PUBLIC int golay_decode (uint32_t w)
 Decodes a Golay codeword.
 

Detailed Description

Provides routines for encoding and decoding the extended Golay (24,12,8) code.

This implementation will detect up to 4 errors in a codeword (without being able to correct them); it will correct up to 3 errors.

We use uint32_t to hold the 24-bit codewords, with the data part in the bottom 12 bits and the parity in bits 12-23.

Wireshark - Network traffic analyzer By Gerald Combs geral.nosp@m.d@wi.nosp@m.resha.nosp@m.rk.o.nosp@m.rg Copyright 1998 Gerald Combs

SPDX-License-Identifier: GPL-2.0-or-later

Function Documentation

◆ golay_decode()

WS_DLL_PUBLIC int golay_decode ( uint32_t  w)

Decodes a Golay codeword.

Decode a received codeword. Up to 3 errors are corrected for; 4 errors are detected as uncorrectable (return -1); 5 or more errors cause an incorrect correction.

Parameters
wThe 32-bit input word containing the Golay codeword.
Returns
The decoded 12-bit data or -1 if decoding fails.

◆ golay_encode()

WS_DLL_PUBLIC uint32_t golay_encode ( unsigned  w)

Encodes a 12-bit word to a 24-bit codeword.

Parameters
wThe 12-bit word to encode.
Returns
The 24-bit Golay codeword.

◆ golay_errors()

WS_DLL_PUBLIC int32_t golay_errors ( uint32_t  codeword)

Returns a mask showing the bits which are in error in a received Golay codeword.

Return a mask showing the bits which are in error in a received 24-bit codeword, or -1 if 4 errors were detected.

Parameters
codewordThe received 24-bit Golay codeword.
Returns
A bitmask of errored bit positions, or -1 if 4 errors were detected.