delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2000/11/27/07:15:47

From: Martin Stromberg <eplmst AT lu DOT erisoft DOT se>
Message-Id: <200011271215.NAA06726@lws256.lu.erisoft.se>
Subject: Re: Locking fcntl() and flock() patches
To: djgpp-workers AT delorie DOT com
Date: Mon, 27 Nov 2000 13:15:38 +0100 (MET)
In-Reply-To: <Pine.SUN.3.91.1001127134354.17219B-100000@is> from "Eli Zaretskii" at Nov 27, 2000 01:44:20 PM
X-Mailer: ELM [version 2.5 PL3]
MIME-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

Eli said:
> On Mon, 27 Nov 2000, Peter J. Farley III wrote:
> > +    case F_SETLKW:
> > +    {
> > +      struct flock *lock_req = NULL; /* shut up -Wall */
> > +      int ret = -1;
> > +      off_t pos, cur_pos, lock_pos;
> > +      off_t len;
> > +
> > +
> > +      cur_pos = lseek(fd, 0, SEEK_CUR);
> 
> This should check if cur_pos is -1, and if so, bail out.  This might
> happen, e.g., if fd is invalid.

Not to mention the case of FAT32 and overflowing the off_t type. I
suggest you use offset_t and llseek().

Is there somewhere we can put such DJGPP developing niceties (Do not
use lseek() and off_t in libc. Use llseek() and offset_t instead.)?


Right,

						MartinS

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019