/**************************************************************************** * htmlfilter.h * * * * LocalGate Local Filesystem -> WWW Gateway * * * * LocalGate allows a user to access HTML files on the local filesystem * * as if they had a web server to access the files. * * * * htmlfilter.h: header file for html filter for LocalGate. * * * * Copyright (C) 1997 Michael Chu * * This file is part of the LocalGate local filesystem -> WWW gateway. * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the Free Software * * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * * * Contact information: Michael Chu * * mmchu@pobox.com * ****************************************************************************/ #ifndef _HTMLFILTER_H_ #define _HTMLFILTER_H_ /********************************** DEFINITIONS *****************************/ /* redefines YY_INPUT to read from socket. */ #undef YY_INPUT #define YY_INPUT(buffer, numBytesRead, maxSize) \ /* try to read 1 (one) byte from the file. */ \ numBytesRead = readFromFile(filterFileId, buffer, 1) /* redefines unput to move file position back one. */ #undef unput #define unput(oldChar) \ /* if file position is not already at beginning of file, decrement it. */ \ if (filterFilePos > 0) { \ /* decrement file position. */ \ filterFilePos--; \ } /********************************** PROTOTYPES ******************************/ extern int isHTMLFileName(char *fileName); extern int filterHTMLFileToSocket(int fileId, int socketId); #endif /* _HTMLFILTER_H_ */