48 lines
1.1 KiB
C
48 lines
1.1 KiB
C
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
/*
|
|
* Copyright (c) 2019 Cyril Hrubis <chrubis@suse.cz>
|
|
*/
|
|
|
|
#ifndef TST_UINPUT_H__
|
|
#define TST_UINPUT_H__
|
|
|
|
/**
|
|
* Tries to open the uinput device.
|
|
*
|
|
* Returns file descriptor on success, -1 on failure.
|
|
*/
|
|
int open_uinput(void);
|
|
|
|
/**
|
|
* Creates virtual input device.
|
|
*
|
|
* @fd File descriptor returned by open_uinput().
|
|
*/
|
|
void create_input_device(int fd);
|
|
|
|
/**
|
|
* Parses /proc/bus/input/devices and returns the strings for our virtual device.
|
|
* If passing 'H' to it, it returns HANDLERS string. If passing 'S' to it, it
|
|
* returns SYSFS string.
|
|
*
|
|
* Returns newly allocated string, or NULL in a case of failure.
|
|
*/
|
|
char *get_input_field_value(char field);
|
|
|
|
/**
|
|
* Sets up the virtual device to appear as a mouse, this must be called before
|
|
* the call to create_input_device().
|
|
*
|
|
* @fd File descriptor as returned by open_uinput().
|
|
*/
|
|
void setup_mouse_events(int fd);
|
|
|
|
/**
|
|
* Destroys virtual input device.
|
|
*
|
|
* @fd File descriptor returned by open_uinput().
|
|
*/
|
|
void destroy_input_device(int fd);
|
|
|
|
#endif /* TST_UINPUT_H__ */
|