safec  3.6.0
Safe C Library - ISO TR24731 Bounds Checking Interface
vfscanf_s.c File Reference
#include "safe_lib.h"
+ Include dependency graph for vfscanf_s.c:

Functions

EXPORT int vfscanf_s (FILE *restrict stream, const char *restrict fmt, va_list ap)
 The vfscanf_s function reads a formatted string from a buffered FILE stream, and writes to a list of arguments. More...
 

Function Documentation

◆ vfscanf_s()

EXPORT int vfscanf_s ( FILE *restrict  stream,
const char *restrict  fmt,
va_list  ap 
)

The vfscanf_s function reads a formatted string from a buffered FILE stream, and writes to a list of arguments.

Remarks
SPECIFIED IN
Parameters
[in]streampointer to a FILE stream to read from
[in]fmtformat-control string.
[out]aparguments to write to
Precondition
Neither stream nor fmt shall be a null pointer.
fmt shall not contain the conversion specifier n
None of the arguments corresponding to s is a null pointer. (not yet)
No encoding error shall occur.
c, s, and %[ conversion specifiers each expect two arguments (the usual pointer and a value of type rsize_t indicating the size of the receiving array, which may be 1 when reading with a c into a single character) and except that the following errors are detected at runtime and call the currently installed constraint handler function. (not yet)
Warning
The current implementation just does some basic argument checks and then calls the native vsscanf() libc function. Thus the s null pointer check and the two-arg versions of c, s, and %[ are not yet implemented.
Returns
Number of receiving arguments successfully assigned, or EOF if read failure occurs before the first receiving argument was assigned or if there is a runtime constraint violation.
Return values
>0 on success, the number of arguments assigned
EOFon error
See also
vvfscanf_s(), fwscanf_s(), scanf_s()