From: "Tom Demmer" Organization: Lehrstuhl Stroemungsmechanik, RUB To: djgpp-workers AT delorie DOT com Date: Wed, 26 Jun 1996 15:34:20 GMT-1 Subject: diffs for fcntl filesys extensions Reply-to: Demmer AT LStM DOT Ruhr-Uni-Bochum DOT De Message-ID: This are not yet the changes for open()/_open, they will follow soon (I hope so...) ------- Forwarded Message Follows ------- Date sent: Thu, 27 Jun 1996 00:16:28 +1200 From: Bill Currie To: djgpp-workers AT delorie DOT com Copies to: demmer AT LSTM DOT Ruhr-UNI-Bochum DOT De Subject: diffs for fcntl filesys extensions These are the diffs (-c, two files) for adding fyle system extensions to fcntl(). The only testing I've done is compilabiltiy (-Wall) as I have no application for FS extensions right now (and so far, I have never used fcntl). Bill PS, after having another look at the sources, it's alot simpler than I thought (I did't notice the '&' in the call to func(__FSEXT_fcntl, &rv, &handle) in the functions I looked at (_read and _write I think)). Nicely implemented and easy to use. -------------------------------- cut -fsext.h.diff----------------- *** old\fsext.h Sat Nov 25 23:39:06 1995 --- fsext.h Thu Jun 27 00:01:00 1996 *************** *** 22,27 **** --- 22,28 ---- __FSEXT_write, __FSEXT_ready, __FSEXT_close, + __FSEXT_fcntl, } __FSEXT_Fnumber; /* _ready gets passed a fd and should return a mask of these, -------------------------------- cut -fcntl.c.diff----------------- *** old\fcntl.c Sun Apr 2 03:57:20 1995 --- fcntl.c Thu Jun 27 00:04:48 1996 *************** *** 2,11 **** --- 2,21 ---- #include #include #include + #include int fcntl(int fd, int cmd, ...) { + + __FSEXT_Function *func = __FSEXT_get_function(fd); + if (func) + { + int rv; + if (func(__FSEXT_fcntl, &rv, &fd)) + return rv; + } + switch (cmd) { case F_DUPFD: -------------------------------------- Ciao Tom ****************************************************************** * Thomas Demmer * Phone : +49 234 700 6434 * * Universitaetsstr. 150 * or you try * * Lehrstuhl fuer Stroemungsmechanik * +49 234 700 2896 * * D-44780 Bochum * and MIGHT get someone who * * * knows where I am * * Demmer AT LStM DOT Ruhr-Uni-Bochum DOT De * Fax : +49 234 709-4162 * * http://www.lstm.ruhr-uni-bochum.de/~demmer * ****************************************************************** Who needs BRAINS when you have software? -- Marvin