summaryrefslogtreecommitdiffstats
path: root/freebsd/lib
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-01-09 14:47:04 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-01-10 11:03:27 +0100
commit0577772720a4ecb050a230f75346f90b246e93c8 (patch)
treea3fba8bb57e77c932e08dd0d4bbe49adb6312e5e /freebsd/lib
parentUpdate to FreeBSD head 2016-12-10 (diff)
downloadrtems-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.h2
-rw-r--r--freebsd/lib/libc/net/getaddrinfo.c12
-rw-r--r--freebsd/lib/libc/net/nslexer.c48
-rw-r--r--freebsd/lib/libc/net/nsparser.c51
-rw-r--r--freebsd/lib/libipsec/policy_parse.c34
-rw-r--r--freebsd/lib/libkvm/kvm.h8
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