

#-------------------------------------------------
# lock.pl
# Copyright (C) 1995 Jonathan A. Lewis
#
# Permission to use, copy, modify, and distribute this include file and its 
# documentation for any purpose without fee is granted
# provided that the above copyright notice appears in all copies.
# 
# This, and the accompanying scripts, is provided "as is" without any express 
# or implied warranty.
#
# Use this script at your own risk.  It's guaranteed to do nothing but
# occupy space...unless your disk crashes, in which case it does nothing
# at all.
#------------------------------------------------


$LOCK_SH = 1;
$LOCK_EX = 2;
$LOCK_NB = 4;
$LOCK_UN = 8;

sub lock {
  #pass in a file handle to be locked
  #flock will wait until it can get a lock
	
    	flock($_[0], $LOCK_EX);
    	# seek to whence just incase we were waiting for a lock after opening
      	seek($_[0], 0, $_[1]);
}

sub unlock {
        flock($_[0], $LOCK_UN);
}
1; #return true        
