1 /*
2 *
3 * Copyright (c) 2003 The Regents of the University of California. All
4 * rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 *
10 * - Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 *
13 * - Neither the name of the University nor the names of its
14 * contributors may be used to endorse or promote products derived
15 * from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS''
18 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
19 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
21 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
25 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 *
29 */
30
31
32 #include <stdio.h>
33 #include <stdlib.h>
34 #include <ctype.h>
35 #include <string.h>
36
37 #include "fusd.h"
38
39 int return_zero(struct fusd_file_info *file)
40 {
41 return 0;
42 }
43
44 ssize_t do_read(struct fusd_file_info *file, char *buffer, size_t length,
45 loff_t *offset)
46 {
47 memset(buffer, 0, length);
48 return length;
49 }
50
51 int main(int argc, char *argv[])
52 {
53 int fd;
54 struct fusd_file_operations f = { open: return_zero, close: return_zero,
55 read: do_read };
56
57 fd = fusd_register("zero-fusd", 0666, NULL, &f);
58
59 if (fd < 0) {
60 perror("trying to register /dev/zero-fusd");
61 return 0;
62 }
63
64 printf("registered /dev/zero-fusd on fd %d\n", fd);
65 fusd_run();
66 return 0;
67 }
68
69
70
71
72
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.