/
usr
/
src
/
file_protector-1.1-1506
/
transport
/
File Upload :
llllll
Current File: //usr/src/file_protector-1.1-1506/transport/device.c
/** @file @brief 'transport' device @details Copyright (c) 2017 Acronis International GmbH @author Mikhail Krivtsov (mikhail.krivtsov@acronis.com) @since $Id: $ */ #include "device.h" #include "debug.h" // DPRINTF #include "memory.h" #include "transport.h" #include "transport_protocol.h" #include <linux/errno.h> // error codes: ENOMEM #include <linux/fs.h> #include <linux/miscdevice.h> static const struct file_operations operations = { .owner = THIS_MODULE, .open = transport_device_open, .llseek = no_llseek, .read = transport_device_read, .write = transport_device_write, .unlocked_ioctl = transport_device_ioctl, .release = transport_device_release, .mmap = transport_device_mmap, }; static struct miscdevice miscdevice = { .minor = MISC_DYNAMIC_MINOR, .name = TRANSPORT_DEVICE_NAME, .fops = &operations, }; int __init device_mod_init(void) { int ret; ret = misc_register(&miscdevice); if (ret) { EPRINTF("'misc_register()' failure %i", ret); goto out; } DPRINTF("miscdevice.minor=%i", miscdevice.minor); // Note: 'ret' is already 0 here out: return ret; } void device_mod_down(void) { DPRINTF(""); misc_deregister(&miscdevice); DPRINTF(""); }
Copyright ©2k19 -
Hexid
|
Tex7ure