From owner-freebsd-database Tue Oct 27 14:01:41 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id OAA29064 for freebsd-database-outgoing; Tue, 27 Oct 1998 14:01:41 -0800 (PST) (envelope-from owner-freebsd-database@FreeBSD.ORG) Received: from mail.clearsail.net (mail.clearsail.net [207.252.227.3]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id OAA29059 for ; Tue, 27 Oct 1998 14:01:39 -0800 (PST) (envelope-from jase@clearsail.net) Received: from clearsail.net (pirate.clearsail.net [207.252.222.75]) by mail.clearsail.net (8.9.1/8.8.8) with ESMTP id PAA12279 for ; Tue, 27 Oct 1998 15:46:50 -0600 (CST) Message-ID: <36364295.3956221F@clearsail.net> Date: Tue, 27 Oct 1998 16:00:54 -0600 From: Jason McNew X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: database@FreeBSD.ORG Subject: can't open a db file as 'nobody' despite 0666 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-database@FreeBSD.ORG Precedence: bulk I'm using DB_File.pm which is a wrapper for db(3), and for some reason I can't open any database files if I'm the user 'nobody'. If I run it as a normal user (not owner or group member of the file in question), my program works fine. But, if I su over to 'nobody', it's instantly broken. I checked the db(3) manpage, but I diden't see anything about it in there. I also read DB_File.pm's POD docs and still no luck. The error I'm getting is "permission denied." Here is the simplest program I could write that duplicates the problem: #!/usr/local/bin/perl use DB_File; $db = '/home/jase/test.db'; tie %urldb, 'DB_File', $db, O_RDONLY, 0666, $DB_BTREE or die("coulden't open $db: $!"); whereas /home/jase/test.db is -rw-rw-rw- When I try to do this from a cgi script (apache runs as nobody) it spits out: coulden't open /home/jase/test.db: Permission denied at test.pl line 4. But the same scirpt runs just fine even when I run it as a user in a different group... except when I su to nobody.. %/usr/local/bin/perl -v This is perl, version 5.005_51 built for i386-freebsd I can work around this by making apache run as a different user, but I'd still like to know why this brakes, and better still, where it needs to be documented (provided it's not pilot error!) :) To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-database" in the body of the message