lib/: Use ATTR_STRING() on stpecpy() and strtcpy()
These functions consume a source string. Document that. There's no way to mark that they also produce a string in dst, though. That will be up to the static analyzer to guess. Signed-off-by: Alejandro Colomar <alx@kernel.org>
This commit is contained in:
committed by
Iker Pedrosa
parent
a61cf0068b
commit
93a5c47c2c
@@ -17,12 +17,16 @@
|
||||
#include <stddef.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "attr.h"
|
||||
|
||||
|
||||
ATTR_STRING(3)
|
||||
inline char *stpecpy(char *dst, char *end, const char *restrict src);
|
||||
|
||||
|
||||
/*
|
||||
* SYNOPSIS
|
||||
* [[gnu::null_terminated_string_arg(3)]]
|
||||
* char *_Nullable stpecpy(char *_Nullable dst, char end[0],
|
||||
* const char *restrict src);
|
||||
*
|
||||
|
||||
@@ -15,11 +15,14 @@
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include "attr.h"
|
||||
#include "defines.h"
|
||||
#include "sizeof.h"
|
||||
|
||||
|
||||
/*
|
||||
* SYNOPSIS
|
||||
* [[gnu::null_terminated_string_arg(2)]]
|
||||
* int STRTCPY(char dst[restrict], const char *restrict src);
|
||||
*
|
||||
* ARGUMENTS
|
||||
@@ -47,6 +50,7 @@
|
||||
#define STRTCPY(dst, src) strtcpy(dst, src, NITEMS(dst))
|
||||
|
||||
|
||||
ATTR_STRING(2)
|
||||
inline ssize_t strtcpy(char *restrict dst, const char *restrict src,
|
||||
size_t dsize);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user