Module Name: src
Committed By: rmind
Date: Mon Nov 5 23:47:12 UTC 2012
Modified Files:
src/usr.sbin/npf/npfctl: npf_disassemble.c npf_extmod.c npf_ncgen.c
npf_parse.y npf_scan.l npf_var.c npfctl.c npfctl.h
Log Message:
npfctl: switch to efun(3) routines.
To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/usr.sbin/npf/npfctl/npf_disassemble.c
cvs rdiff -u -r1.1 -r1.2 src/usr.sbin/npf/npfctl/npf_extmod.c
cvs rdiff -u -r1.13 -r1.14 src/usr.sbin/npf/npfctl/npf_ncgen.c
cvs rdiff -u -r1.14 -r1.15 src/usr.sbin/npf/npfctl/npf_parse.y
cvs rdiff -u -r1.6 -r1.7 src/usr.sbin/npf/npfctl/npf_scan.l
cvs rdiff -u -r1.5 -r1.6 src/usr.sbin/npf/npfctl/npf_var.c
cvs rdiff -u -r1.22 -r1.23 src/usr.sbin/npf/npfctl/npfctl.c
cvs rdiff -u -r1.21 -r1.22 src/usr.sbin/npf/npfctl/npfctl.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.sbin/npf/npfctl/npf_disassemble.c
diff -u src/usr.sbin/npf/npfctl/npf_disassemble.c:1.10 src/usr.sbin/npf/npfctl/npf_disassemble.c:1.11
--- src/usr.sbin/npf/npfctl/npf_disassemble.c:1.10 Mon Oct 29 02:27:12 2012
+++ src/usr.sbin/npf/npfctl/npf_disassemble.c Mon Nov 5 23:47:12 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_disassemble.c,v 1.10 2012/10/29 02:27:12 rmind Exp $ */
+/* $NetBSD: npf_disassemble.c,v 1.11 2012/11/05 23:47:12 rmind Exp $ */
/*-
* Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
* FIXME: config generation should be redesigned..
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: npf_disassemble.c,v 1.10 2012/10/29 02:27:12 rmind Exp $");
+__RCSID("$NetBSD: npf_disassemble.c,v 1.11 2012/11/05 23:47:12 rmind Exp $");
#include <stdio.h>
#include <stdlib.h>
@@ -48,8 +48,6 @@ __RCSID("$NetBSD: npf_disassemble.c,v 1.
#include <netinet/tcp.h>
#include <net/if.h>
-#include <util.h>
-
#define NPF_OPCODES_STRINGS
#include <net/npf_ncode.h>
@@ -108,7 +106,7 @@ npfctl_ncode_add_target(nc_inf_t *ni, co
/* Grow array, if needed, and add a new target. */
if (ni->ni_targidx == ni->ni_targsize) {
ni->ni_targsize += 16;
- ni->ni_targs = xrealloc(ni->ni_targs,
+ ni->ni_targs = erealloc(ni->ni_targs,
ni->ni_targsize * sizeof(uint32_t));
}
assert(ni->ni_targidx < ni->ni_targsize);
@@ -372,7 +370,7 @@ npfctl_ncode_operand(nc_inf_t *ni, char
nc_inf_t *
npfctl_ncode_disinf(FILE *fp)
{
- nc_inf_t *ni = zalloc(sizeof(nc_inf_t));
+ nc_inf_t *ni = emalloc(sizeof(nc_inf_t));
memset(ni, 0, sizeof(nc_inf_t));
ni->ni_fp = fp;
Index: src/usr.sbin/npf/npfctl/npf_extmod.c
diff -u src/usr.sbin/npf/npfctl/npf_extmod.c:1.1 src/usr.sbin/npf/npfctl/npf_extmod.c:1.2
--- src/usr.sbin/npf/npfctl/npf_extmod.c:1.1 Sun Sep 16 13:47:41 2012
+++ src/usr.sbin/npf/npfctl/npf_extmod.c Mon Nov 5 23:47:12 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_extmod.c,v 1.1 2012/09/16 13:47:41 rmind Exp $ */
+/* $NetBSD: npf_extmod.c,v 1.2 2012/11/05 23:47:12 rmind Exp $ */
/*-
* Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: npf_extmod.c,v 1.1 2012/09/16 13:47:41 rmind Exp $");
+__RCSID("$NetBSD: npf_extmod.c,v 1.2 2012/11/05 23:47:12 rmind Exp $");
#include <stdlib.h>
#include <inttypes.h>
@@ -81,8 +81,8 @@ npf_extmod_load(const char *name)
errx(EXIT_FAILURE, "dlopen: %s", dlerror());
}
- ext = zalloc(sizeof(npf_extmod_t));
- ext->name = xstrdup(name);
+ ext = emalloc(sizeof(npf_extmod_t));
+ ext->name = estrdup(name);
ext->init = npf_extmod_sym(handle, name, "init");
ext->cons = npf_extmod_sym(handle, name, "construct");
ext->param = npf_extmod_sym(handle, name, "param");
Index: src/usr.sbin/npf/npfctl/npf_ncgen.c
diff -u src/usr.sbin/npf/npfctl/npf_ncgen.c:1.13 src/usr.sbin/npf/npfctl/npf_ncgen.c:1.14
--- src/usr.sbin/npf/npfctl/npf_ncgen.c:1.13 Thu Jul 19 21:52:29 2012
+++ src/usr.sbin/npf/npfctl/npf_ncgen.c Mon Nov 5 23:47:12 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_ncgen.c,v 1.13 2012/07/19 21:52:29 spz Exp $ */
+/* $NetBSD: npf_ncgen.c,v 1.14 2012/11/05 23:47:12 rmind Exp $ */
/*-
* Copyright (c) 2009-2012 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: npf_ncgen.c,v 1.13 2012/07/19 21:52:29 spz Exp $");
+__RCSID("$NetBSD: npf_ncgen.c,v 1.14 2012/11/05 23:47:12 rmind Exp $");
#include <stdlib.h>
#include <stddef.h>
@@ -91,7 +91,7 @@ npfctl_ncgen_getptr(nc_ctx_t *ctx, size_
/* Otherwise, re-allocate the buffer and update the pointers. */
ctx->nc_len = NC_ALLOC_ROUND(reqlen);
- ctx->nc_buf = xrealloc(ctx->nc_buf, ctx->nc_len);
+ ctx->nc_buf = erealloc(ctx->nc_buf, ctx->nc_len);
ctx->nc_iptr = (uint8_t *)ctx->nc_buf + offset;
return ctx->nc_iptr;
}
@@ -126,7 +126,7 @@ npfctl_ncgen_addjmp(nc_ctx_t *ctx, uint3
reqlen = NC_ALLOC_ROUND(ctx->nc_jmp_it * sizeof(ptrdiff_t));
if (reqlen > NC_ALLOC_ROUND(ctx->nc_jmp_len)) {
- ctx->nc_jmp_list = xrealloc(ctx->nc_jmp_list, reqlen);
+ ctx->nc_jmp_list = erealloc(ctx->nc_jmp_list, reqlen);
ctx->nc_jmp_len = reqlen;
}
@@ -145,7 +145,7 @@ npfctl_ncgen_addjmp(nc_ctx_t *ctx, uint3
nc_ctx_t *
npfctl_ncgen_create(void)
{
- return zalloc(sizeof(nc_ctx_t));
+ return emalloc(sizeof(nc_ctx_t));
}
/*
Index: src/usr.sbin/npf/npfctl/npf_parse.y
diff -u src/usr.sbin/npf/npfctl/npf_parse.y:1.14 src/usr.sbin/npf/npfctl/npf_parse.y:1.15
--- src/usr.sbin/npf/npfctl/npf_parse.y:1.14 Tue Oct 2 23:38:52 2012
+++ src/usr.sbin/npf/npfctl/npf_parse.y Mon Nov 5 23:47:12 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_parse.y,v 1.14 2012/10/02 23:38:52 rmind Exp $ */
+/* $NetBSD: npf_parse.y,v 1.15 2012/11/05 23:47:12 rmind Exp $ */
/*-
* Copyright (c) 2011-2012 The NetBSD Foundation, Inc.
@@ -54,7 +54,7 @@ yyerror(const char *fmt, ...)
extern int yyleng;
extern char *yytext;
- char *msg, *context = xstrndup(yytext, yyleng);
+ char *msg, *context = estrndup(yytext, yyleng);
bool eol = (*context == '\n');
va_list ap;
@@ -66,7 +66,7 @@ yyerror(const char *fmt, ...)
yylineno - (int)eol, yycolumn, msg);
if (!eol) {
size_t len = strlen(context);
- char *dst = zalloc(len * 4 + 1);
+ char *dst = emalloc(len * 4 + 1);
strvisx(dst, context, len, VIS_WHITE|VIS_CSTYLE);
fprintf(stderr, " near '%s'", dst);
@@ -315,7 +315,7 @@ proc_call
{
proc_call_t pc;
- pc.pc_name = xstrdup($1);
+ pc.pc_name = estrdup($1);
pc.pc_opts = $3;
$$ = npfvar_create(".proc_call");
npfvar_add_element($$, NPFVAR_PROC, &pc, sizeof(pc));
@@ -338,8 +338,8 @@ proc_param
{
proc_param_t pp;
- pp.pp_param = xstrdup($1);
- pp.pp_value = $2 ? xstrdup($2) : NULL;
+ pp.pp_param = estrdup($1);
+ pp.pp_value = $2 ? estrdup($2) : NULL;
$$ = npfvar_create(".proc_param");
npfvar_add_element($$, NPFVAR_PROC_PARAM, &pp, sizeof(pp));
}
Index: src/usr.sbin/npf/npfctl/npf_scan.l
diff -u src/usr.sbin/npf/npfctl/npf_scan.l:1.6 src/usr.sbin/npf/npfctl/npf_scan.l:1.7
--- src/usr.sbin/npf/npfctl/npf_scan.l:1.6 Sun Sep 16 13:47:41 2012
+++ src/usr.sbin/npf/npfctl/npf_scan.l Mon Nov 5 23:47:12 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_scan.l,v 1.6 2012/09/16 13:47:41 rmind Exp $ */
+/* $NetBSD: npf_scan.l,v 1.7 2012/11/05 23:47:12 rmind Exp $ */
/*-
* Copyright (c) 2011-2012 The NetBSD Foundation, Inc.
@@ -109,7 +109,7 @@ any return ANY;
"=" return EQ;
"0x"[0-9a-fA-F]+ {
- char *endp, *buf = zalloc(yyleng + 1);
+ char *endp, *buf = emalloc(yyleng + 1);
buf[yyleng] = 0;
yylval.num = strtoul(buf+2, &endp, 16);
free(buf);
@@ -117,46 +117,46 @@ any return ANY;
}
{NUMBER}"."{NUMBER} {
- char *endp, *buf = xstrndup(yytext, yyleng);
+ char *endp, *buf = estrndup(yytext, yyleng);
yylval.fpnum = strtod(buf, &endp);
free(buf);
return FPNUM;
}
[0-9a-fA-F]+":"[0-9a-fA-F:]* {
- yylval.str = xstrndup(yytext, yyleng);
+ yylval.str = estrndup(yytext, yyleng);
return IPV6ADDR;
}
{NUMBER}"."[0-9][0-9.]* {
- yylval.str = xstrndup(yytext, yyleng);
+ yylval.str = estrndup(yytext, yyleng);
return IPV4ADDR;
}
{NUMBER} {
- char *endp, *buf = xstrndup(yytext, yyleng);
+ char *endp, *buf = estrndup(yytext, yyleng);
yylval.num = strtoul(buf, &endp, 10);
free(buf);
return NUM;
}
"<"{NID}">" {
- yylval.str = xstrndup(yytext + 1, yyleng - 2);
+ yylval.str = estrndup(yytext + 1, yyleng - 2);
return TABLE_ID;
}
"$"{NID} {
- yylval.str = xstrndup(yytext + 1, yyleng - 1);
+ yylval.str = estrndup(yytext + 1, yyleng - 1);
return VAR_ID;
}
{ID} {
- yylval.str = xstrndup(yytext, yyleng);
+ yylval.str = estrndup(yytext, yyleng);
return IDENTIFIER;
}
\"[^\"]*\" {
- yylval.str = xstrndup(yytext + 1, yyleng - 2);
+ yylval.str = estrndup(yytext + 1, yyleng - 2);
return STRING;
}
Index: src/usr.sbin/npf/npfctl/npf_var.c
diff -u src/usr.sbin/npf/npfctl/npf_var.c:1.5 src/usr.sbin/npf/npfctl/npf_var.c:1.6
--- src/usr.sbin/npf/npfctl/npf_var.c:1.5 Wed May 30 21:30:07 2012
+++ src/usr.sbin/npf/npfctl/npf_var.c Mon Nov 5 23:47:12 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_var.c,v 1.5 2012/05/30 21:30:07 rmind Exp $ */
+/* $NetBSD: npf_var.c,v 1.6 2012/11/05 23:47:12 rmind Exp $ */
/*-
* Copyright (c) 2011-2012 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: npf_var.c,v 1.5 2012/05/30 21:30:07 rmind Exp $");
+__RCSID("$NetBSD: npf_var.c,v 1.6 2012/11/05 23:47:12 rmind Exp $");
#include <stdlib.h>
#include <string.h>
@@ -60,8 +60,8 @@ static size_t var_num = 0;
npfvar_t *
npfvar_create(const char *name)
{
- npfvar_t *vp = zalloc(sizeof(*vp));
- vp->v_key = xstrdup(name);
+ npfvar_t *vp = emalloc(sizeof(*vp));
+ vp->v_key = estrdup(name);
var_num++;
return vp;
}
@@ -104,8 +104,8 @@ npfvar_add_element(npfvar_t *vp, int typ
return NULL;
}
vp->v_count++;
- el = zalloc(sizeof(*el));
- el->e_data = zalloc(len);
+ el = emalloc(sizeof(*el));
+ el->e_data = emalloc(len);
el->e_type = type;
memcpy(el->e_data, data, len);
Index: src/usr.sbin/npf/npfctl/npfctl.c
diff -u src/usr.sbin/npf/npfctl/npfctl.c:1.22 src/usr.sbin/npf/npfctl/npfctl.c:1.23
--- src/usr.sbin/npf/npfctl/npfctl.c:1.22 Wed Oct 31 08:54:39 2012
+++ src/usr.sbin/npf/npfctl/npfctl.c Mon Nov 5 23:47:12 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: npfctl.c,v 1.22 2012/10/31 08:54:39 martin Exp $ */
+/* $NetBSD: npfctl.c,v 1.23 2012/11/05 23:47:12 rmind Exp $ */
/*-
* Copyright (c) 2009-2012 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: npfctl.c,v 1.22 2012/10/31 08:54:39 martin Exp $");
+__RCSID("$NetBSD: npfctl.c,v 1.23 2012/11/05 23:47:12 rmind Exp $");
#include <sys/ioctl.h>
#include <sys/stat.h>
@@ -44,8 +44,6 @@ __RCSID("$NetBSD: npfctl.c,v 1.22 2012/1
#include <unistd.h>
#include <errno.h>
-#include <util.h>
-
#include "npfctl.h"
extern int yylineno, yycolumn;
@@ -86,52 +84,6 @@ static const struct operations_s {
{ NULL, 0 }
};
-void *
-zalloc(size_t sz)
-{
- void *p = malloc(sz);
-
- if (p == NULL) {
- err(EXIT_FAILURE, "zalloc");
- }
- memset(p, 0, sz);
- return p;
-}
-
-void *
-xrealloc(void *ptr, size_t size)
-{
- void *p = realloc(ptr, size);
-
- if (p == NULL) {
- err(EXIT_FAILURE, "xrealloc");
- }
- return p;
-}
-
-char *
-xstrdup(const char *s)
-{
- char *p = strdup(s);
-
- if (p == NULL) {
- err(EXIT_FAILURE, "xstrdup");
- }
- return p;
-}
-
-char *
-xstrndup(const char *s, size_t len)
-{
- char *p;
-
- p = strndup(s, len);
- if (p == NULL) {
- err(EXIT_FAILURE, "xstrndup");
- }
- return p;
-}
-
__dead static void
usage(void)
{
@@ -211,7 +163,7 @@ npfctl_print_stats(int fd)
{ -1, "Other" },
{ NPF_STAT_ERROR, "unexpected errors" },
};
- uint64_t *st = zalloc(NPF_STATS_SIZE);
+ uint64_t *st = emalloc(NPF_STATS_SIZE);
if (ioctl(fd, IOC_NPF_STATS, &st) != 0) {
err(EXIT_FAILURE, "ioctl(IOC_NPF_STATS)");
@@ -261,7 +213,7 @@ char *
npfctl_print_addrmask(int alen, npf_addr_t *addr, npf_netmask_t mask)
{
struct sockaddr_storage ss;
- char *buf = zalloc(64);
+ char *buf = emalloc(64);
int len;
switch (alen) {
@@ -333,7 +285,7 @@ npfctl_table(int fd, int argc, char **ar
}
again:
if (nct.nct_action == NPF_IOCTL_TBLENT_LIST) {
- nct.nct_data.buf.buf = zalloc(buflen);
+ nct.nct_data.buf.buf = emalloc(buflen);
nct.nct_data.buf.len = buflen;
} else {
if (!npfctl_parse_cidr(arg, &fam, &alen)) {
Index: src/usr.sbin/npf/npfctl/npfctl.h
diff -u src/usr.sbin/npf/npfctl/npfctl.h:1.21 src/usr.sbin/npf/npfctl/npfctl.h:1.22
--- src/usr.sbin/npf/npfctl/npfctl.h:1.21 Mon Oct 29 02:27:12 2012
+++ src/usr.sbin/npf/npfctl/npfctl.h Mon Nov 5 23:47:12 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: npfctl.h,v 1.21 2012/10/29 02:27:12 rmind Exp $ */
+/* $NetBSD: npfctl.h,v 1.22 2012/11/05 23:47:12 rmind Exp $ */
/*-
* Copyright (c) 2009-2012 The NetBSD Foundation, Inc.
@@ -33,6 +33,7 @@
#include <stdbool.h>
#include <inttypes.h>
#include <assert.h>
+#include <util.h>
#include <net/npf_ncode.h>
#include <net/npf.h>
@@ -90,10 +91,6 @@ typedef struct proc_param {
} proc_param_t;
void yyerror(const char *, ...) __printflike(1, 2) __dead;
-void * zalloc(size_t);
-void * xrealloc(void *, size_t);
-char * xstrdup(const char *);
-char * xstrndup(const char *, size_t);
void npfctl_print_error(const nl_error_t *);
char * npfctl_print_addrmask(int, npf_addr_t *, npf_netmask_t);