SSP(3)                  NetBSD Library Functions Manual                 SSP(3)

NAME
     ssp -- bounds checked libc functions

LIBRARY
     Buffer Overflow Protection Library (libssp, -lssp)

SYNOPSIS
     #include <ssp/stdio.h>

     int
     sprintf(char *str, const char *fmt, ...);

     int
     vsprintf(char *str, const char *fmt, va_list ap);

     int
     snprintf(char *str, size_t len, const char *fmt, ...);

     int
     vsnprintf(char *str, size_t len, const char *fmt, va_list ap);

     char *
     gets(char *str);

     char *
     fgets(char *str, int len, FILE *fp);

     #include <ssp/string.h>

     void *
     memcpy(void *str, const void *ptr, size_t len);

     void *
     memmove(void *str, const void *ptr, size_t len);

     void *
     memset(void *str, int val, size_t len);

     char *
     stpcpy(char *str, const char *ptr);

     char *
     strcpy(char *str, const char *ptr);

     char *
     strcat(char *str, const char *ptr);

     char *
     strncpy(char *str, const char *ptr, size_t len);

     char *
     strncat(char *str, const char *ptr, size_t len);

     #include <ssp/strings.h>

     void *
     bcopy(const void *ptr, void *str, size_t len);

     void *
     bzero(void *str, size_t len);

     #include <ssp/unistd.h>

     ssize_t
     read(int fd, void *str, size_t len);

     int
     readlink(const char * restrict path, char * restrict str, size_t len);

     int
     getcwd(char *str, size_t len);

DESCRIPTION
     When _FORTIFY_SOURCE bounds checking is enabled as described below, the
     above functions get overwritten to use the __builtin_object_size(3) func-
     tion to compute the size of str, if known at compile time, and perform
     bounds check on it in order to avoid data buffer or stack buffer over-
     flows.  If an overflow is detected, the routines will call abort(3).

     To enable these function overrides the following should be added to the
     gcc(1) command line: ``-I/usr/include/ssp'' to override the standard
     include files and ``-D_FORTIFY_SOURCE=1'' or ``-D_FORTIFY_SOURCE=2''.

     If _FORTIFY_SOURCE is set to 1 the code will compute the maximum possible
     buffer size for str, and if set to 2 it will compute the minimum buffer
     size.

SEE ALSO
     gcc(1), __builtin_object_size(3), stdio(3), string(3), security(7)

HISTORY
     The ssp library appeared NetBSD 4.0.

NetBSD 6.0                     November 6, 2013                     NetBSD 6.0

You can also request any man page by name and (optionally) by section:

Command: 
Section: 
Architecture: 
Collection: 
 

Use the DEFAULT collection to view manual pages for third-party software.


©1994 Man-cgi 1.15, Panagiotis Christias <christia@softlab.ntua.gr>
©1996-2014 Modified for NetBSD by Kimmo Suominen