seq.h¶
Serial Number Arithmetic (RFC 1982)
See also
-
SEQ_LIMIT
( X)¶ Maximum for the addition of a positive integer.
1
(X >> 1)
X denotes the size of the space
-
uint8_t
seq8_t
¶ A 8 bit sequence number.
-
uint16_t
seq16_t
¶ A 16 bit sequence number.
-
uint32_t
seq32_t
¶ A 32 bit sequence number.
-
uint64_t
seq64_t
¶ A 64 bit sequence number.
-
seq.h::seq8_t
seq8_adds
(seq.h::seq8_t
s, uint8_t n, uint8_t space)¶ Addition of a 8 bit sequence number
s
and a positive integern
in the serial numberspace
.See also
Parameters
s: sequence number n: positive integer in the range of [0 .. (( space
/ 2) - 1)]space: serial number space must be a power of 2 minus 1 Return values
- s + n, if valid
- s, if n is out of range
-
seq.h::seq8_t
seq8_add
(seq.h::seq8_t
s, uint8_t n)¶ Addition of a 8 bit sequence number
s
and a positive integern
in the serial number space UINT8_MAX.See also
Parameters
s: sequence number n: positive integer in the range of [0 .. 127] Return values
- s + n, if valid
- s, if n is out of range
-
seq.h::seq8_t
seq8_incs
(seq.h::seq8_t
s, uint8_t space)¶ Increment a sequence number
s
by 1 in the serial numberspace
.Parameters
s: sequence number space: serial number space must be a power of 2 minus 1 Return values
- s + 1
-
seq.h::seq8_t
seq8_inc
(seq.h::seq8_t
s)¶ Increment a sequence number
s
by 1 in the serial number space UINT8_MAX.Parameters
s: sequence number Return values
- s + 1
-
int
seq8_compares
(seq.h::seq8_t
s1,seq.h::seq8_t
s2, uint8_t space)¶ Compare sequence numbers
s1
,s2
in the serial numberspace
.See also
Parameters
s1: first sequence number s2: second sequence number space: serial number space must be a power of 2 minus 1 Return values
- -1, if s1 < s2
- 0, if s1 == s2
- 1, if s1 > s2
- -EINVAL, if comparison of the pair (s1,s2) is undefined
-
int
seq8_compare
(seq.h::seq8_t
s1,seq.h::seq8_t
s2)¶ Compare sequence numbers
s1
,s2
in the serial number space UINT8_MAX.See also
Parameters
s1: first sequence number s2: second sequence number Return values
- -1, if s1 < s2
- 0, if s1 == s2
- 1, if s1 > s2
- -EINVAL, if comparison of the pair (s1,s2) is undefined
-
seq.h::seq16_t
seq16_adds
(seq.h::seq16_t
s, uint16_t n, uint16_t space)¶ Addition of a 16 bit sequence number
s
and a positive integern
in the serial numberspace
.See also
Parameters
s: sequence number n: positive integer in the range of [0 .. (( space
/ 2) - 1)]space: serial number space must be a power of 2 minus 1 Return values
- s + n, if valid
- s, if n is out of range
-
seq.h::seq16_t
seq16_add
(seq.h::seq16_t
s, uint16_t n)¶ Addition of a 16 bit sequence number
s
and a positive integern
in the serial number space UINT16_MAX.See also
Parameters
s: sequence number n: positive integer in the range of [0 .. 127] Return values
- s + n, if valid
- s, if n is out of range
-
seq.h::seq16_t
seq16_incs
(seq.h::seq16_t
s, uint16_t space)¶ Increment a sequence number
s
by 1 in the serial numberspace
.Parameters
s: sequence number space: serial number space must be a power of 2 minus 1 Return values
- s + 1
-
seq.h::seq16_t
seq16_inc
(seq.h::seq16_t
s)¶ Increment a sequence number
s
by 1 in the serial number space UINT16_MAX.Parameters
s: sequence number Return values
- s + 1
-
int
seq16_compares
(seq.h::seq16_t
s1,seq.h::seq16_t
s2, uint16_t space)¶ Compare sequence numbers
s1
,s2
in the serial numberspace
.See also
Parameters
s1: first sequence number s2: second sequence number space: serial number space must be a power of 2 minus 1 Return values
- -1, if s1 < s2
- 0, if s1 == s2
- 1, if s1 > s2
- -EINVAL, if comparison of the pair (s1,s2) is undefined
-
int
seq16_compare
(seq.h::seq16_t
s1,seq.h::seq16_t
s2)¶ Compare sequence numbers
s1
,s2
in the serial number space UINT16_MAX.See also
Parameters
s1: first sequence number s2: second sequence number Return values
- -1, if s1 < s2
- 0, if s1 == s2
- 1, if s1 > s2
- -EINVAL, if comparison of the pair (s1,s2) is undefined
-
seq.h::seq32_t
seq32_adds
(seq.h::seq32_t
s, uint32_t n, uint32_t space)¶ Addition of a 32 bit sequence number
s
and a positive integern
in the serial numberspace
.See also
Parameters
s: sequence number n: positive integer in the range of [0 .. (( space
/ 2) - 1)]space: serial number space must be a power of 2 minus 1 Return values
- s + n, if valid
- s, if n is out of range
-
seq.h::seq32_t
seq32_add
(seq.h::seq32_t
s, uint32_t n)¶ Addition of a 32 bit sequence number
s
and a positive integern
in the serial number space UINT32_MAX.See also
Parameters
s: sequence number n: positive integer in the range of [0 .. 127] Return values
- s + n, if valid
- s, if n is out of range
-
seq.h::seq32_t
seq32_incs
(seq.h::seq32_t
s, uint32_t space)¶ Increment a sequence number
s
by 1 in the serial numberspace
.Parameters
s: sequence number space: serial number space must be a power of 2 minus 1 Return values
- s + 1
-
seq.h::seq32_t
seq32_inc
(seq.h::seq32_t
s)¶ Increment a sequence number
s
by 1 in the serial number space UINT32_MAX.Parameters
s: sequence number Return values
- s + 1
-
int
seq32_compares
(seq.h::seq32_t
s1,seq.h::seq32_t
s2, uint32_t space)¶ Compare sequence numbers
s1
,s2
in the serial numberspace
.See also
Parameters
s1: first sequence number s2: second sequence number space: serial number space must be a power of 2 minus 1 Return values
- -1, if s1 < s2
- 0, if s1 == s2
- 1, if s1 > s2
- -EINVAL, if comparison of the pair (s1,s2) is undefined
-
int
seq32_compare
(seq.h::seq32_t
s1,seq.h::seq32_t
s2)¶ Compare sequence numbers
s1
,s2
in the serial number space UINT32_MAX.See also
Parameters
s1: first sequence number s2: second sequence number Return values
- -1, if s1 < s2
- 0, if s1 == s2
- 1, if s1 > s2
- -EINVAL, if comparison of the pair (s1,s2) is undefined
-
seq.h::seq64_t
seq64_adds
(seq.h::seq64_t
s, uint64_t n, uint64_t space)¶ Addition of a 64 bit sequence number
s
and a positive integern
in the serial numberspace
.See also
Parameters
s: sequence number n: positive integer in the range of [0 .. (( space
/ 2) - 1)]space: serial number space must be a power of 2 minus 1 Return values
- s + n, if valid
- s, if n is out of range
-
seq.h::seq64_t
seq64_add
(seq.h::seq64_t
s, uint64_t n)¶ Addition of a 64 bit sequence number
s
and a positive integern
in the serial number space UINT64_MAX.See also
Parameters
s: sequence number n: positive integer in the range of [0 .. 127] Return values
- s + n, if valid
- s, if n is out of range
-
seq.h::seq64_t
seq64_incs
(seq.h::seq64_t
s, uint64_t space)¶ Increment a sequence number
s
by 1 in the serial numberspace
.Parameters
s: sequence number space: serial number space must be a power of 2 minus 1 Return values
- s + 1
-
seq.h::seq64_t
seq64_inc
(seq.h::seq64_t
s)¶ Increment a sequence number
s
by 1 in the serial number space UINT64_MAX.Parameters
s: sequence number Return values
- s + 1
-
int
seq64_compares
(seq.h::seq64_t
s1,seq.h::seq64_t
s2, uint64_t space)¶ Compare sequence numbers
s1
,s2
in the serial numberspace
.See also
Parameters
s1: first sequence number s2: second sequence number space: serial number space must be a power of 2 minus 1 Return values
- -1, if s1 < s2
- 0, if s1 == s2
- 1, if s1 > s2
- -EINVAL, if comparison of the pair (s1,s2) is undefined
-
int
seq64_compare
(seq.h::seq64_t
s1,seq.h::seq64_t
s2)¶ Compare sequence numbers
s1
,s2
in the serial number space UINT64_MAX.See also
Parameters
s1: first sequence number s2: second sequence number Return values
- -1, if s1 < s2
- 0, if s1 == s2
- 1, if s1 > s2
- -EINVAL, if comparison of the pair (s1,s2) is undefined