Magellan Linux

Annotation of /trunk/mkinitrd-magellan/busybox/util-linux/freeramdisk.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 816 - (hide annotations) (download)
Fri Apr 24 18:33:46 2009 UTC (15 years, 1 month ago) by niro
File MIME type: text/plain
File size: 895 byte(s)
-updated to busybox-1.13.4
1 niro 532 /* vi: set sw=4 ts=4: */
2     /*
3     * freeramdisk and fdflush implementations for busybox
4     *
5     * Copyright (C) 2000 and written by Emanuele Caratti <wiz@iol.it>
6     * Adjusted a bit by Erik Andersen <andersen@codepoet.org>
7     * Unified with fdflush by Tito Ragusa <farmatito@tiscali.it>
8     *
9     * Licensed under GPLv2, see file LICENSE in this tarball for details.
10     */
11    
12 niro 816 #include "libbb.h"
13 niro 532
14     /* From <linux/fd.h> */
15     #define FDFLUSH _IO(2,0x4b)
16    
17 niro 816 int freeramdisk_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
18 niro 532 int freeramdisk_main(int argc, char **argv)
19     {
20     int fd;
21    
22     if (argc != 2) bb_show_usage();
23    
24     fd = xopen(argv[1], O_RDWR);
25    
26     // Act like freeramdisk, fdflush, or both depending on configuration.
27 niro 816 ioctl_or_perror_and_die(fd, (ENABLE_FREERAMDISK && applet_name[1]=='r')
28     || !ENABLE_FDFLUSH ? BLKFLSBUF : FDFLUSH, NULL, "%s", argv[1]);
29 niro 532
30     if (ENABLE_FEATURE_CLEAN_UP) close(fd);
31    
32     return EXIT_SUCCESS;
33     }