diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-01-09 14:47:04 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-01-10 11:03:27 +0100 |
commit | 0577772720a4ecb050a230f75346f90b246e93c8 (patch) | |
tree | a3fba8bb57e77c932e08dd0d4bbe49adb6312e5e /freebsd/lib | |
parent | Update to FreeBSD head 2016-12-10 (diff) | |
download | rtems-libbsd-0577772720a4ecb050a230f75346f90b246e93c8.tar.bz2 |
Update to FreeBSD head 2017-01-09
Git mirror commit 1f8e4a995a6ede4bdb24e6d335ccda2bdb0175ab.
Diffstat (limited to 'freebsd/lib')
-rw-r--r-- | freebsd/lib/libc/include/libc_private.h | 2 | ||||
-rw-r--r-- | freebsd/lib/libc/net/getaddrinfo.c | 12 | ||||
-rw-r--r-- | freebsd/lib/libc/net/nslexer.c | 48 | ||||
-rw-r--r-- | freebsd/lib/libc/net/nsparser.c | 51 | ||||
-rw-r--r-- | freebsd/lib/libipsec/policy_parse.c | 34 | ||||
-rw-r--r-- | freebsd/lib/libkvm/kvm.h | 8 |
6 files changed, 69 insertions, 86 deletions
diff --git a/freebsd/lib/libc/include/libc_private.h b/freebsd/lib/libc/include/libc_private.h index 053b221a..5622e42d 100644 --- a/freebsd/lib/libc/include/libc_private.h +++ b/freebsd/lib/libc/include/libc_private.h @@ -276,6 +276,8 @@ void _malloc_thread_cleanup(void); * thread is exiting, so its thread-local dtors should be called. */ void __cxa_thread_call_dtors(void); +int __cxa_thread_atexit_hidden(void (*dtor_func)(void *), void *obj, + void *dso_symbol) __hidden; /* * These functions are used by the threading libraries in order to protect diff --git a/freebsd/lib/libc/net/getaddrinfo.c b/freebsd/lib/libc/net/getaddrinfo.c index 18aed435..0c87988a 100644 --- a/freebsd/lib/libc/net/getaddrinfo.c +++ b/freebsd/lib/libc/net/getaddrinfo.c @@ -693,9 +693,8 @@ reorder(struct addrinfo *sentinel) return(n); /* allocate a temporary array for sort and initialization of it. */ - if ((aio = malloc(sizeof(*aio) * n)) == NULL) + if ((aio = calloc(n, sizeof(*aio))) == NULL) return(n); /* give up reordering */ - memset(aio, 0, sizeof(*aio) * n); /* retrieve address selection policy from the kernel */ TAILQ_INIT(&policyhead); @@ -1451,9 +1450,8 @@ copy_ai(const struct addrinfo *pai) size_t l; l = sizeof(*ai) + pai->ai_addrlen; - if ((ai = (struct addrinfo *)malloc(l)) == NULL) + if ((ai = calloc(1, l)) == NULL) return NULL; - memset(ai, 0, l); memcpy(ai, pai, sizeof(*ai)); ai->ai_addr = (struct sockaddr *)(void *)(ai + 1); memcpy(ai->ai_addr, pai->ai_addr, pai->ai_addrlen); @@ -1876,8 +1874,7 @@ addrinfo_unmarshal_func(char *buffer, size_t buffer_size, void *retval, size = new_ai.ai_addrlen + sizeof(struct addrinfo) + _ALIGNBYTES; - sentinel = (struct addrinfo *)malloc(size); - memset(sentinel, 0, size); + sentinel = calloc(1, size); memcpy(sentinel, &new_ai, sizeof(struct addrinfo)); sentinel->ai_addr = (struct sockaddr *)_ALIGN((char *)sentinel + @@ -1890,8 +1887,7 @@ addrinfo_unmarshal_func(char *buffer, size_t buffer_size, void *retval, memcpy(&size, p, sizeof(size_t)); p += sizeof(size_t); - sentinel->ai_canonname = (char *)malloc(size + 1); - memset(sentinel->ai_canonname, 0, size + 1); + sentinel->ai_canonname = calloc(1, size + 1); memcpy(sentinel->ai_canonname, p, size); p += size; diff --git a/freebsd/lib/libc/net/nslexer.c b/freebsd/lib/libc/net/nslexer.c index 3c8c1c15..58089772 100644 --- a/freebsd/lib/libc/net/nslexer.c +++ b/freebsd/lib/libc/net/nslexer.c @@ -550,13 +550,6 @@ char *_nsyytext; * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the NetBSD - * Foundation, Inc. and its contributors. - * 4. Neither the name of The NetBSD Foundation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED @@ -588,7 +581,7 @@ static char *rcsid = #include "nsparser.h" #define YY_NO_INPUT 1 -#line 592 "<stdout>" +#line 585 "<stdout>" #define INITIAL 0 @@ -768,10 +761,10 @@ YY_DECL char *yy_cp, *yy_bp; int yy_act; -#line 66 "../../freebsd/lib/libc/net/nslexer.l" +#line 59 "../../freebsd/lib/libc/net/nslexer.l" -#line 775 "<stdout>" +#line 768 "<stdout>" if ( !(yy_init) ) { @@ -866,59 +859,59 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 68 "../../freebsd/lib/libc/net/nslexer.l" +#line 61 "../../freebsd/lib/libc/net/nslexer.l" ; /* skip whitespace */ YY_BREAK case 2: YY_RULE_SETUP -#line 70 "../../freebsd/lib/libc/net/nslexer.l" +#line 63 "../../freebsd/lib/libc/net/nslexer.l" ; /* skip comments */ YY_BREAK case 3: /* rule 3 can match eol */ YY_RULE_SETUP -#line 72 "../../freebsd/lib/libc/net/nslexer.l" +#line 65 "../../freebsd/lib/libc/net/nslexer.l" ; /* allow continuation */ YY_BREAK case 4: /* rule 4 can match eol */ YY_RULE_SETUP -#line 74 "../../freebsd/lib/libc/net/nslexer.l" +#line 67 "../../freebsd/lib/libc/net/nslexer.l" return NL; YY_BREAK case 5: YY_RULE_SETUP -#line 76 "../../freebsd/lib/libc/net/nslexer.l" +#line 69 "../../freebsd/lib/libc/net/nslexer.l" return SUCCESS; YY_BREAK case 6: YY_RULE_SETUP -#line 77 "../../freebsd/lib/libc/net/nslexer.l" +#line 70 "../../freebsd/lib/libc/net/nslexer.l" return UNAVAIL; YY_BREAK case 7: YY_RULE_SETUP -#line 78 "../../freebsd/lib/libc/net/nslexer.l" +#line 71 "../../freebsd/lib/libc/net/nslexer.l" return NOTFOUND; YY_BREAK case 8: YY_RULE_SETUP -#line 79 "../../freebsd/lib/libc/net/nslexer.l" +#line 72 "../../freebsd/lib/libc/net/nslexer.l" return TRYAGAIN; YY_BREAK case 9: YY_RULE_SETUP -#line 81 "../../freebsd/lib/libc/net/nslexer.l" +#line 74 "../../freebsd/lib/libc/net/nslexer.l" return RETURN; YY_BREAK case 10: YY_RULE_SETUP -#line 82 "../../freebsd/lib/libc/net/nslexer.l" +#line 75 "../../freebsd/lib/libc/net/nslexer.l" return CONTINUE; YY_BREAK case 11: YY_RULE_SETUP -#line 84 "../../freebsd/lib/libc/net/nslexer.l" +#line 77 "../../freebsd/lib/libc/net/nslexer.l" { char *p; int i; @@ -938,15 +931,15 @@ YY_RULE_SETUP YY_BREAK case 12: YY_RULE_SETUP -#line 101 "../../freebsd/lib/libc/net/nslexer.l" +#line 94 "../../freebsd/lib/libc/net/nslexer.l" return _nsyytext[0]; YY_BREAK case 13: YY_RULE_SETUP -#line 103 "../../freebsd/lib/libc/net/nslexer.l" +#line 96 "../../freebsd/lib/libc/net/nslexer.l" ECHO; YY_BREAK -#line 950 "<stdout>" +#line 943 "<stdout>" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -1911,20 +1904,19 @@ void _nsyyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 103 "../../freebsd/lib/libc/net/nslexer.l" +#line 96 "../../freebsd/lib/libc/net/nslexer.l" #undef _nsyywrap int -_nsyywrap() +_nsyywrap(void) { return 1; } /* _nsyywrap */ void -_nsyyerror(msg) - const char *msg; +_nsyyerror(const char *msg) { syslog(LOG_ERR, "NSSWITCH(nslexer): %s line %d: %s at '%s'", diff --git a/freebsd/lib/libc/net/nsparser.c b/freebsd/lib/libc/net/nsparser.c index f2fca015..74ed8f00 100644 --- a/freebsd/lib/libc/net/nsparser.c +++ b/freebsd/lib/libc/net/nsparser.c @@ -5,6 +5,7 @@ #define YYBYACC 1 #define YYMAJOR 1 #define YYMINOR 9 +#define YYPATCH 20160324 #define YYEMPTY (-1) #define yyclearin (yychar = YYEMPTY) @@ -114,13 +115,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the NetBSD - * Foundation, Inc. and its contributors. - * 4. Neither the name of The NetBSD Foundation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED @@ -151,7 +145,7 @@ static void _nsaddsrctomap(const char *); static ns_dbt curdbt; static ns_src cursrc; -#line 58 "../../freebsd/lib/libc/net/nsparser.y" +#line 51 "../../freebsd/lib/libc/net/nsparser.y" #ifdef YYSTYPE #undef YYSTYPE_IS_DECLARED #define YYSTYPE_IS_DECLARED 1 @@ -163,7 +157,7 @@ typedef union { int mapval; } YYSTYPE; #endif /* !YYSTYPE_IS_DECLARED */ -#line 167 "_nsyy.tab.c" +#line 161 "_nsyy.tab.c" /* compatibility with bison */ #ifdef YYPARSE_PARAM @@ -206,7 +200,7 @@ extern int YYPARSE_DECL(); #define ERRORTOKEN 264 #define STRING 265 #define YYERRCODE 256 -typedef short YYINT; +typedef int YYINT; static const YYINT _nsyylhs[] = { -1, 0, 0, 3, 3, 4, 4, 4, 4, 5, 6, 6, 7, 9, 7, 8, 8, 10, 1, 1, 1, @@ -362,11 +356,10 @@ typedef struct { } YYSTACKDATA; /* variables for the parser stack */ static YYSTACKDATA yystack; -#line 153 "../../freebsd/lib/libc/net/nsparser.y" +#line 146 "../../freebsd/lib/libc/net/nsparser.y" static void -_nsaddsrctomap(elem) - const char *elem; +_nsaddsrctomap(const char *elem) { int i, lineno; extern int _nsyylineno; @@ -396,7 +389,7 @@ _nsaddsrctomap(elem) cursrc.name = elem; _nsdbtaddsrc(&curdbt, &cursrc); } -#line 400 "_nsyy.tab.c" +#line 393 "_nsyy.tab.c" #if YYDEBUG #include <stdio.h> /* needed for printf */ @@ -599,25 +592,25 @@ yyreduce: switch (yyn) { case 6: -#line 86 "../../freebsd/lib/libc/net/nsparser.y" +#line 79 "../../freebsd/lib/libc/net/nsparser.y" { free((char*)curdbt.name); } break; case 7: -#line 90 "../../freebsd/lib/libc/net/nsparser.y" +#line 83 "../../freebsd/lib/libc/net/nsparser.y" { _nsdbtput(&curdbt); } break; case 8: -#line 94 "../../freebsd/lib/libc/net/nsparser.y" +#line 87 "../../freebsd/lib/libc/net/nsparser.y" { yyerrok; } break; case 9: -#line 101 "../../freebsd/lib/libc/net/nsparser.y" +#line 94 "../../freebsd/lib/libc/net/nsparser.y" { curdbt.name = yylval.str; curdbt.srclist = NULL; @@ -625,24 +618,24 @@ case 9: } break; case 12: -#line 115 "../../freebsd/lib/libc/net/nsparser.y" +#line 108 "../../freebsd/lib/libc/net/nsparser.y" { cursrc.flags = NS_TERMINATE; _nsaddsrctomap(yystack.l_mark[0].str); } break; case 13: -#line 119 "../../freebsd/lib/libc/net/nsparser.y" +#line 112 "../../freebsd/lib/libc/net/nsparser.y" { cursrc.flags = NS_SUCCESS; } break; case 14: -#line 120 "../../freebsd/lib/libc/net/nsparser.y" +#line 113 "../../freebsd/lib/libc/net/nsparser.y" { _nsaddsrctomap(yystack.l_mark[-4].str); } break; case 17: -#line 132 "../../freebsd/lib/libc/net/nsparser.y" +#line 125 "../../freebsd/lib/libc/net/nsparser.y" { if (yystack.l_mark[0].mapval) /* if action == RETURN set RETURN bit */ cursrc.flags |= yystack.l_mark[-2].mapval; @@ -651,30 +644,30 @@ case 17: } break; case 18: -#line 141 "../../freebsd/lib/libc/net/nsparser.y" +#line 134 "../../freebsd/lib/libc/net/nsparser.y" { yyval.mapval = NS_SUCCESS; } break; case 19: -#line 142 "../../freebsd/lib/libc/net/nsparser.y" +#line 135 "../../freebsd/lib/libc/net/nsparser.y" { yyval.mapval = NS_UNAVAIL; } break; case 20: -#line 143 "../../freebsd/lib/libc/net/nsparser.y" +#line 136 "../../freebsd/lib/libc/net/nsparser.y" { yyval.mapval = NS_NOTFOUND; } break; case 21: -#line 144 "../../freebsd/lib/libc/net/nsparser.y" +#line 137 "../../freebsd/lib/libc/net/nsparser.y" { yyval.mapval = NS_TRYAGAIN; } break; case 22: -#line 148 "../../freebsd/lib/libc/net/nsparser.y" +#line 141 "../../freebsd/lib/libc/net/nsparser.y" { yyval.mapval = NS_ACTION_RETURN; } break; case 23: -#line 149 "../../freebsd/lib/libc/net/nsparser.y" +#line 142 "../../freebsd/lib/libc/net/nsparser.y" { yyval.mapval = NS_ACTION_CONTINUE; } break; -#line 678 "_nsyy.tab.c" +#line 671 "_nsyy.tab.c" } yystack.s_mark -= yym; yystate = *yystack.s_mark; diff --git a/freebsd/lib/libipsec/policy_parse.c b/freebsd/lib/libipsec/policy_parse.c index 1fa7635a..04aae36b 100644 --- a/freebsd/lib/libipsec/policy_parse.c +++ b/freebsd/lib/libipsec/policy_parse.c @@ -5,6 +5,7 @@ #define YYBYACC 1 #define YYMAJOR 1 #define YYMINOR 9 +#define YYPATCH 20160324 #define YYEMPTY (-1) #define yyclearin (yychar = YYEMPTY) @@ -136,12 +137,11 @@ static caddr_t policy_parse(char *msg, int msglen); extern void __policy__strbuffer__init__(char *msg); extern void __policy__strbuffer__free__(void); -extern int yyparse(void); extern int yylex(void); extern char *__libipsecyytext; /*XXX*/ -#line 98 "../../freebsd/lib/libipsec/policy_parse.y" +#line 97 "../../freebsd/lib/libipsec/policy_parse.y" #ifdef YYSTYPE #undef YYSTYPE_IS_DECLARED #define YYSTYPE_IS_DECLARED 1 @@ -201,7 +201,7 @@ extern int YYPARSE_DECL(); #define SLASH 266 #define HYPHEN 267 #define YYERRCODE 256 -typedef short YYINT; +typedef int YYINT; static const YYINT __libipsecyylhs[] = { -1, 2, 0, 0, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 4, 5, 7, 7, 8, 6, 6, @@ -372,7 +372,7 @@ typedef struct { } YYSTACKDATA; /* variables for the parser stack */ static YYSTACKDATA yystack; -#line 213 "../../freebsd/lib/libipsec/policy_parse.y" +#line 212 "../../freebsd/lib/libipsec/policy_parse.y" void yyerror(msg) @@ -803,7 +803,7 @@ yyreduce: switch (yyn) { case 1: -#line 116 "../../freebsd/lib/libipsec/policy_parse.y" +#line 115 "../../freebsd/lib/libipsec/policy_parse.y" { p_dir = yystack.l_mark[-1].num; p_type = yystack.l_mark[0].num; @@ -813,7 +813,7 @@ case 1: } break; case 3: -#line 125 "../../freebsd/lib/libipsec/policy_parse.y" +#line 124 "../../freebsd/lib/libipsec/policy_parse.y" { p_dir = yystack.l_mark[0].num; p_type = 0; /* ignored it by kernel */ @@ -823,7 +823,7 @@ case 3: } break; case 5: -#line 136 "../../freebsd/lib/libipsec/policy_parse.y" +#line 135 "../../freebsd/lib/libipsec/policy_parse.y" { if (rule_check() < 0) return -1; @@ -835,43 +835,43 @@ case 5: } break; case 12: -#line 154 "../../freebsd/lib/libipsec/policy_parse.y" +#line 153 "../../freebsd/lib/libipsec/policy_parse.y" { __ipsec_errcode = EIPSEC_FEW_ARGUMENTS; return -1; } break; case 13: -#line 158 "../../freebsd/lib/libipsec/policy_parse.y" +#line 157 "../../freebsd/lib/libipsec/policy_parse.y" { __ipsec_errcode = EIPSEC_FEW_ARGUMENTS; return -1; } break; case 14: -#line 165 "../../freebsd/lib/libipsec/policy_parse.y" +#line 164 "../../freebsd/lib/libipsec/policy_parse.y" { p_protocol = yystack.l_mark[0].num; } break; case 15: -#line 169 "../../freebsd/lib/libipsec/policy_parse.y" +#line 168 "../../freebsd/lib/libipsec/policy_parse.y" { p_mode = yystack.l_mark[0].num; } break; case 16: -#line 173 "../../freebsd/lib/libipsec/policy_parse.y" +#line 172 "../../freebsd/lib/libipsec/policy_parse.y" { p_level = yystack.l_mark[0].num; p_reqid = 0; } break; case 17: -#line 177 "../../freebsd/lib/libipsec/policy_parse.y" +#line 176 "../../freebsd/lib/libipsec/policy_parse.y" { p_level = IPSEC_LEVEL_UNIQUE; p_reqid = atol(yystack.l_mark[0].val.buf); /* atol() is good. */ } break; case 18: -#line 184 "../../freebsd/lib/libipsec/policy_parse.y" +#line 183 "../../freebsd/lib/libipsec/policy_parse.y" { p_src = parse_sockaddr(&yystack.l_mark[0].val); if (p_src == NULL) @@ -879,7 +879,7 @@ case 18: } break; case 19: -#line 190 "../../freebsd/lib/libipsec/policy_parse.y" +#line 189 "../../freebsd/lib/libipsec/policy_parse.y" { p_dst = parse_sockaddr(&yystack.l_mark[0].val); if (p_dst == NULL) @@ -887,7 +887,7 @@ case 19: } break; case 20: -#line 195 "../../freebsd/lib/libipsec/policy_parse.y" +#line 194 "../../freebsd/lib/libipsec/policy_parse.y" { if (p_dir != IPSEC_DIR_OUTBOUND) { __ipsec_errcode = EIPSEC_INVAL_DIR; @@ -896,7 +896,7 @@ case 20: } break; case 21: -#line 201 "../../freebsd/lib/libipsec/policy_parse.y" +#line 200 "../../freebsd/lib/libipsec/policy_parse.y" { if (p_dir != IPSEC_DIR_INBOUND) { __ipsec_errcode = EIPSEC_INVAL_DIR; diff --git a/freebsd/lib/libkvm/kvm.h b/freebsd/lib/libkvm/kvm.h index 8b661807..db71bf35 100644 --- a/freebsd/lib/libkvm/kvm.h +++ b/freebsd/lib/libkvm/kvm.h @@ -66,11 +66,11 @@ struct proc; struct kvm_swap { char ksw_devname[32]; - int ksw_used; - int ksw_total; + u_int ksw_used; + u_int ksw_total; int ksw_flags; - int ksw_reserved1; - int ksw_reserved2; + u_int ksw_reserved1; + u_int ksw_reserved2; }; #define SWIF_DEV_PREFIX 0x0002 |