at v2.6.13 56 lines 1.2 kB view raw
1/* 2 * Copyright (C) 2002 Jeff Dike (jdike@karaya.com) 3 * Licensed under the GPL 4 */ 5 6#include <stdlib.h> 7#include <errno.h> 8#include "chan_user.h" 9#include "os.h" 10 11static int null_chan; 12 13static void *null_init(char *str, int device, struct chan_opts *opts) 14{ 15 return(&null_chan); 16} 17 18static int null_open(int input, int output, int primary, void *d, 19 char **dev_out) 20{ 21 *dev_out = NULL; 22 return(os_open_file(DEV_NULL, of_rdwr(OPENFLAGS()), 0)); 23} 24 25static int null_read(int fd, char *c_out, void *unused) 26{ 27 return(-ENODEV); 28} 29 30static void null_free(void *data) 31{ 32} 33 34struct chan_ops null_ops = { 35 .type = "null", 36 .init = null_init, 37 .open = null_open, 38 .close = generic_close, 39 .read = null_read, 40 .write = generic_write, 41 .console_write = generic_console_write, 42 .window_size = generic_window_size, 43 .free = null_free, 44 .winch = 0, 45}; 46 47/* 48 * Overrides for Emacs so that we follow Linus's tabbing style. 49 * Emacs will notice this stuff at the end of the file and automatically 50 * adjust the settings for this buffer only. This must remain at the end 51 * of the file. 52 * --------------------------------------------------------------------------- 53 * Local variables: 54 * c-file-style: "linux" 55 * End: 56 */