* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
@ 2004-11-08 12:20 ` Marco d'Itri
2004-11-08 14:36 ` Adam J. Richter
` (8 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Marco d'Itri @ 2004-11-08 12:20 UTC (permalink / raw)
To: linux-hotplug
On Nov 09, "Adam J. Richter" <adam@yggdrasil.com> wrote:
> So, if there is not standard utility for shell scripts to
> do flock, here is a simple utility that allows one to do
> "flock [--shared | --non-blocking] cmd arg arg...". I would like to get
> it into util-linux. I would be happy to write a manual page
> for it.
Maybe a timeout would be useful. I suggest you look at the interface of
the lockfile program from the debian liblockfile package:
http://ftp.us.debian.org/debian/pool/main/libl/liblockfile/
--
ciao, |
Marco | [9058 trVqgkARltkxo]
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88&alloc_id\x12065&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
2004-11-08 12:20 ` Marco d'Itri
@ 2004-11-08 14:36 ` Adam J. Richter
2004-11-08 14:48 ` Adam J. Richter
` (7 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Adam J. Richter @ 2004-11-08 14:36 UTC (permalink / raw)
To: linux-hotplug
On Mon, 8 Nov 2004 13:20:57 +0100, Marco <md@Linux.IT> wrote:
>On Nov 09, "Adam J. Richter" <adam@yggdrasil.com> wrote:
>> So, if there is not standard utility for shell scripts to
>> do flock, here is a simple utility that allows one to do
>> "flock [--shared | --non-blocking] cmd arg arg...". I would like to get
>> it into util-linux. I would be happy to write a manual page
>> for it.
>Maybe a timeout would be useful. I suggest you look at the interface of
>the lockfile program from the debian liblockfile package:
>http://ftp.us.debian.org/debian/pool/main/libl/liblockfile/
Thank you for the pointer. liblockfile looks quite
different. As the documentation for liblockfile says, "these
functions do not lock a file - they generate a lock-file."
flock is basically for the local host, where you want
the lock to be released automatically when the process exits.
If an flock is blocking, some other process that still exists
has an flock on it. So, the utility of a timeout feature
is a little less compelling (process can die and leave dot
lock files in place, but they cannot directly die and leave an
flock in place, it would have to hang instead or there would
have to be goof where a process holding the flock was left
hanging).
I think adding a timeout is a good idea though, since
you want to timeout the flock, but not timeout the program
being run once the flock is successfully taken, which is
a harder thing to arrange from outside of the flock
program itself.
If nobody complains about the bloat or wants it done
another way, I guess I'll add --timeout=seconds tomorrow
(I can't really get to it right now).
Thanks for the feedback.
__ ______________
Adam J. Richter \ /
adam@yggdrasil.com | g g d r a s i l
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88&alloc_id\x12065&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
2004-11-08 12:20 ` Marco d'Itri
2004-11-08 14:36 ` Adam J. Richter
@ 2004-11-08 14:48 ` Adam J. Richter
2004-11-15 17:21 ` Andries Brouwer
` (6 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Adam J. Richter @ 2004-11-08 14:48 UTC (permalink / raw)
To: linux-hotplug
I wrote:
> If nobody complains about the bloat or wants it done
>another way, I guess I'll add --timeout=seconds tomorrow
>(I can't really get to it right now).
Actually, I was able to do it now. Here is an updated version.
__ ______________
Adam J. Richter \ /
adam@yggdrasil.com | g g d r a s i l
/*
flock - acquires a file lock and executes a command with the lock held.
Usage: flock {--shared | --non-blocking} lockfile {program and args...}
Written by Adam J. Richter
Copyright (C) 2004 Yggdrasil Computing, Inc.
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <sys/file.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <getopt.h>
#include <unistd.h>
#include <stdlib.h> /* exit */
#include <stdio.h>
static int non_blocking;
static int shared = LOCK_EX;
static const struct option options[] = {
{"non-blocking",no_argument, &non_blocking, LOCK_NB },
{"shared", no_argument, &shared, LOCK_SH },
{"timeout", required_argument, NULL, 't' },
{NULL, 0, NULL, 0 },
};
int main(int argc, char **argv)
{
int fd;
int opt;
int pid;
int child_status;
int option_index;
do {
opt = getopt_long(argc, argv, "+", options, &option_index);
switch(opt) {
case '?':
fprintf (stderr, "AJR unknown option, aborting.\n");
exit(1);
break;
case 't':
alarm(atoi(optarg));
break;
default:
break;
}
} while (opt != -1);
argc -= optind;
argv += optind;
if (argc < 2) {
fprintf(stderr,
"Usage flock [--non-blocking | --shared] filename command {arg arg...}\n");
exit(2);
}
fd = open(argv[0], O_RDONLY);
if (fd < 0) {
perror(argv[1]);
exit(3);
}
if (flock(fd, shared | non_blocking) != 0) {
perror("flock");
exit(4);
}
alarm(0);
pid = vfork();
if (pid < 0) {
perror("vfork");
exit(5);
}
if (pid = 0) {
execvp(argv[1], argv+1);
perror(argv[1]);
exit(6);
}
waitpid(pid, &child_status, 0);
/* flock(fd, LOCK_UN); */
/* No need to explicitly release the flock, since we are just
going to exit now anyhow. */
/* Lame attempt to simulate child's mode of death. */
if (WIFSIGNALED(child_status))
kill(0, WTERMSIG(child_status));
return WEXITSTATUS(child_status);
}
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88&alloc_id\x12065&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
` (2 preceding siblings ...)
2004-11-08 14:48 ` Adam J. Richter
@ 2004-11-15 17:21 ` Andries Brouwer
2004-11-16 3:32 ` Adam J. Richter
` (5 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Andries Brouwer @ 2004-11-15 17:21 UTC (permalink / raw)
To: linux-hotplug
On Mon, Nov 08, 2004 at 07:22:55PM -0800, Adam J. Richter wrote:
> So, if there is not standard utility for shell scripts to
> do flock, here is a simple utility that allows one to do
> "flock [--shared | --non-blocking] cmd arg arg...". I would like to get
> it into util-linux. I would be happy to write a manual page
> for it.
A page is welcome. First bug:
fd = open(argv[0], O_RDONLY);
if (fd < 0) {
perror(argv[1]);
exit(3);
}
is good for confusing error messages.
Andries
aeb@cwi.nl
-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
` (3 preceding siblings ...)
2004-11-15 17:21 ` Andries Brouwer
@ 2004-11-16 3:32 ` Adam J. Richter
2004-11-16 7:34 ` Adam J. Richter
` (4 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Adam J. Richter @ 2004-11-16 3:32 UTC (permalink / raw)
To: linux-hotplug
On Mon, 15 Nov 2004 18:21:23 +0100, Andries Brouwer wrote:
>A page is welcome. First bug:
Thank you. Actually, Thomas Hood beat you to finding that
bug and also an "AJR" that I forgot to remove from one of the
other error messages. Here is the updated version that I previously
sent to Thomas.
I will try to write and submit a manual page in the next
24 hours.
__ ______________
Adam J. Richter \ /
adam@yggdrasil.com | g g d r a s i l
/*
flock - acquires a file lock and executes a command with the lock held.
Usage: flock {--shared | --non-blocking} lockfile {program and args...}
Written by Adam J. Richter
Copyright (C) 2004 Yggdrasil Computing, Inc.
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <sys/file.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <getopt.h>
#include <unistd.h>
#include <stdlib.h> /* exit */
#include <stdio.h>
static int non_blocking;
static int shared = LOCK_EX;
static const struct option options[] = {
{"non-blocking",no_argument, &non_blocking, LOCK_NB },
{"shared", no_argument, &shared, LOCK_SH },
{"timeout", required_argument, NULL, 't' },
{NULL, 0, NULL, 0 },
};
int main(int argc, char **argv)
{
int fd;
int opt;
int pid;
int child_status;
int option_index;
do {
opt = getopt_long(argc, argv, "+", options, &option_index);
switch(opt) {
case '?':
fprintf (stderr, "Unknown option, aborting.\n");
exit(1);
break;
case 't':
alarm(atoi(optarg));
break;
default:
break;
}
} while (opt != -1);
argc -= optind;
argv += optind;
if (argc < 2) {
fprintf(stderr,
"Usage flock [--non-blocking | --shared] filename command {arg arg...}\n");
exit(2);
}
fd = open(argv[0], O_RDONLY);
if (fd < 0) {
perror(argv[0]);
exit(3);
}
if (flock(fd, shared | non_blocking) != 0) {
perror("flock");
exit(4);
}
alarm(0);
pid = vfork();
if (pid < 0) {
perror("vfork");
exit(5);
}
if (pid = 0) {
execvp(argv[1], argv+1);
perror(argv[1]);
exit(6);
}
waitpid(pid, &child_status, 0);
/* flock(fd, LOCK_UN); */
/* No need to explicitly release the flock, since we are just
going to exit now anyhow. */
/* Lame attempt to simulate child's mode of death. */
if (WIFSIGNALED(child_status))
kill(0, WTERMSIG(child_status));
return WEXITSTATUS(child_status);
}
-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
` (4 preceding siblings ...)
2004-11-16 3:32 ` Adam J. Richter
@ 2004-11-16 7:34 ` Adam J. Richter
2004-11-16 7:38 ` Adam J. Richter
` (3 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Adam J. Richter @ 2004-11-16 7:34 UTC (permalink / raw)
To: linux-hotplug
This version of the flock command replaces the "--non-blocking"
option with "--timeout=0". To get non-blocking behavior, just do not
specify a "--timeout=nnn" option at all.
This change should make it easier for programs to pass
--timeout=n in cases where n is the result of a calculation that might
really want zero seconds. It also eliminates unnecessary negation in
the argument terminology (_non_-blocking), which might be slightly
easier on people who do not speak Germanic or Romance languages.
The manual page will follow in a separate message in a few
seconds.
__ ______________
Adam J. Richter \ /
adam@yggdrasil.com | g g d r a s i l
/*
flock - acquires a file lock and executes a command with the lock held.
Usage: flock [ --shared | --timeout=seconds ] lockfile command...
Written by Adam J. Richter
Copyright (C) 2004 Yggdrasil Computing, Inc.
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <sys/file.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <getopt.h>
#include <unistd.h>
#include <stdlib.h> /* exit */
#include <stdio.h>
static int non_blocking; /* = 0 */
static int shared = LOCK_EX;
static const struct option options[] = {
{"shared", no_argument, &shared, LOCK_SH },
{"timeout", required_argument, NULL, 't' },
{NULL, 0, NULL, 0 },
};
int main(int argc, char **argv)
{
int fd;
int opt;
int pid;
int child_status;
int option_index;
int timeout = 0;
do {
opt = getopt_long(argc, argv, "+", options, &option_index);
switch(opt) {
case '?':
fprintf (stderr, "Unknown option, aborting.\n");
exit(1);
break;
case 't':
timeout = atoi(optarg);
if (timeout = 0)
non_blocking |= LOCK_NB;
break;
default:
break;
}
} while (opt != -1);
argc -= optind;
argv += optind;
if (argc < 2) {
fprintf(stderr,
"Usage flock [ --shared | --timeout=seconds ] filename command {arg arg...}\n");
exit(2);
}
fd = open(argv[0], O_RDONLY);
if (fd < 0) {
perror(argv[0]);
exit(3);
}
alarm(timeout);
if (flock(fd, shared | non_blocking) != 0) {
perror("flock");
exit(4);
}
alarm(0);
pid = vfork();
if (pid < 0) {
perror("vfork");
exit(5);
}
if (pid = 0) {
execvp(argv[1], argv+1);
perror(argv[1]);
exit(6);
}
waitpid(pid, &child_status, 0);
/* flock(fd, LOCK_UN); */
/* No need to explicitly release the flock, since we are just
going to exit now anyhow. */
/* Lame attempt to simulate child's mode of death. */
if (WIFSIGNALED(child_status))
kill(0, WTERMSIG(child_status));
return WEXITSTATUS(child_status);
}
-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
` (5 preceding siblings ...)
2004-11-16 7:34 ` Adam J. Richter
@ 2004-11-16 7:38 ` Adam J. Richter
2004-11-16 15:24 ` Andries Brouwer
` (2 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: Adam J. Richter @ 2004-11-16 7:38 UTC (permalink / raw)
To: linux-hotplug
Here is an initial proposed flock(1) manual page. Proposed
edits are welcome.
__ ______________
Adam J. Richter \ /
adam@yggdrasil.com | g g d r a s i l
.TH FLOCK "1" "November 2004" "flock (util-linux)" "User Commands"
.SH NAME
flock \- acquire a file lock and then execute a command with the lock held
.SH SYNOPSIS
.B flock
[ \fB\-\-shared\fR | \fB \-\-timeout=\fR\fIseconds\fR ] lockfile command...
.SH DESCRIPTION
.\" Add any additional description here
.PP
Acquire a file lock using the flock(2) system call and then execute
the given command with the lock held. Depending on the options given,
the lock can be either exclusive or shared, and the behavior in the
event of lock contention can be specified as either waiting
indefinitely for the lock to become available (the default), or
failing if the lock does not become available after a specific time,
which can be specified as zero to make the command not wait at all.
.PP
.TP
\fB\-\-shared\fR
Acquire a shared lock. Acquiring a shared lock does
not stop others from acquiring a shared lock, but it will stop others
from acquiring an exclusive lock. Conversely, acquiring an exclusive
lock (the default) stops both exclusive and shared attempts to acquire
the lock. Typically, a shared lock is used if a command is just going
to read the locked data, and an exclusive lock is used if the command
might write to it.
.TP
\fB\-\-timeout=n\fR
Abort if the lock cannot be acquired before \fIn\fR seconds.
For a completely non-blocking attempt to acquire a lock, specify
\fB\-\-timeout=0\fR.
The timer applies only to the attempt to acquire the lock. As soon
as the lock is acquired, the timeout is cancelled. The command to
be run is not subject to the timeout.
.PP
.SH "EXAMPLES (invoking some imaginary programs)"
.hl
.PP
flock /etc/passwd read-and-write-to-passwd
.PP
flock \-\-shared /etc/passwd just-read-something-from-passwd
.PP
flock \-\-timeout=0 /sys /usr/local/bin/update-hotplug /sys
.SH AUTHOR
Written by Adam J. Richter
.SH "REPORTING BUGS"
Report bugs to <util-linux@math.uio.no>.
.SH COPYRIGHT
Copyright \(co 2004 Yggdrasil Computing, Inc.
.br
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
` (6 preceding siblings ...)
2004-11-16 7:38 ` Adam J. Richter
@ 2004-11-16 15:24 ` Andries Brouwer
2004-11-16 15:32 ` Andries Brouwer
2004-11-16 15:33 ` Andries Brouwer
9 siblings, 0 replies; 11+ messages in thread
From: Andries Brouwer @ 2004-11-16 15:24 UTC (permalink / raw)
To: linux-hotplug
On Mon, Nov 15, 2004 at 07:32:29PM -0800, Adam J. Richter wrote:
> On Mon, 15 Nov 2004 18:21:23 +0100, Andries Brouwer wrote:
> >A page is welcome. First bug:
>
> Thank you. Actually, Thomas Hood beat you to finding that
> bug and also an "AJR" that I forgot to remove from one of the
> other error messages. Here is the updated version that I previously
> sent to Thomas.
Yes, thank. I had made these changes. Also
> setlocale(LC_ALL, "");
> bindtextdomain(PACKAGE, LOCALEDIR);
> textdomain(PACKAGE);
and similar.
Andries
-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
` (7 preceding siblings ...)
2004-11-16 15:24 ` Andries Brouwer
@ 2004-11-16 15:32 ` Andries Brouwer
2004-11-16 15:33 ` Andries Brouwer
9 siblings, 0 replies; 11+ messages in thread
From: Andries Brouwer @ 2004-11-16 15:32 UTC (permalink / raw)
To: linux-hotplug
On Mon, Nov 15, 2004 at 11:34:24PM -0800, Adam J. Richter wrote:
> This version of the flock command replaces the "--non-blocking"
> option with "--timeout=0". To get non-blocking behavior, just do not
> specify a "--timeout=nnn" option at all.
OK - applied.
-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [util-linux] flock utility program?
2004-11-08 12:11 [util-linux] flock utility program? Adam J. Richter
` (8 preceding siblings ...)
2004-11-16 15:32 ` Andries Brouwer
@ 2004-11-16 15:33 ` Andries Brouwer
9 siblings, 0 replies; 11+ messages in thread
From: Andries Brouwer @ 2004-11-16 15:33 UTC (permalink / raw)
To: linux-hotplug
On Mon, Nov 15, 2004 at 11:38:25PM -0800, Adam J. Richter wrote:
> Here is an initial proposed flock(1) manual page.
Thanks!
Andries
-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
^ permalink raw reply [flat|nested] 11+ messages in thread