Changes in uspace/srv/hid/remcons/user.h [5f5d375:5a6cc679] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hid/remcons/user.h
r5f5d375 r5a6cc679 1 1 /* 2 * Copyright (c) 2024 Jiri Svoboda3 2 * Copyright (c) 2012 Vojtech Horky 4 3 * All rights reserved. … … 37 36 #define TELNET_USER_H_ 38 37 38 #include <adt/prodcons.h> 39 39 #include <fibril_synch.h> 40 40 #include <inet/tcp.h> 41 41 #include <inttypes.h> 42 42 #include <io/con_srv.h> 43 #include "remcons.h" 43 44 44 45 #define BUFFER_SIZE 32 45 #define SEND_BUF_SIZE 51246 47 /** Telnet callbacks */48 typedef struct {49 void (*ws_update)(void *, unsigned, unsigned);50 } telnet_cb_t;51 46 52 47 /** Representation of a connected (human) user. */ 53 48 typedef struct { 54 /** Synchronize send operations */ 55 fibril_mutex_t send_lock; 56 /** Synchronize receive operations */ 57 fibril_mutex_t recv_lock; 58 /** Callback functions */ 59 telnet_cb_t *cb; 60 /** Argument to callback functions */ 61 void *arg; 49 /** Mutex guarding the whole structure. */ 50 fibril_mutex_t guard; 62 51 63 52 /** Internal id, used for creating locfs entries. */ … … 72 61 con_srvs_t srvs; 73 62 63 /** Producer-consumer of kbd_event_t. */ 64 prodcons_t in_events; 74 65 link_t link; 75 66 char socket_buffer[BUFFER_SIZE]; 76 67 size_t socket_buffer_len; 77 68 size_t socket_buffer_pos; 78 char send_buf[SEND_BUF_SIZE];79 size_t send_buf_used;80 69 81 70 /** Task id of the launched application. */ … … 90 79 /** X position of the cursor. */ 91 80 int cursor_x; 92 /** Y position of the cursor. */93 int cursor_y;94 /** Total number of columns */95 unsigned cols;96 /** Total number of rows */97 unsigned rows;98 81 } telnet_user_t; 99 82 100 extern telnet_user_t *telnet_user_create(tcp_conn_t * , telnet_cb_t *, void *);83 extern telnet_user_t *telnet_user_create(tcp_conn_t *); 101 84 extern void telnet_user_add(telnet_user_t *); 102 85 extern void telnet_user_destroy(telnet_user_t *); … … 105 88 extern void telnet_user_notify_client_disconnected(telnet_user_t *); 106 89 extern errno_t telnet_user_get_next_keyboard_event(telnet_user_t *, kbd_event_t *); 107 extern errno_t telnet_user_send_data(telnet_user_t *, const char *, size_t); 108 extern errno_t telnet_user_send_raw(telnet_user_t *, const char *, size_t); 109 extern errno_t telnet_user_flush(telnet_user_t *); 110 extern errno_t telnet_user_recv(telnet_user_t *, void *, size_t, size_t *); 90 extern errno_t telnet_user_send_data(telnet_user_t *, uint8_t *, size_t); 111 91 extern void telnet_user_update_cursor_x(telnet_user_t *, int); 112 extern void telnet_user_resize(telnet_user_t *, unsigned, unsigned);113 92 114 93 /** Print informational message about connected user. */
Note:
See TracChangeset
for help on using the changeset viewer.