Linux server.thearyasamaj.org 4.18.0-553.56.1.el8_10.x86_64 #1 SMP Tue Jun 10 05:00:59 EDT 2025 x86_64
Apache
: 103.90.241.146 | : 216.73.216.222
Cant Read [ /etc/named.conf ]
5.6.40
ftpuser@mantra.thearyasamaj.org
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
src /
file_protector-1.1-1553 /
transport /
[ HOME SHELL ]
Name
Size
Permission
Action
device.c
1.2
KB
-rw-r--r--
device.h
257
B
-rw-r--r--
exec_event.c
7.13
KB
-rw-r--r--
exec_event.h
391
B
-rw-r--r--
exit_event.c
1.57
KB
-rw-r--r--
exit_event.h
291
B
-rw-r--r--
fork_event.c
8.61
KB
-rw-r--r--
fork_event.h
360
B
-rw-r--r--
fs_event.c
26.92
KB
-rw-r--r--
fs_event.h
2.43
KB
-rw-r--r--
message.c
19.66
KB
-rw-r--r--
message.h
4.03
KB
-rw-r--r--
ring.h
2.29
KB
-rw-r--r--
set.h
1.86
KB
-rw-r--r--
subtype.h
1.06
KB
-rw-r--r--
thread_safe_path.h
2.28
KB
-rw-r--r--
transport.c
61.56
KB
-rw-r--r--
transport.h
4.01
KB
-rw-r--r--
transport_id.h
1.75
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : transport.h
/** @file @brief Message transport between kernel and userspace @details Copyright (c) 2017 Acronis International GmbH @author Mikhail Krivtsov (mikhail.krivtsov@acronis.com) @since $Id: $ */ #pragma once #include "compat.h" #include "ring.h" #include "set.h" #include <linux/fs.h> #include <linux/types.h> // bool, [u]int(8|16|32|64)_t, pid_t #include "transport_id.h" #include "transport_protocol.h" // This is the header of the buffer that is 'mmap'd between kernel and user space. // Both reader & write must use READ_ONCE/WRITE_ONCE/smp_* when accessing its contents. typedef struct { // 'head' and 'tail' is ring-like - reader reads from the 'head' and moves it to the 'tail' // 'writer' moves the 'tail' as showing that more content is available. // In our case, kernel=writer & userspace=reader // Head is written only by userspace, it is specifying offset in 'entries' in bytes // When head is written by userspace using 'smp_store_release', kernel must 'smp_load_acquire' it uint32_t head ____cacheline_aligned_in_smp; // Tail is written only by kernelspace, it is specifying offset in 'entries' in bytes uint32_t tail ____cacheline_aligned_in_smp; // Entries with the data, varsized struct where 'data_queue_entry_t' itself is varsized data_queue_entry_t entries[0] ____cacheline_aligned_in_smp; } shared_data_queue_t; typedef struct { atomic_t refcount; wait_queue_head_t msg_wait_queue; } transport_event_t; typedef struct { atomic_t refcount; pid_t control_tgid; uint64_t events_mask; uint64_t events_subtype_mask; spinlock_t msg_spinlock; transport_event_t* event; bool shutdown; ring_t msg_ring; // sent messages waiting for 'reply' set_t sent_msgs_set; uint32_t queue_size; shared_data_queue_t *queue; atomic_t queue_event; transport_id_t transport_id; uint64_t bytes_written; } transport_t; typedef struct { pid_t control_tgid[MAX_TRANSPORT_SIZE]; transport_t *transports[MAX_TRANSPORT_SIZE]; } transports_t; typedef struct { struct mutex transport_mutex; unsigned transport_count; uint64_t combined_events_mask; uint64_t combined_events_subtype_mask; transports_t transports; atomic64_t msg_id_sequence; uint64_t last_transport_seq_num; transport_ids_t transport_ids; } transport_global_t; // 'module' 'init'/'down' int transport_mod_init(void); void transport_mod_down(void); // 'device' 'fops' int transport_device_open(struct inode *, struct file *); long transport_device_ioctl(struct file *, unsigned int, unsigned long); ssize_t transport_device_read(struct file *, char __user *, size_t, loff_t *); ssize_t transport_device_write(struct file *, const char __user *, size_t, loff_t *); int transport_device_release(struct inode *, struct file *); int transport_device_mmap(struct file *filp, struct vm_area_struct *vma); extern transport_global_t transport_global; static inline uint64_t transport_global_get_combined_mask(void) { return READ_ONCE(transport_global.combined_events_mask); } static inline uint64_t transport_global_get_combined_subtype_mask(void) { return READ_ONCE(transport_global.combined_events_subtype_mask); } static inline void transport_global_get_ids(transport_ids_t *ids) { int i; for (i = 0; i < MAX_TRANSPORT_SIZE; i++) { ids->ids[i] = READ_ONCE(transport_global.transport_ids.ids[i]); } } static inline bool transport_is_control_tgid(pid_t tgid) { int i; for (i = 0; i < MAX_TRANSPORT_SIZE; i++) { if (READ_ONCE(transport_global.transports.control_tgid[i]) == tgid) return true; } return false; } static inline msg_id_t transport_global_sequence_next(void) { return 1 + atomic64_inc_return(&transport_global.msg_id_sequence); } struct msg_s; void send_msg_async(struct msg_s *msg); void send_msg_sync(struct msg_s *msg); void send_msg_async_unref_unchecked(struct msg_s *msg); void send_msg_sync_unref_unchecked(struct msg_s *msg); static inline void send_msg_async_unref(struct msg_s *msg) { if (msg) send_msg_async_unref_unchecked(msg); } static inline void send_msg_sync_unref(struct msg_s *msg) { if (msg) send_msg_sync_unref_unchecked(msg); }
Close