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_tseq8_adds(seq.h::seq8_ts, uint8_t n, uint8_t space)¶ Addition of a 8 bit sequence number
sand a positive integernin 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_tseq8_add(seq.h::seq8_ts, uint8_t n)¶ Addition of a 8 bit sequence number
sand a positive integernin 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_tseq8_incs(seq.h::seq8_ts, uint8_t space)¶ Increment a sequence number
sby 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_tseq8_inc(seq.h::seq8_ts)¶ Increment a sequence number
sby 1 in the serial number space UINT8_MAX.Parameters
s: sequence number Return values
- s + 1
-
int
seq8_compares(seq.h::seq8_ts1,seq.h::seq8_ts2, uint8_t space)¶ Compare sequence numbers
s1,s2in 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_ts1,seq.h::seq8_ts2)¶ Compare sequence numbers
s1,s2in 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_tseq16_adds(seq.h::seq16_ts, uint16_t n, uint16_t space)¶ Addition of a 16 bit sequence number
sand a positive integernin 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_tseq16_add(seq.h::seq16_ts, uint16_t n)¶ Addition of a 16 bit sequence number
sand a positive integernin 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_tseq16_incs(seq.h::seq16_ts, uint16_t space)¶ Increment a sequence number
sby 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_tseq16_inc(seq.h::seq16_ts)¶ Increment a sequence number
sby 1 in the serial number space UINT16_MAX.Parameters
s: sequence number Return values
- s + 1
-
int
seq16_compares(seq.h::seq16_ts1,seq.h::seq16_ts2, uint16_t space)¶ Compare sequence numbers
s1,s2in 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_ts1,seq.h::seq16_ts2)¶ Compare sequence numbers
s1,s2in 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_tseq32_adds(seq.h::seq32_ts, uint32_t n, uint32_t space)¶ Addition of a 32 bit sequence number
sand a positive integernin 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_tseq32_add(seq.h::seq32_ts, uint32_t n)¶ Addition of a 32 bit sequence number
sand a positive integernin 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_tseq32_incs(seq.h::seq32_ts, uint32_t space)¶ Increment a sequence number
sby 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_tseq32_inc(seq.h::seq32_ts)¶ Increment a sequence number
sby 1 in the serial number space UINT32_MAX.Parameters
s: sequence number Return values
- s + 1
-
int
seq32_compares(seq.h::seq32_ts1,seq.h::seq32_ts2, uint32_t space)¶ Compare sequence numbers
s1,s2in 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_ts1,seq.h::seq32_ts2)¶ Compare sequence numbers
s1,s2in 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_tseq64_adds(seq.h::seq64_ts, uint64_t n, uint64_t space)¶ Addition of a 64 bit sequence number
sand a positive integernin 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_tseq64_add(seq.h::seq64_ts, uint64_t n)¶ Addition of a 64 bit sequence number
sand a positive integernin 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_tseq64_incs(seq.h::seq64_ts, uint64_t space)¶ Increment a sequence number
sby 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_tseq64_inc(seq.h::seq64_ts)¶ Increment a sequence number
sby 1 in the serial number space UINT64_MAX.Parameters
s: sequence number Return values
- s + 1
-
int
seq64_compares(seq.h::seq64_ts1,seq.h::seq64_ts2, uint64_t space)¶ Compare sequence numbers
s1,s2in 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_ts1,seq.h::seq64_ts2)¶ Compare sequence numbers
s1,s2in 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