X-Git-Url: https://gapil.gnulinux.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=sources%2FGapil.h;h=a8e786f49a37448cf9fa72fd79be8d41dad2dfbf;hb=59b107d5207f19e0049bbd1032e10cba660da92e;hp=00dc3a67f6d62523b23351ca27e6eba807cc82c5;hpb=6483a787322c614bc6282a0bf0ee001f1bf54b44;p=gapil.git diff --git a/sources/Gapil.h b/sources/Gapil.h index 00dc3a6..a8e786f 100644 --- a/sources/Gapil.h +++ b/sources/Gapil.h @@ -1,3 +1,21 @@ +/* Gapil.h + * + * Copyright (C) 2002 Simone Piccardi + * + * 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. + */ /***************************************************************************** * * File Gapil.h: @@ -5,7 +23,7 @@ * * Author: S. Piccardi * - * $Id: Gapil.h,v 1.1 2002/12/03 11:06:05 piccardi Exp $ + * $Id: Gapil.h,v 1.5 2003/01/07 23:00:34 piccardi Exp $ * *****************************************************************************/ #include /* IPC semaphore declarations */ @@ -15,6 +33,7 @@ #include /* unix standard functions */ #include /* file control (lock) functions */ #include /* signal handling declarations */ +#include /* directory scan functions */ /* * Definition of semun struct; used to implement a MutexXXXX API To * create a Mutex use an underlaying semaphore and init it; we put @@ -45,10 +64,26 @@ inline int MutexRead(int sem_id); inline int MutexLock(int sem_id); /* Function MutexUnlock: to unlock a mutex/semaphore. See Mutex.c */ inline int MutexUnlock(int sem_id); - -/* Function LockFile: create a lock file. See FileLock.c*/ +/* Function MutexRemove: remove the mutex/semphore. See Mutex.c */ +inline int MutexRemove(int sem_id); +/* Function CreateMutex: create a mutex (using file locking). See Mutex.c */ +inline int CreateMutex(const char *path_name); +/* Function UnlockMutex: find a mutex (using file locking). See Mutex.c */ +inline int FindMutex(const char *path_name); +/* Function LockMutex: acquire a mutex (using file locking). See Mutex.c */ +inline int LockMutex(int fd); +/* Function UnlockMutex: release a mutex (using file locking). See Mutex.c */ +inline int UnlockMutex(int fd); +/* Function ReadMutex: read a mutex (using file locking). See Mutex.c */ +inline int ReadMutex(int fd); +/* Function RemoveMutex: remove a mutex (using file locking). See Mutex.c */ +inline int RemoveMutex(const char *path_name); +/* + * Lock files function: to create and destroy lock files + */ +/* Function LockFile: create a lock file. See FileLock.c */ inline int LockFile(const char* path_name); -/* Function UnLockFile: remove a lock file. See FileLock.c*/ +/* Function UnlockFile: remove a lock file. See FileLock.c */ inline int UnlockFile(const char* path_name); /* * Signal Handling Functions @@ -65,3 +100,8 @@ void HandSigCHLD(int sig); ssize_t SockRead(int fd, void *buf, size_t count); /* Function SockWrite: to read from a socket. See SockWrite.c */ ssize_t SockWrite(int fd, const void *buf, size_t count); +/* + * File miscellaneous + */ +/* Function DirScan: simple scan for a directory */ +int DirScan(char * dirname, int(*compute)(struct dirent *));