Module Name: src
Committed By: christos
Date: Thu Jan 5 21:22:49 UTC 2012
Modified Files:
src/distrib/utils/sysinst: defs.h disks.c savenewlabel.c target.c
Log Message:
- add printflike and fix the broken formats
- make sure we don't exceed the number of partitions we have
To generate a diff of this commit:
cvs rdiff -u -r1.157 -r1.158 src/distrib/utils/sysinst/defs.h
cvs rdiff -u -r1.119 -r1.120 src/distrib/utils/sysinst/disks.c
cvs rdiff -u -r1.9 -r1.10 src/distrib/utils/sysinst/savenewlabel.c
cvs rdiff -u -r1.52 -r1.53 src/distrib/utils/sysinst/target.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/distrib/utils/sysinst/defs.h
diff -u src/distrib/utils/sysinst/defs.h:1.157 src/distrib/utils/sysinst/defs.h:1.158
--- src/distrib/utils/sysinst/defs.h:1.157 Thu Jan 5 15:21:35 2012
+++ src/distrib/utils/sysinst/defs.h Thu Jan 5 16:22:49 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: defs.h,v 1.157 2012/01/05 20:21:35 christos Exp $ */
+/* $NetBSD: defs.h,v 1.158 2012/01/05 21:22:49 christos Exp $ */
/*
* Copyright 1997 Piermont Information Systems Inc.
@@ -384,8 +384,8 @@ int config_network(void);
void mnt_net_config(void);
/* From run.c */
-int collect(int, char **, const char *, ...);
-int run_program(int, const char *, ...);
+int collect(int, char **, const char *, ...) __printflike(3, 4);
+int run_program(int, const char *, ...) __printflike(2, 3);
void do_logging(void);
int do_system(const char *);
@@ -416,10 +416,10 @@ int sanity_check(void);
int set_timezone(void);
int set_root_password(void);
int set_root_shell(void);
-void scripting_fprintf(FILE *, const char *, ...);
-void scripting_vfprintf(FILE *, const char *, va_list);
+void scripting_fprintf(FILE *, const char *, ...) __printflike(2, 3);
+void scripting_vfprintf(FILE *, const char *, va_list) __printflike(2, 0);
void add_rc_conf(const char *, ...);
-void add_sysctl_conf(const char *, ...);
+void add_sysctl_conf(const char *, ...) __printflike(1, 2);
void enable_rc_conf(void);
void set_sizemultname_cyl(void);
void set_sizemultname_meg(void);
@@ -437,7 +437,8 @@ const char *target_expand(const char *);
void make_target_dir(const char *);
void append_to_target_file(const char *, const char *);
void echo_to_target_file(const char *, const char *);
-void sprintf_to_target_file(const char *, const char *, ...);
+void sprintf_to_target_file(const char *, const char *, ...)
+ __printflike(2, 3);
void trunc_target_file(const char *);
const char *target_prefix(void);
int target_chdir(const char *);
Index: src/distrib/utils/sysinst/disks.c
diff -u src/distrib/utils/sysinst/disks.c:1.119 src/distrib/utils/sysinst/disks.c:1.120
--- src/distrib/utils/sysinst/disks.c:1.119 Thu Jan 5 15:21:35 2012
+++ src/distrib/utils/sysinst/disks.c Thu Jan 5 16:22:49 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: disks.c,v 1.119 2012/01/05 20:21:35 christos Exp $ */
+/* $NetBSD: disks.c,v 1.120 2012/01/05 21:22:49 christos Exp $ */
/*
* Copyright 1997 Piermont Information Systems Inc.
@@ -668,7 +668,7 @@ make_fstab(void)
#endif
}
- scripting_fprintf(f, "# NetBSD /etc/fstab\n# See /usr/share/examples/"
+ scripting_fprintf(f, "# NetBSD %s/etc/fstab\n# See /usr/share/examples/"
"fstab/ for more examples.\n", target_prefix());
for (i = 0; i < getmaxpartitions(); i++) {
const char *s = "";
Index: src/distrib/utils/sysinst/savenewlabel.c
diff -u src/distrib/utils/sysinst/savenewlabel.c:1.9 src/distrib/utils/sysinst/savenewlabel.c:1.10
--- src/distrib/utils/sysinst/savenewlabel.c:1.9 Thu Jan 5 15:21:35 2012
+++ src/distrib/utils/sysinst/savenewlabel.c Thu Jan 5 16:22:49 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: savenewlabel.c,v 1.9 2012/01/05 20:21:35 christos Exp $ */
+/* $NetBSD: savenewlabel.c,v 1.10 2012/01/05 21:22:49 christos Exp $ */
/*
* Copyright 1997 Jonathan Stone
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#if defined(LIBC_SCCS) && !defined(lint)
-__RCSID("$NetBSD: savenewlabel.c,v 1.9 2012/01/05 20:21:35 christos Exp $");
+__RCSID("$NetBSD: savenewlabel.c,v 1.10 2012/01/05 21:22:49 christos Exp $");
#endif
#include <sys/types.h>
@@ -76,7 +76,7 @@ savenewlabel(partinfo *lp, int nparts)
(void)fprintf(stderr, "Could not open /etc/disktab");
if (logging)
(void)fprintf(logfp,
- "Failed to open /etc/diskabel for appending.\n");
+ "Failed to open /etc/disktab for appending.\n");
exit (1);
}
scripting_fprintf(f, "%s|NetBSD installation generated:\\\n", bsddiskname);
@@ -85,6 +85,11 @@ savenewlabel(partinfo *lp, int nparts)
scripting_fprintf(f, "\t:sc#%d:su#%" PRIu32 ":\\\n", dlhead*dlsec,
(uint32_t)dlsize);
scripting_fprintf(f, "\t:se#%d:%s\\\n", sectorsize, doessf);
+ if ((size_t)nparts > __arraycount(bsdlabel)) {
+ nparts = __arraycount(bsdlabel);
+ if (logging)
+ (void)fprintf(logfp, "nparts limited to %d.\n", nparts);
+ }
for (i = 0; i < nparts; i++) {
scripting_fprintf(f, "\t:p%c#%" PRIu32 ":o%c#%" PRIu32
":t%c=%s:", 'a'+i, (uint32_t)bsdlabel[i].pi_size,
Index: src/distrib/utils/sysinst/target.c
diff -u src/distrib/utils/sysinst/target.c:1.52 src/distrib/utils/sysinst/target.c:1.53
--- src/distrib/utils/sysinst/target.c:1.52 Sat Sep 19 10:57:27 2009
+++ src/distrib/utils/sysinst/target.c Thu Jan 5 16:22:49 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: target.c,v 1.52 2009/09/19 14:57:27 abs Exp $ */
+/* $NetBSD: target.c,v 1.53 2012/01/05 21:22:49 christos Exp $ */
/*
* Copyright 1997 Jonathan Stone
@@ -71,7 +71,7 @@
#include <sys/cdefs.h>
#if defined(LIBC_SCCS) && !defined(lint)
-__RCSID("$NetBSD: target.c,v 1.52 2009/09/19 14:57:27 abs Exp $");
+__RCSID("$NetBSD: target.c,v 1.53 2012/01/05 21:22:49 christos Exp $");
#endif
/*
@@ -465,7 +465,7 @@ target_collect_file(int kind, char **buf
#ifdef DEBUG
printf("collect real name %s\n", realname);
#endif
- return collect(kind, buffer, realname);
+ return collect(kind, buffer, "%s", realname);
}
/*