static const char mkswap_usage[] =
- "mkswap [-c] [-v0|-v1] device [block-count]\n\n"
- "Prepare a disk partition to be used as a swap partition.\n\n"
+ "mkswap [-c] [-v0|-v1] device [block-count]\n"
+#ifndef BB_FEATURE_TRIVIAL_HELP
+ "\nPrepare a disk partition to be used as a swap partition.\n\n"
"Options:\n" "\t-c\t\tCheck for read-ability.\n"
"\t-v0\t\tMake version 0 swap [max 128 Megs].\n"
"\t-v1\t\tMake version 1 swap [big!] (default for kernels > 2.1.117).\n"
- "\tblock-count\tNumber of block to use (default is entire partition).\n";
+ "\tblock-count\tNumber of block to use (default is entire partition).\n"
+#endif
+ ;
#ifndef _IO
#define BLKGETSIZE _IO(0x12,96)
#endif
-static char *program_name = "mkswap";
static char *device_name = NULL;
static int DEV = -1;
static long PAGES = 0;
if (pagesize != PAGE_SIZE)
fprintf(stderr, "Assuming pages of size %d\n", pagesize);
#endif
- signature_page = (int *) malloc(pagesize);
+ signature_page = (int *) xmalloc(pagesize);
memset(signature_page, 0, pagesize);
p = (struct swap_header_v1 *) signature_page;
}
void die(const char *str)
{
- fprintf(stderr, "%s: %s\n", program_name, str);
+ fprintf(stderr, "%s: %s\n", applet_name, str);
exit(FALSE);
}
int do_seek = 1;
char *buffer;
- buffer = malloc(pagesize);
- if (!buffer)
- die("Out of memory");
+ buffer = xmalloc(pagesize);
current_page = 0;
while (current_page < PAGES) {
if (!check) {
int offset;
int force = 0;
- if (argc && *argv)
- program_name = *argv;
-
init_signature_page(); /* get pagesize */
while (argc-- > 1) {
}
if (!device_name) {
fprintf(stderr,
- "%s: error: Nowhere to set up swap on?\n", program_name);
+ "%s: error: Nowhere to set up swap on?\n", applet_name);
usage(mkswap_usage);
}
sz = get_size(device_name);
fprintf(stderr,
"%s: error: "
"size %ld is larger than device size %d\n",
- program_name,
+ applet_name,
PAGES * (pagesize / 1024), sz * (pagesize / 1024));
exit(FALSE);
}
}
if (version != 0 && version != 1) {
fprintf(stderr, "%s: error: unknown version %d\n",
- program_name, version);
+ applet_name, version);
usage(mkswap_usage);
}
if (PAGES < 10) {
fprintf(stderr,
"%s: error: swap area needs to be at least %ldkB\n",
- program_name, (long) (10 * pagesize / 1024));
+ applet_name, (long) (10 * pagesize / 1024));
usage(mkswap_usage);
}
#if 0
if (PAGES > maxpages) {
PAGES = maxpages;
fprintf(stderr, "%s: warning: truncating swap area to %ldkB\n",
- program_name, PAGES * pagesize / 1024);
+ applet_name, PAGES * pagesize / 1024);
}
DEV = open(device_name, O_RDWR);
%s: Device '%s' contains a valid Sun disklabel.\n\
This probably means creating v0 swap would destroy your partition table\n\
No swap created. If you really want to create swap v0 on that device, use\n\
-the -f option to force it.\n", program_name, device_name);
+the -f option to force it.\n", applet_name, device_name);
exit(FALSE);
}
}
*/
if (fsync(DEV))
die("fsync failed");
- exit(TRUE);
+ return(TRUE);
}