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

Go to the source code of this file.

Functions

WS_DLL_PUBLIC bool ws_strtoi64 (const char *str, const char **endptr, int64_t *cint)
 
WS_DLL_PUBLIC bool ws_strtoi32 (const char *str, const char **endptr, int32_t *cint)
 Convert a string to an integer of specified size.
 
WS_DLL_PUBLIC bool ws_strtoi16 (const char *str, const char **endptr, int16_t *cint)
 Convert a string to an integer of specified size.
 
WS_DLL_PUBLIC bool ws_strtoi8 (const char *str, const char **endptr, int8_t *cint)
 
WS_DLL_PUBLIC bool ws_strtoi (const char *str, const char **endptr, int *cint)
 Convert a string to an integer.
 
WS_DLL_PUBLIC bool ws_strtou64 (const char *str, const char **endptr, uint64_t *cint)
 Convert a hexadecimal string to an unsigned int, with error checks.
 
WS_DLL_PUBLIC bool ws_strtou32 (const char *str, const char **endptr, uint32_t *cint)
 
WS_DLL_PUBLIC bool ws_strtou16 (const char *str, const char **endptr, uint16_t *cint)
 Convert a hexadecimal string to an unsigned int, with error checks.
 
WS_DLL_PUBLIC bool ws_strtou8 (const char *str, const char **endptr, uint8_t *cint)
 Convert a hexadecimal string to an unsigned int, with error checks.
 
WS_DLL_PUBLIC bool ws_strtou (const char *str, const char **endptr, unsigned *cint)
 Convert a hexadecimal string to an unsigned int, with error checks.
 
WS_DLL_PUBLIC bool ws_hexstrtou64 (const char *str, const char **endptr, uint64_t *cint)
 
WS_DLL_PUBLIC bool ws_hexstrtou32 (const char *str, const char **endptr, uint32_t *cint)
 Convert a string in the specified base to an unsigned int, with error checks.
 
WS_DLL_PUBLIC bool ws_hexstrtou16 (const char *str, const char **endptr, uint16_t *cint)
 Convert a string in the specified base to an unsigned int, with error checks.
 
WS_DLL_PUBLIC bool ws_hexstrtou8 (const char *str, const char **endptr, uint8_t *cint)
 
WS_DLL_PUBLIC bool ws_hexstrtou (const char *str, const char **endptr, unsigned *cint)
 Convert a string in the specified base to an unsigned int, with error checks.
 
WS_DLL_PUBLIC bool ws_basestrtou64 (const char *str, const char **endptr, uint64_t *cint, int base)
 
WS_DLL_PUBLIC bool ws_basestrtou32 (const char *str, const char **endptr, uint32_t *cint, int base)
 Converts a string to an unsigned integer with specified base.
 
WS_DLL_PUBLIC bool ws_basestrtou16 (const char *str, const char **endptr, uint16_t *cint, int base)
 Convert a string to an unsigned integer of specified bits.
 
WS_DLL_PUBLIC bool ws_basestrtou8 (const char *str, const char **endptr, uint8_t *cint, int base)
 Convert a string to an unsigned integer with specified base.
 
WS_DLL_PUBLIC bool ws_basestrtou (const char *str, const char **endptr, unsigned *cint, int base)
 Converts a string to an unsigned integer with error handling.
 
WS_DLL_PUBLIC bool ws_basebuftou64 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint64_t *cint, int base)
 
WS_DLL_PUBLIC bool ws_buftou64 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint64_t *cint)
 
WS_DLL_PUBLIC bool ws_hexbuftou64 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint64_t *cint)
 
WS_DLL_PUBLIC bool ws_basebuftou32 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint32_t *cint, int base)
 
WS_DLL_PUBLIC bool ws_buftou32 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint32_t *cint)
 
WS_DLL_PUBLIC bool ws_hexbuftou32 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint32_t *cint)
 
WS_DLL_PUBLIC bool ws_basebuftou16 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint16_t *cint, int base)
 
WS_DLL_PUBLIC bool ws_buftou16 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint16_t *cint)
 
WS_DLL_PUBLIC bool ws_hexbuftou16 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint16_t *cint)
 
WS_DLL_PUBLIC bool ws_basebuftou8 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint8_t *cint, int base)
 
WS_DLL_PUBLIC bool ws_buftou8 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint8_t *cint)
 
WS_DLL_PUBLIC bool ws_hexbuftou8 (const uint8_t *buf, size_t len, const uint8_t **endptr, uint8_t *cint)
 

Detailed Description

Utilities to convert strings to integers

Copyright 2016, Dario Lombardo

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

◆ ws_basestrtou()

WS_DLL_PUBLIC bool ws_basestrtou ( const char *  str,
const char **  endptr,
unsigned *  cint,
int  base 
)

Converts a string to an unsigned integer with error handling.

This function converts the initial part of the string pointed to by 'str' into an unsigned integer value according to the specified base and stores it in the location pointed to by 'cint'. If 'endptr' is not NULL, it points to the first character following the converted number.

Parameters
strThe string to be converted.
endptrA pointer to a char pointer that will receive the address of the first character after the converted number.
cintA pointer to an unsigned integer where the result will be stored.
baseThe numerical base used for conversion (e.g., 10, 16).
Returns
true if successful, false otherwise with errno set appropriately.

◆ ws_basestrtou16()

WS_DLL_PUBLIC bool ws_basestrtou16 ( const char *  str,
const char **  endptr,
uint16_t *  cint,
int  base 
)

Convert a string to an unsigned integer of specified bits.

Converts a string to an unsigned integer of 16, 8, or unspecified bits based on the function called.

Parameters
strThe input string to convert.
endptrA pointer to store the address of the first character that was not converted.
cintA pointer to store the resulting unsigned integer value.
baseThe numerical base for conversion (e.g., 10, 16).
Returns
true if successful, false otherwise.

◆ ws_basestrtou32()

WS_DLL_PUBLIC bool ws_basestrtou32 ( const char *  str,
const char **  endptr,
uint32_t *  cint,
int  base 
)

Converts a string to an unsigned integer with specified base.

This function converts a string to an unsigned integer using the specified base.

Parameters
strThe input string to convert.
endptrA pointer to store the address of the first character that was not converted.
cintA pointer to store the resulting unsigned integer value.
baseThe numerical base for conversion (e.g., 10, 16).
Returns
true if successful, false otherwise.

◆ ws_basestrtou8()

WS_DLL_PUBLIC bool ws_basestrtou8 ( const char *  str,
const char **  endptr,
uint8_t *  cint,
int  base 
)

Convert a string to an unsigned integer with specified base.

Converts the initial part of the string pointed to by 'str' to an unsigned integer value according to the given base.

Parameters
strThe string to be converted.
endptrA pointer to a character that will be set to point to the first character in the string after the conversion.
cintA pointer to store the resulting unsigned integer value.
baseThe numerical base of the number in the string (e.g., 10 for decimal, 16 for hexadecimal).
Returns
true if the conversion was successful, false otherwise.

◆ ws_hexstrtou()

WS_DLL_PUBLIC bool ws_hexstrtou ( const char *  str,
const char **  endptr,
unsigned *  cint 
)

Convert a string in the specified base to an unsigned int, with error checks.

Parameters
strThe string to convert.
endptrA pointer that will store a pointer to the first invalid character in str, allowing a number to be parsed even if there is trailing whitespace. If NULL, then the string is assumed to contain only valid characters.
Returns
true if the conversion was successful, false otherwise.

◆ ws_hexstrtou16()

WS_DLL_PUBLIC bool ws_hexstrtou16 ( const char *  str,
const char **  endptr,
uint16_t *  cint 
)

Convert a string in the specified base to an unsigned int, with error checks.

Parameters
strThe string to convert.
endptrA pointer that will store a pointer to the first invalid character encountered during conversion.
Returns
true If the conversion was successful.
false If the conversion failed.

◆ ws_hexstrtou32()

WS_DLL_PUBLIC bool ws_hexstrtou32 ( const char *  str,
const char **  endptr,
uint32_t *  cint 
)

Convert a string in the specified base to an unsigned int, with error checks.

Parameters
strThe string to convert
endptrPointer to store the position after conversion
cintPointer to store the converted value
Returns
true If successful
false If conversion fails or out of range

◆ ws_strtoi()

WS_DLL_PUBLIC bool ws_strtoi ( const char *  str,
const char **  endptr,
int *  cint 
)

Convert a string to an integer.

Converts the initial part of the string pointed to by 'str' to an int.

Parameters
strThe string to be converted.
endptrA pointer to a char pointer that will receive the address of the first character not converted.
cintA pointer to an int where the result will be stored.
Returns
true if successful, false otherwise.

◆ ws_strtoi16()

WS_DLL_PUBLIC bool ws_strtoi16 ( const char *  str,
const char **  endptr,
int16_t *  cint 
)

Convert a string to an integer of specified size.

Converts the initial portion of the string pointed to by str to an int value.

Parameters
strThe string to be converted.
endptrA pointer to a char pointer that will receive the address of the first character not part of the conversion.
cintPointer to the location where the result should be stored.
Returns
true if successful, false otherwise.

◆ ws_strtoi32()

WS_DLL_PUBLIC bool ws_strtoi32 ( const char *  str,
const char **  endptr,
int32_t *  cint 
)

Convert a string to an integer of specified size.

Converts a string to an integer of the specified size and stores the result in the provided variable.

Parameters
strThe input string to convert.
endptrA pointer to a character that will be set to point to the first character after the converted number.
cintA pointer to the variable where the converted integer will be stored.
Returns
true if the conversion was successful, false otherwise.

◆ ws_strtou()

WS_DLL_PUBLIC bool ws_strtou ( const char *  str,
const char **  endptr,
unsigned *  cint 
)

Convert a hexadecimal string to an unsigned int, with error checks.

Parameters
strThe string to convert
endptrA pointer that will store a pointer to the first invalid character in str, allowing a number to be parsed even if there is trailing whitespace. If NULL, then the string is assumed to contain only valid characters (or it will error out).
Returns
true on success, false on failure.

◆ ws_strtou16()

WS_DLL_PUBLIC bool ws_strtou16 ( const char *  str,
const char **  endptr,
uint16_t *  cint 
)

Convert a hexadecimal string to an unsigned int, with error checks.

Parameters
strThe string to convert
endptrA pointer that will store a pointer to the first invalid character in str, allowing a number to be parsed even if there is trailing whitespace or other characters after the number.
Returns
true if the conversion was successful, false otherwise.

◆ ws_strtou64()

WS_DLL_PUBLIC bool ws_strtou64 ( const char *  str,
const char **  endptr,
uint64_t *  cint 
)

Convert a hexadecimal string to an unsigned int, with error checks.

Parameters
strThe string to convert
Returns
true if conversion is successful, false otherwise

◆ ws_strtou8()

WS_DLL_PUBLIC bool ws_strtou8 ( const char *  str,
const char **  endptr,
uint8_t *  cint 
)

Convert a hexadecimal string to an unsigned int, with error checks.

Parameters
strThe string to convert
endptrA pointer that will store a pointer to the first invalid character in str, allowing a number to be parsed even if there is trailing whitespace. If NULL, then the string is assumed to contain only valid characters.
Returns
true on success, false otherwise