| SSP(3) | Library Functions Manual | SSP(3) | 
ssp —
#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);
_FORTIFY_SOURCE bounds checking is enabled as
  described below, the above functions get overwritten to use the
  __builtin_object_size(3)
  function 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 overflows. 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: “-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.
ssp library appeared NetBSD
  4.0.
| December 3, 2015 | NetBSD 10.0 |