1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
.TH LIBSIMPLE_MEMSCAN 3 libsimple
.SH NAME
libsimple_memscan \- find byte in memory
.SH SYNOPSIS
.nf
#include <libsimple.h>
void *libsimple_memscan(const void *\fIs\fP, int \fIc\fP, size_t \fIn\fP);
#ifndef memscan
# define memscan libsimple_memscan
#endif
.fi
.PP
Link with
.IR \-lsimple .
.SH DESCRIPTION
The
.BR libsimple_memscan ()
function scans the memory segment
.IR s ,
with the size
.IR n ,
for the first occurence of the byte
.I c
(it is converted to a
.BR char ).
If no such character exist in the memory
segment, the memory segment's end is returned.
.PP
The comparison is case-sensitive.
.SH RETURN VALUE
The
.BR libsimple_memscan ()
function returns the pointer
.I s
with a minimal offset such that
.IR *r==c ,
where
.I r
is the returned pointer.
If no such offset exists,
.I &r[n]
is returned.
.SH ERRORS
The
.BR libsimple_memscan ()
function cannot fail.
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.TS
allbox;
lb lb lb
l l l.
Interface Attribute Value
T{
.BR libsimple_memscan ()
T} Thread safety MT-Safe
T{
.BR libsimple_memscan ()
T} Async-signal safety AS-Safe
T{
.BR libsimple_memscan ()
T} Async-cancel safety AC-Safe
.TE
.SH EXAMPLES
None.
.SH APPLICATION USAGE
None.
.SH RATIONALE
None.
.SH FUTURE DIRECTIONS
None.
.SH NOTES
None.
.SH HISTORY
libsimple 1.1
.SH BUGS
None.
.SH SEE ALSO
.BR libsimple_memscan_inv (3),
.BR libsimple_memcasescan (3),
.BR libsimple_memrchr (3),
.BR libsimple_rawmemchr (3),
.BR libsimple_memmem (3),
.BR libsimple_strnchrnul (3),
.BR libsimple_strchrnul (3),
.BR memchr (3)
|