source: rtems/c/src/lib/libc/miniimfs_init.c @ 458bd34

4.104.114.84.95
Last change on this file since 458bd34 was b568ccb, checked in by Joel Sherrill <joel.sherrill@…>, on 11/02/99 at 20:20:13

The object memfile.o was being included in the miniIMFS even though it
should not have been. This required that IMFS_rmnod be split into
three separate (per file type) routines to avoid dependencies.
In the end, a miniIMFS application is 6K smaller than one using the
full IMFS.

  • Property mode set to 100644
File size: 1.4 KB
Line 
1/*
2 *  Mini-IMFS Initialization
3 *
4 *  COPYRIGHT (c) 1989-1998.
5 *  On-Line Applications Research Corporation (OAR).
6 *  Copyright assigned to U.S. Government, 1994.
7 *
8 *  The license and distribution terms for this file may be
9 *  found in the file LICENSE in this distribution or at
10 *  http://www.OARcorp.com/rtems/license.html.
11 *
12 *  $Id$
13 */
14
15#include <sys/types.h>         /* for mkdir */
16#include <fcntl.h>
17#include <unistd.h>
18#include <stdlib.h>
19
20#include <assert.h>
21
22#include "imfs.h"
23#include "libio_.h"
24
25#if defined(IMFS_DEBUG)
26#include <stdio.h>
27#endif
28
29/*
30 *  miniIMFS file system operations table
31 */
32
33rtems_filesystem_operations_table  miniIMFS_ops = {
34  IMFS_eval_path,
35  IMFS_evaluate_for_make,
36  NULL, /* XXX IMFS_link, */
37  NULL, /* XXX IMFS_unlink, */
38  IMFS_node_type,
39  IMFS_mknod,
40  NULL, /* XXX IMFS_chown, */
41  NULL, /* XXX IMFS_freenodinfo, */
42  NULL, /* XXX IMFS_mount, */
43  miniIMFS_initialize,
44  NULL, /* XXX IMFS_unmount, */
45  NULL, /* XXX IMFS_fsunmount, */
46  NULL, /* XXX IMFS_utime, */
47  NULL, /* XXX IMFS_evaluate_link, */
48  NULL, /* XXX IMFS_symlink, */
49  NULL  /* XXX IMFS_readlink */
50};
51
52/*
53 *  miniIMFS_initialize
54 */
55
56int miniIMFS_initialize(
57  rtems_filesystem_mount_table_entry_t *temp_mt_entry
58)
59{
60   IMFS_initialize_support(
61      temp_mt_entry,
62      &miniIMFS_ops,
63      &rtems_filesystem_null_handlers,  /* for memfiles */
64      &rtems_filesystem_null_handlers   /* for directories */
65   );
66   return 0;
67}
68
69
70
Note: See TracBrowser for help on using the repository browser.