On Fri, 7 Dec 2001, Rodent of Unusual Size wrote:

> @#*&(^(#(&@# windows.. }-(
> 
> After a lot of travail I've gotten to the point at which all
> the prerequisites for modules/dav on Windows can be run.
> (Only the Expat bundled with Apache seems to suffice for
> XML::Parser, btw; the Win32 download from expat.sf.net
> fails tests because of a missing XML_GetAttributeCount).

still hoping to see dav.t rewritten to use HTTP::Webdav
 
> And now.. and now.. modules/dav is running, but crapping out
> with
> 
> modules\dav.........The getpwnam function is unimplemented at modules\dav.t 
> line 37.
> dubious
>       Test returned status 2 (wstat 512, 0x200)
> DIED. FAILED tests 1-14
> 
> Is this missing getpwnam a deficiency of my Perl on Windows?

yes.  i think the patch below will suffice.

Index: t/modules/dav.t
===================================================================
RCS file: /home/cvs/httpd-test/perl-framework/t/modules/dav.t,v
retrieving revision 1.4
diff -u -r1.4 dav.t
--- t/modules/dav.t     2001/11/12 07:18:47     1.4
+++ t/modules/dav.t     2001/12/07 19:06:01
@@ -34,8 +34,12 @@
 ## make sure its clean before we begin ##
 unlink "htdocs$uri" if -e "htdocs$uri";
 mkdir "htdocs/$dir", oct('755') unless -e "htdocs/$dir";
-my ($login,$pass,$uid,$gid) = getpwnam($vars->{user});
-chown $uid, $gid, "htdocs/$dir";
+
+eval {
+    #not all platforms support getpwnam
+    my($uid, $gid) = (getpwnam($vars->{user}))[2,3];
+    chown $uid, $gid, "htdocs/$dir";
+};
 
 ## set up resource and lock it ##
 my $resource = $dav->new_resource( -uri => "http://$server$uri";);

Reply via email to