亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? smb.h

?? Sanos Operating System Kernel ----------------------------- Sanos is an OS kernel for use in PC base
?? H
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
  unsigned short data_offset;	        // Offset (from header start) to data
  unsigned short data_displacement;	// Displacement of these data bytes
  unsigned char setup_count;	        // Count of setup words
  unsigned char reserved2;	        // Reserved (pad above to word)
  unsigned short setup[1];	        // Setup words (# = SetupWordCount)
};

//
// Server Message Block (SMB)
//

struct smb
{
  unsigned char len[4];                // Length field
  unsigned char protocol[4];           // Always 0xFF,'SMB'
  unsigned char cmd;                   // Command
  unsigned char error_class;           // Error Class
  unsigned char reserved;              // Reserved
  unsigned short error;                // Error Code
  unsigned char flags;                 // Flags
  unsigned short flags2;               // More flags
  unsigned short pidhigh;              // High part of PID
  unsigned char secsig[8];             // Reserved for security
  unsigned short pad;
  unsigned short tid;                  // Tree identifier
  unsigned short pid;                  // Caller's process id
  unsigned short uid;                  // Unauthenticated user id
  unsigned short mid;                  // Multiplex id
  unsigned char wordcount;             // Count of parameter words
  union
  {
    unsigned short words[0];
    struct smb_andx andx;
    union
    {
      struct smb_session_setup_request setup;
      struct smb_tree_connect_request connect;
      struct smb_create_file_request create;
      struct smb_close_file_request close;
      struct smb_flush_file_request flush;
      struct smb_read_file_request read;
      struct smb_read_raw_request readraw;
      struct smb_write_file_request write;
      struct smb_trans_request trans;
      struct smb_rename_request rename;
      struct smb_delete_request del;
      struct smb_copy_request copy;
      struct smb_findclose_request findclose;
    } req;
    union
    {
      struct smb_negotiate_response negotiate;
      struct smb_session_setup_response setup;
      struct smb_tree_connect_response connect;
      struct smb_create_file_response create;
      struct smb_read_file_response read;
      struct smb_write_file_response write;
      struct smb_trans_response trans;
      struct smb_copy_response copy;
    } rsp;
  } params;
};

//
// SMB TRANS request and response messages
//

struct smb_fileinfo_request
{
  unsigned short fid;		        // File ID
  unsigned short infolevel;             // Information level
};

struct smb_pathinfo_request
{
  unsigned short infolevel;             // Information level
  unsigned long reserved;
  char filename[MAXPATH];
};

struct smb_set_fileinfo_request
{
  unsigned short fid;		        // File ID
  unsigned short infolevel;             // Information level
  unsigned short reserved;
};

struct smb_set_fileinfo_response
{
  unsigned short reserved;
};

struct smb_fsinfo_request
{
  unsigned short infolevel;             // Information level
};

struct smb_info_standard
{
  unsigned short creation_date;	        // Date when file was created	
  unsigned short creation_time;	        // Time when file was created	
  unsigned short last_access_date;      // Date of last file access	
  unsigned short last_access_time;      // Time of last file access	
  unsigned short last_write_date;       // Date of last write to the file	
  unsigned short last_write_time;	// Time of last write to the file	
  unsigned long data_size;	        // File Size	
  unsigned long allocation_size;        // Size of filesystem allocation unit	
  unsigned short attributes;	        // File Attributes	
  unsigned long ea_size;	        // Size of file's EA information
};

struct smb_info_allocation
{
  unsigned long file_system_id;		// File system identifier.  NT server always returns 0
  unsigned long sector_per_unit;	// Number of sectors per allocation unit
  unsigned long units_total;	        // Total number of allocation units
  unsigned long units_avail;	        // Total number of available allocation units
  unsigned short sectorsize;	        // Number of bytes per sector
};

struct smb_file_basic_info
{
  smb_time creation_time;		// Time when file was created
  smb_time last_access_time;		// Time of last file access
  smb_time last_write_time;		// Time of last write to the file
  smb_time change_time;			// Time when file was last changed
  unsigned long attributes;		// File Attributes
  unsigned long reserved;
};

struct smb_file_standard_info
{
  smb_size allocation_size;		// Allocated size of the file in number of bytes
  smb_size end_of_file;			// Offset to the first free byte in the file
  unsigned long number_of_links;	// Number of hard links to the file
  unsigned char delete_pending;	        // Indicates whether the file is marked for deletion
  unsigned char directory;		// Indicates whether the file is a directory
  unsigned short pad;
};

struct smb_file_all_info
{
  struct smb_file_basic_info basic;
  struct smb_file_standard_info standard;
  __int64 index_number;			// A file system unique identifier
  unsigned long ea_size;		// Size of the file抯 extended attributes in number of bytes
  unsigned long access_flags;	  	// Access that a caller has to the file; Possible values and meanings are specified below
  __int64 current_byte_offset;		// Current byte offset within the file
  unsigned long mode;			// Current Open mode of the file handle to the file
  unsigned long alignment_requirement;	// Buffer Alignment required by device; possible values detailed below
  unsigned long file_name_length;	// Length of the file name in number of bytes
  char filename[256];			// Name of the file
};

struct smb_file_end_of_file_info
{
  smb_size end_of_file;			// Offset to the first free byte in the file
};

struct smb_findfirst_request
{
  unsigned short search_attributes;     // Search attributes	
  unsigned short search_count;	        // Maximum number of entries to return
  unsigned short flags;	                // Additional information:
 					//   Bit 0 - close search after this request
					//   Bit 1 - close search if end of search reached
					//   Bit 2 - return resume keys for each entry found
					//   Bit 3 - continue search from previous ending place
					//   Bit 4 - find with backup intent
  unsigned short infolevel;		// Information level
  unsigned long search_storage_type;	
  char filename[MAXPATH];		// Pattern for the search
};

struct smb_findfirst_response
{
  unsigned short sid;			// Search handle
  unsigned short search_count;		// Number of entries returned
  unsigned short end_of_search;		// Was last entry returned?
  unsigned short ea_error_offset;	// Offset into EA list if EA error
  unsigned short last_name_offset;	// Offset into data to file name of last entry, if server needs it to resume search; else 0
};

struct smb_findnext_request
{
  unsigned short sid;			// Search handle
  unsigned short search_count;		// Maximum number of entries to return
  unsigned short infolevel;		// Levels described in TRANS2_FIND_FIRST2 request
  unsigned long resume_key;		// Value returned by previous find2 call
  unsigned short flags;			// Additional information::
					//   Bit 0 - close search after this request
					//   Bit 1 - close search if end of search reached
					//   Bit 2 - return resume keys for each entry found
					//   Bit 3 - resume/continue from previous ending place
					//   Bit 4 - find with backup intent
  char filename[1];			// Resume file name
};

struct smb_findnext_response
{
  unsigned short search_count;		// Number of entries returned
  unsigned short end_of_search;		// Was last entry returned?
  unsigned short ea_error_offset;	// Offset into EA list if EA error
  unsigned short last_name_offset;	// Offset into data to file name of last entry, if server needs it to resume search; else 0
};

struct smb_file_directory_info
{
  unsigned long next_entry_offset;	// Offset from this structure to beginning of next one
  unsigned long file_index;	
  smb_time creation_time;		// File creation time
  smb_time last_access_time;		// Last access time
  smb_time last_write_time;		// Last write time
  smb_time change_time;			// Last attribute change time
  smb_size end_of_file;			// File size
  smb_size allocation_aize;		// Size of filesystem allocation information 
  unsigned long ext_file_attributes;	// Extended file attributes (see section 3.12)
  unsigned long filename_length;	// Length of filename in bytes
  char filename[0];			// Name of the file
};

struct smb_share;

//
// SMB directory entry
//

struct smb_dentry
{
  char path[MAXPATH];
  struct stat statbuf;
};

//
// SMB file
//

struct smb_file
{
  unsigned short fid;
  unsigned long attrs;
  struct stat statbuf;
};

//
// SMF directory
//

struct smb_directory
{
  unsigned short sid;
  int eos;
  int entries_left;
  struct smb_file_directory_info *fi;
  char path[MAXPATH];
  char buffer[SMB_DIRBUF_SIZE];
};

//
// SMB server
//

struct smb_server
{
  struct ip_addr ipaddr;
  struct socket *sock;
  char username[SMB_NAMELEN];
  char password[SMB_NAMELEN];
  char domain[SMB_NAMELEN];
  unsigned short uid;
  int refcnt;
  struct smb_server *next;
  struct mutex lock;
  struct smb_share *shares;
  int tzofs;
  unsigned long server_caps;
  unsigned long max_buffer_size;
  char buffer[SMB_MAX_BUFFER + 4];
  char auxbuf[SMB_MAX_BUFFER + 4];
};

//
// SMB share
//

struct smb_share
{
  struct smb_server *server;
  struct smb_share *next;
  unsigned short tid;
  char sharename[SMB_NAMELEN];
  time_t mounttime;
  int next_cacheidx;
  struct smb_dentry dircache[SMB_DENTRY_CACHESIZE];
};

// smbutil.c

int recv_fully(struct socket *s, char *buf, int size, int flags);
char *addstr(char *p, char *s);
char *addstrz(char *p, char *s);
time_t ft2time(smb_time filetime);
smb_time time2ft(time_t time);
int smb_convert_filename(char *name);
int smb_errno(struct smb *smb);

// smbcache.c

void smb_add_to_cache(struct smb_share *share, char *path, char *filename, struct stat *statbuf);
struct smb_dentry *smb_find_in_cache(struct smb_share *share, char *path);
void smb_clear_cache(struct smb_share *share);

// smbproto.c

struct smb *smb_init(struct smb_share *share, int aux);

int smb_send(struct smb_share *share, struct smb *smb, unsigned char cmd, int params, char *data, int datasize);
int smb_recv(struct smb_share *share, struct smb *smb);
int smb_request(struct smb_share *share, struct smb *smb, unsigned char cmd, int params, char *data, int datasize, int retry);

int smb_trans(struct smb_share *share,
	      unsigned short cmd, 
	      void *reqparams, int reqparamlen,
	      void *reqdata, int reqdatalen,
	      void *rspparams, int *rspparamlen,
	      void *rspdata, int *rspdatalen);

int smb_connect_tree(struct smb_share *share);
int smb_disconnect_tree(struct smb_share *share);

int smb_connect(struct smb_share *share);
int smb_disconnect(struct smb_share *share);

int smb_get_connection(struct smb_share *share, struct ip_addr *ipaddr, char *domain, char *username, char *password);
int smb_release_connection(struct smb_share *share);

int smb_check_connection(struct smb_share *share);
int smb_reconnect(struct smb_share *share);

#pragma pack(pop)

#endif

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人网在线免费视频| 成人伦理片在线| 国产日韩欧美麻豆| 欧美日韩和欧美的一区二区| 激情五月婷婷综合| 亚洲成人综合视频| 亚洲欧洲日韩一区二区三区| 日韩丝袜美女视频| 欧美在线制服丝袜| jiyouzz国产精品久久| 蜜桃视频免费观看一区| 亚洲精品视频免费观看| 国产亚洲欧美激情| 日韩免费高清视频| 欧美高清激情brazzers| 91色在线porny| 国产91精品一区二区麻豆亚洲| 免费成人在线影院| 午夜天堂影视香蕉久久| 亚洲免费在线观看| 国产精品福利影院| 国产亚洲1区2区3区| 日韩一区二区中文字幕| 在线不卡一区二区| 欧美日韩一卡二卡| 欧美综合天天夜夜久久| 91片黄在线观看| 99热国产精品| aaa国产一区| 成人精品一区二区三区四区 | 国产精品欧美久久久久一区二区| 日韩一区二区视频在线观看| 国产人妖乱国产精品人妖| 欧美成人在线直播| 欧美一级黄色片| 欧美成人伊人久久综合网| 日韩欧美的一区二区| 日韩精品专区在线影院观看 | av不卡在线观看| 成人激情免费电影网址| 成人综合在线视频| 成人黄色综合网站| 成人免费观看av| 色哟哟一区二区| 91精品福利在线| 欧美日韩亚洲不卡| 欧美福利视频导航| 日韩欧美亚洲国产另类| 欧美成人激情免费网| 精品国一区二区三区| 久久久久99精品国产片| 中文字幕第一区综合| 中文字幕日韩一区| 亚洲自拍另类综合| 图片区小说区区亚洲影院| 日韩精品一级二级| 精彩视频一区二区| 风间由美一区二区三区在线观看 | 久久综合九色综合久久久精品综合| 91精品国产麻豆| 精品美女一区二区| 国产精品免费aⅴ片在线观看| 中文字幕一区二区三区在线播放| 亚洲精选在线视频| 天天操天天色综合| 精品中文av资源站在线观看| 国产成人激情av| 日本高清不卡aⅴ免费网站| 欧美日韩dvd在线观看| 欧美xxxx老人做受| 中文字幕一区二区三区四区不卡| 亚洲影视在线播放| 精品一区二区三区不卡| 波多野洁衣一区| 91精品国产黑色紧身裤美女| 国产日韩欧美精品在线| 亚洲综合999| 韩日欧美一区二区三区| 色综合久久中文字幕综合网| 56国语精品自产拍在线观看| 欧美国产一区二区在线观看| 亚洲五月六月丁香激情| 国产精品一二二区| 欧美在线视频你懂得| 日韩影视精彩在线| 成人听书哪个软件好| 欧美另类一区二区三区| 国产精品美女久久久久久久网站| 亚洲综合一二三区| 国产成人av在线影院| 欧美日韩电影在线播放| 国产精品少妇自拍| 美日韩一区二区三区| 色欧美乱欧美15图片| 久久先锋影音av鲁色资源网| 亚洲一区二区三区在线看| 国产高清不卡一区| 日韩一区二区在线观看视频 | www.av精品| 欧美大白屁股肥臀xxxxxx| 一区二区三区在线视频观看58| 另类成人小视频在线| 欧美午夜精品久久久| 中文字幕不卡三区| 激情欧美一区二区三区在线观看| 在线看国产一区| 日韩一区有码在线| 国产河南妇女毛片精品久久久 | 欧美色偷偷大香| 国产精品久久久久久久久免费桃花 | 精品一区二区在线免费观看| 欧美手机在线视频| 亚洲欧美日韩久久| 成人午夜电影网站| 国产欧美精品日韩区二区麻豆天美| 日韩av电影天堂| 欧美日韩美少妇| 一区二区欧美国产| 精品日韩在线观看| 日韩精品每日更新| 欧美日韩国产在线观看| 一区二区三区在线观看视频| 成人精品免费网站| 欧美国产日韩一二三区| 国产精品资源网站| 2017欧美狠狠色| 韩国视频一区二区| 欧美成人r级一区二区三区| 青青草视频一区| 日韩一区二区三区四区| 日本视频一区二区| 日韩午夜激情电影| 蜜桃av一区二区三区| 日韩美一区二区三区| 蜜臀av一区二区在线免费观看| 91精品国产欧美一区二区成人| 天天综合天天综合色| 精品视频在线免费看| 婷婷开心激情综合| 91精品一区二区三区久久久久久| 日本欧美在线观看| 日韩三区在线观看| 激情综合网最新| 国产日韩欧美a| 99热国产精品| 亚洲在线一区二区三区| 欧美区视频在线观看| 日本不卡123| 久久中文字幕电影| 国产成人精品亚洲777人妖 | 欧美一区二区成人| 精品影院一区二区久久久| 久久久久国产精品免费免费搜索| 国产精品一区在线观看乱码 | 欧美日韩在线一区二区| 首页国产欧美久久| 精品美女在线观看| 成人免费视频视频在线观看免费| 日韩美女视频一区二区| 91久久精品一区二区| 日韩成人免费电影| 久久久久久久综合| 一本色道久久综合亚洲aⅴ蜜桃| 亚洲午夜免费视频| 日韩精品一区二区三区在线| 国产大陆a不卡| 一区二区三区蜜桃| 精品久久久久久久久久久久久久久久久| 国产一区二区三区在线观看免费视频 | 一区二区高清在线| 日韩欧美自拍偷拍| 成人av电影在线| 亚洲成人免费在线观看| 2021久久国产精品不只是精品| 99精品欧美一区二区三区综合在线| 亚洲欧美国产高清| 日韩一区二区在线观看视频播放| 国产在线视频一区二区| 亚洲精品亚洲人成人网| 亚洲精品一线二线三线| 色婷婷综合在线| 国产综合色精品一区二区三区| 亚洲色图制服丝袜| 精品福利一二区| 欧美中文字幕一区二区三区亚洲| 久久99精品久久久久久| 亚洲另类色综合网站| 久久综合精品国产一区二区三区 | 欧美高清精品3d| 丁香婷婷综合色啪| 免费精品视频在线| 亚洲女同ⅹxx女同tv| 久久久久久久网| 欧美疯狂性受xxxxx喷水图片| eeuss鲁一区二区三区| 老司机一区二区| 亚州成人在线电影| 亚洲视频在线观看一区| 久久久综合精品| 欧美一区二区在线看|