/* * Copyright © 2001 Novell, Inc. All Rights Reserved. * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. * */ /* * FILENAME : NWPipe.h * DESCRIPTION : Functions to implement pipes on NetWare. * Author : HYAK * Date : January 2001. * */ #ifndef __NWPipe_H__ #define __NWPipe_H__ #include "stdio.h" #include "nwutil.h" #define MAX_PIPE_RECURSION 256 typedef struct tagTempPipeFile { BOOL m_mode; // FALSE - Read mode ; TRUE - Write mode BOOL m_launchPerl; BOOL m_doPerlGlob; int m_argv_len; char * m_fileName; char** m_argv; char * m_redirect; #ifdef MPK_ON SEMAPHORE m_perlSynchSemaphore; #else long m_perlSynchSemaphore; #endif FILE* m_file; PCOMMANDLINEPARSER m_pipeCommand; } TEMPPIPEFILE, *PTEMPPIPEFILE; void fnPipeFileClose(PTEMPPIPEFILE ptpf); void fnPipeFileDoPerlLaunch(PTEMPPIPEFILE ptpf); BOOL fnPipeFileMakeArgv(PTEMPPIPEFILE ptpf); FILE* fnPipeFileOpen(PTEMPPIPEFILE ptpf, char* command, char* mode); void fnTempPipeFileReleaseMemory(PTEMPPIPEFILE ptpf); #endif // __NWPipe_H__