__sprintf_chk -- convert formatted output, with stack checking


#include <stdio.h>

int __sprintf_chk(char * str, int flag, size_t strlen, const char * format);


The interface __sprintf_chk() shall function in the same way as the interface sprintf(), except that __sprintf_chk() shall check for stack overflow before computing a result, depending on the value of the flag parameter. If an overflow is anticipated, the function shall abort and the program calling it shall exit.

In general, the higher the value of flag, the more security measures this interface shall take in the form of checking the stack, parameter values, and so on.

The parameter strlen specifies the size of the string str. If strlen is zero, the function shall abort, and the program calling it shall exit.

The __sprintf_chk() function is not in the source standard; it is only in the binary standard.