CFtpd.h
上传用户:shengde
上传日期:2007-02-26
资源大小:117k
文件大小:2k
源码类别:

Ftp服务器

开发平台:

Visual C++

  1. #if !defined(AFX_FTPDSOCK_H__4DAE8981_ED5A_11D3_AAE1_0080C87BF896__INCLUDED_)
  2. #define AFX_FTPDSOCK_H__4DAE8981_ED5A_11D3_AAE1_0080C87BF896__INCLUDED_
  3. #if _MSC_VER > 1000
  4. #pragma once
  5. #endif // _MSC_VER > 1000
  6. #include <afxtempl.h>
  7. #include "FtpdPi.h"
  8. bool GetItemFromCString(int index,CString* CSTARGET,CString* CSITEM,char sep);
  9. bool FileExists(char *fname);
  10. void FileToCsl(char* finame,CStringList* CSL);
  11. class CFtpd : public CSocket
  12. {
  13. // Attributes
  14. public:
  15. // Operations
  16. public:
  17. CFtpd();
  18. virtual ~CFtpd();
  19. // Overrides
  20. public:
  21. char userfile[256];
  22. char ipfile[256];
  23. int m_buf_length;
  24. CCriticalSection absCrit;
  25. bool m_specify_data_port;
  26. UINT m_port_from;
  27. UINT m_port_to;
  28. void RemoveClient(CFtpdPi *pBind);
  29. void AddClient(CFtpdPi* pBind);
  30. UINT m_port;
  31. DWORD* lpDW2;
  32. DWORD* lpDW;
  33. LPHOSTENT lpHostEnt;
  34. char HostName[100];
  35. unsigned long IP;
  36. char sTmp[32];
  37. int i;
  38. CString Citem;
  39. int result;
  40. // SECFileSystem fs;
  41. char buf[256];
  42. char tmp[32];
  43. BOOL allow;
  44. POSITION pos;
  45. CString CSIP;
  46. int sl;
  47. // int m_kbs;
  48. bool b_speed_limit_in;
  49. bool b_speed_limit_out;
  50. int default_speed_in;
  51. int default_speed_out;
  52. char m_root_dir[256];
  53. bool b_auto_choose_ip;
  54. bool b_switch_pasv_ip;
  55. bool b_ipchk_pasv;
  56. bool b_ipchk;
  57. CString m_servername;
  58. DWORD dwNumIf;
  59. DWORD GetLocalNumericIP(int Index);
  60. CStringList ipList;
  61. CFtpdPi* ftpdbindsock;
  62. CList<CFtpdPi*,CFtpdPi*> ClientList;
  63. // ClassWizard generated virtual function overrides
  64. //{{AFX_VIRTUAL(CFtpd)
  65. public:
  66. virtual void OnAccept(int nErrorCode);
  67. virtual void OnClose(int nErrorCode);
  68. //}}AFX_VIRTUAL
  69. // Generated message map functions
  70. //{{AFX_MSG(CFtpd)
  71. // NOTE - the ClassWizard will add and remove member functions here.
  72. //}}AFX_MSG
  73. // Implementation
  74. protected:
  75. };
  76. /////////////////////////////////////////////////////////////////////////////
  77. //{{AFX_INSERT_LOCATION}}
  78. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  79. #endif // !defined(AFX_FTPDSOCK_H__4DAE8981_ED5A_11D3_AAE1_0080C87BF896__INCLUDED_)