From d68eb8fee6d53373bd6305628015b381d50e5a81 Mon Sep 17 00:00:00 2001 From: Anil Madhavapeddy Date: Fri, 1 Aug 2003 17:38:34 +0000 Subject: add __bounded__ attributes for userland headers; enabled with -Wbounded ok deraadt@ --- include/stdio.h | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'include/stdio.h') diff --git a/include/stdio.h b/include/stdio.h index d94308a6498..92d842b433c 100644 --- a/include/stdio.h +++ b/include/stdio.h @@ -1,4 +1,4 @@ -/* $OpenBSD: stdio.h,v 1.28 2003/06/26 19:34:17 avsm Exp $ */ +/* $OpenBSD: stdio.h,v 1.29 2003/08/01 17:38:33 avsm Exp $ */ /* $NetBSD: stdio.h,v 1.18 1996/04/25 18:29:21 jtc Exp $ */ /*- @@ -214,12 +214,14 @@ int ferror(FILE *); int fflush(FILE *); int fgetc(FILE *); int fgetpos(FILE *, fpos_t *); -char *fgets(char *, int, FILE *); +char *fgets(char *, int, FILE *) + __attribute__((__bounded__ (__string__,1,2))); FILE *fopen(const char *, const char *); int fprintf(FILE *, const char *, ...); int fputc(int, FILE *); int fputs(const char *, FILE *); -size_t fread(void *, size_t, size_t, FILE *); +size_t fread(void *, size_t, size_t, FILE *) + __attribute__((__bounded__ (__size__,1,3,2))); FILE *freopen(const char *, const char *, FILE *); int fscanf(FILE *, const char *, ...); int fseek(FILE *, long, int); @@ -227,7 +229,8 @@ int fseeko(FILE *, off_t, int); int fsetpos(FILE *, const fpos_t *); long ftell(FILE *); off_t ftello(FILE *); -size_t fwrite(const void *, size_t, size_t, FILE *); +size_t fwrite(const void *, size_t, size_t, FILE *) + __attribute__((__bounded__ (__size__,1,3,2))); int getc(FILE *); int getchar(void); char *gets(char *); @@ -313,13 +316,15 @@ int setlinebuf(FILE *); char *tempnam(const char *, const char *); int snprintf(char *, size_t, const char *, ...) __attribute__((__format__ (printf, 3, 4))) - __attribute__((__nonnull__ (3))); + __attribute__((__nonnull__ (3))) + __attribute__((__bounded__ (__string__,1,2))); int vasprintf(char **, const char *, _BSD_VA_LIST_) __attribute__((__format__ (printf, 2, 0))) __attribute__((__nonnull__ (2))); int vsnprintf(char *, size_t, const char *, _BSD_VA_LIST_) __attribute__((__format__ (printf, 3, 0))) - __attribute__((__nonnull__ (3))); + __attribute__((__nonnull__ (3))) + __attribute__((__bounded__(__string__,1,2))); int vscanf(const char *, _BSD_VA_LIST_) __attribute__((__format__ (scanf, 1, 0))) __attribute__((__nonnull__ (1))); -- cgit v1.2.3