Blame src/compat/strnlen.c
|
Packit |
e9ba0d |
/* -*- mode: c; c-file-style: "openbsd" -*- */
|
|
Packit |
e9ba0d |
|
|
Packit |
e9ba0d |
#include <string.h>
|
|
Packit |
e9ba0d |
|
|
Packit |
e9ba0d |
/*
|
|
Packit |
e9ba0d |
* Determine the length of a fixed-size string. This is really a
|
|
Packit |
e9ba0d |
* wrapper around `memchr()`.
|
|
Packit |
e9ba0d |
*/
|
|
Packit |
e9ba0d |
size_t
|
|
Packit |
e9ba0d |
strnlen(const char *string, size_t maxlen)
|
|
Packit |
e9ba0d |
{
|
|
Packit |
e9ba0d |
const char *end = memchr(string, '\0', maxlen);
|
|
Packit |
e9ba0d |
return end?(size_t)(end - string):maxlen;
|
|
Packit |
e9ba0d |
}
|