Class TWWWForm (unit WWW)

Inherits from

TForm

Constructors



Functions

procedure DisconButClick(Sender: TObject);


procedure FormCreate(Sender: TObject);


procedure FormDeactivate(Sender: TObject);


procedure FormDestroy(Sender: TObject);

Application.

procedure FormShow(Sender: TObject);

For security reasons, I am turning this off Don't want them to be able to get just any file they want Result := SendFile(fn, '');

procedure ListenButClick(Sender: TObject);

Shutdown WinSock

procedure MinimizeButClick(Sender: TObject);


procedure ServerSocket1ClientConnect(Sender: TObject; Socket: TCustomWinSocket);


procedure ServerSocket1ClientDisconnect(Sender: TObject; Socket: TCustomWinSocket);

Stat := Format('%-20s %-20s %-20s Port %d', ['Client Hit', Socket.

procedure ServerSocket1ClientError(Sender: TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer);


procedure ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket);


procedure ServerSocket1Listen(Sender: TObject; Socket: TCustomWinSocket);


procedure Shutdown1Click(Sender: TObject);


procedure WWWServer1Click(Sender: TObject);


procedure CheckButtons;


function Is_Valid_HTTP_Request(const Request: string): boolean;

+4 is to skip over CR+CR

procedure Parse_HTTP_Request(const Request: string; var FileName, Hdrs, Data: string);

Request should end with a CR

function Process_HTTP_Request(const FileName, Hdrs, Data: string): string;

'Expires: ' + FormatDateTime('ddd, dd mmm yyyy hh:nn:ss EST', Now + TENMINUTES) + CR +

function RunScript(const FileName, Hdrs, Data: string): string;

************************************************************************ RunScript

procedure SetStat(const s: string);


procedure UpdateIconMsg(var Msg: TMessage);


procedure UpdateIcons(Hit: boolean);

This is here for debugging only - set a breakpoint on the line below

Properties

property Stat : string


Events

Variables

AddrLab : TLabel;


DisconBut : TButton;


FormSettings1 : TFormSettings;


Label1 : TLabel;


Label2 : TLabel;


Label3 : TLabel;


ListBox1 : TListBox;


ListenBut : TButton;


MinimizeBut : TButton;


N1 : TMenuItem;


NameLab : TLabel;


PortLab : TLabel;


ServerSocket1 : TServerSocket;


Shutdown1 : TMenuItem;


TopPanel : TPanel;


TrayIcon1 : TTrayIcon;


WWWHitImage : TImage;


WWWImage : TImage;


WWWMenu : TPopupMenu;


WWWServer1 : TMenuItem;


SesMgr : TWABD_SessionMgr;


DataList : TStringList;


SockList : TList;



Constructors


Functions


procedure DisconButClick(Sender: TObject);


procedure FormCreate(Sender: TObject);


procedure FormDeactivate(Sender: TObject);


procedure FormDestroy(Sender: TObject);

Application.Terminate;


procedure FormShow(Sender: TObject);

For security reasons, I am turning this off Don't want them to be able to get just any file they want Result := SendFile(fn, '');


procedure ListenButClick(Sender: TObject);

Shutdown WinSock


procedure MinimizeButClick(Sender: TObject);


procedure ServerSocket1ClientConnect(Sender: TObject; Socket: TCustomWinSocket);


procedure ServerSocket1ClientDisconnect(Sender: TObject; Socket: TCustomWinSocket);

Stat := Format('%-20s %-20s %-20s Port %d', ['Client Hit', Socket.RemoteHost, '(' + Socket.RemoteAddress + ')', Socket.RemotePort]);


procedure ServerSocket1ClientError(Sender: TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer);


procedure ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket);


procedure ServerSocket1Listen(Sender: TObject; Socket: TCustomWinSocket);


procedure Shutdown1Click(Sender: TObject);


procedure WWWServer1Click(Sender: TObject);


procedure CheckButtons;


function Is_Valid_HTTP_Request(const Request: string): boolean;

+4 is to skip over CR+CR


procedure Parse_HTTP_Request(const Request: string; var FileName, Hdrs, Data: string);

Request should end with a CR


function Process_HTTP_Request(const FileName, Hdrs, Data: string): string;

'Expires: ' + FormatDateTime('ddd, dd mmm yyyy hh:nn:ss EST', Now + TENMINUTES) + CR +


function RunScript(const FileName, Hdrs, Data: string): string;

************************************************************************ RunScript


procedure SetStat(const s: string);


procedure UpdateIconMsg(var Msg: TMessage);


procedure UpdateIcons(Hit: boolean);

This is here for debugging only - set a breakpoint on the line below


Properties


property Stat : string


Events


Variables


AddrLab : TLabel;


DisconBut : TButton;


FormSettings1 : TFormSettings;


Label1 : TLabel;


Label2 : TLabel;


Label3 : TLabel;


ListBox1 : TListBox;


ListenBut : TButton;


MinimizeBut : TButton;


N1 : TMenuItem;


NameLab : TLabel;


PortLab : TLabel;


ServerSocket1 : TServerSocket;


Shutdown1 : TMenuItem;


TopPanel : TPanel;


TrayIcon1 : TTrayIcon;


WWWHitImage : TImage;


WWWImage : TImage;


WWWMenu : TPopupMenu;


WWWServer1 : TMenuItem;


SesMgr : TWABD_SessionMgr;


DataList : TStringList;


SockList : TList;