Re: perchild under Solaris 8
[EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Yeah, I don't think Solaris uses the same structure/functions for passing fd's between processes. I had originally planned to use a Solaris box for the second port, but I don't have access to one yet. I keep looking on e-bay for a good x86 box though. Ryan, send me your SSH key... We have _plenty_ of Solaris boxes (including a big fat Apache machine handling the bug tracking database!!! :) :) :) NO EXCUSES! :) :) :) Pier
Re: perchild under Solaris 8
Tsuyoshi SASAMOTO wrote: If '-D_XPG4_2 -D__EXTENSIONS__' are added to CPPFLAGS during the configure process, perchild will compile relatively cleanly under Solaris 8 and result in a binary that actually serves content!! Please see the standards(5) man page. -D_XPG4_2 is an internal macro, so it shouldn't be defined directly. -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ should be used instead (or -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1 -D__EXTENSIONS__). # -D_XPG4_2 etc. may be defined internally in sys/feature_tests.h. That's what you get for looking at header files and code and not manuals. -- === Jim Jagielski [|] [EMAIL PROTECTED] [|] http://www.jaguNET.com/ A society that will trade a little liberty for a little order will lose both and deserve neither - T.Jefferson
Re: perchild under Solaris 8
At 2:31 PM +0900 9/11/02, Tsuyoshi SASAMOTO wrote: If '-D_XPG4_2 -D__EXTENSIONS__' are added to CPPFLAGS during the configure process, perchild will compile relatively cleanly under Solaris 8 and result in a binary that actually serves content!! Please see the standards(5) man page. -D_XPG4_2 is an internal macro, so it shouldn't be defined directly. -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ should be used instead (or -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1 -D__EXTENSIONS__). Looks like we should be using the later, for Unix 95. Doesn't appear that we need Unix 98 -- === Jim Jagielski [|] [EMAIL PROTECTED] [|] http://www.jaguNET.com/ A society that will trade a little liberty for a little order will lose both and deserve neither - T.Jefferson
Re: perchild under Solaris 8
Looks like we should be using the later, for Unix 95. Doesn't appear that we need Unix 98 But... there's no reason to avoid using -D_XOPEN_SOURCE=500. I've built perchild httpd with -D_XOPEN_SOURCE=500 -D__EXTENSIONS__, and it works well. Tsuyoshi SASAMOTO [EMAIL PROTECTED]
perchild under Solaris 8
If '-D_XPG4_2 -D__EXTENSIONS__' are added to CPPFLAGS during the configure process, perchild will compile relatively cleanly under Solaris 8 and result in a binary that actually serves content!! Haven't yet playing with using the actual uid/gid aspects of perchild yet. I'm looking to see what affects, if any, adding these by default to APR and httpd will be... If anyone has some better experience with these, please let me know :) The hope is a perchild that runs, and then APR'ising it as much as possible. The passing might be somewhat doable. -- === Jim Jagielski [|] [EMAIL PROTECTED] [|] http://www.jaguNET.com/ A society that will trade a little liberty for a little order will lose both and deserve neither - T.Jefferson
Re: perchild under Solaris 8
On Tue, Sep 10, 2002 at 01:07:30PM -0400, Jim Jagielski wrote: If '-D_XPG4_2 -D__EXTENSIONS__' are added to CPPFLAGS during the configure process, perchild will compile relatively cleanly under Solaris 8 and result in a binary that actually serves content!! Haven't yet playing with using the actual uid/gid aspects of perchild yet. I'm looking to see what affects, if any, adding these by default to APR and httpd will be... If anyone has some better experience with these, please let me know :) If that combo works, great, but I have a feeling it will break some other things. I have a combo somewhere around here that I am using on another module that allows solaris to expose the same file descriptor passing semantics, let me see if I can find it. -aaron
Re: perchild under Solaris 8
At 11:07 AM -0700 9/10/02, Aaron Bannert wrote: On Tue, Sep 10, 2002 at 01:07:30PM -0400, Jim Jagielski wrote: If '-D_XPG4_2 -D__EXTENSIONS__' are added to CPPFLAGS during the configure process, perchild will compile relatively cleanly under Solaris 8 and result in a binary that actually serves content!! Haven't yet playing with using the actual uid/gid aspects of perchild yet. I'm looking to see what affects, if any, adding these by default to APR and httpd will be... If anyone has some better experience with these, please let me know :) If that combo works, great, but I have a feeling it will break some other things. I have a combo somewhere around here that I am using on another module that allows solaris to expose the same file descriptor passing semantics, let me see if I can find it. I'm also concerned about breakage... Thing is, we're using msghdr for the recvmsg() calls. /* * Message header for recvmsg and sendmsg calls. */ struct msghdr { void*msg_name; /* optional address */ socklen_t msg_namelen;/* size of address */ struct iovec*msg_iov; /* scatter/gather array */ int msg_iovlen; /* # elements in msg_iov */ #if defined(_XPG4_2) || defined(_KERNEL) void*msg_control; /* ancillary data */ socklen_t msg_controllen; /* ancillary data buffer len */ int msg_flags; /* flags on received message */ #else caddr_t msg_accrights; /* access rights sent/received */ int msg_accrightslen; #endif /* defined(_XPG4_2) || defined(_KERNEL) */ }; The __EXTENSIONS__ is required for proctype_t (in various headers) to be correctly defined :/ -- === Jim Jagielski [|] [EMAIL PROTECTED] [|] http://www.jaguNET.com/ A society that will trade a little liberty for a little order will lose both and deserve neither - T.Jefferson
Re: perchild under Solaris 8
On Tue, 10 Sep 2002, Jim Jagielski wrote: At 11:07 AM -0700 9/10/02, Aaron Bannert wrote: On Tue, Sep 10, 2002 at 01:07:30PM -0400, Jim Jagielski wrote: If '-D_XPG4_2 -D__EXTENSIONS__' are added to CPPFLAGS during the configure process, perchild will compile relatively cleanly under Solaris 8 and result in a binary that actually serves content!! Haven't yet playing with using the actual uid/gid aspects of perchild yet. I'm looking to see what affects, if any, adding these by default to APR and httpd will be... If anyone has some better experience with these, please let me know :) If that combo works, great, but I have a feeling it will break some other things. I have a combo somewhere around here that I am using on another module that allows solaris to expose the same file descriptor passing semantics, let me see if I can find it. I'm also concerned about breakage... Thing is, we're using msghdr for the recvmsg() calls. Yeah, I don't think Solaris uses the same structure/functions for passing fd's between processes. I had originally planned to use a Solaris box for the second port, but I don't have access to one yet. I keep looking on e-bay for a good x86 box though. Ryan ___ Ryan Bloom [EMAIL PROTECTED] 550 Jean St Oakland CA 94610 ---
Re: perchild under Solaris 8
[EMAIL PROTECTED] wrote: I'm also concerned about breakage... Thing is, we're using msghdr for the recvmsg() calls. Yeah, I don't think Solaris uses the same structure/functions for passing fd's between processes. Well, it looks like it *can* :) That doesn't mean that it should... ;) -- === Jim Jagielski [|] [EMAIL PROTECTED] [|] http://www.jaguNET.com/ A society that will trade a little liberty for a little order will lose both and deserve neither - T.Jefferson
Re: perchild under Solaris 8
If '-D_XPG4_2 -D__EXTENSIONS__' are added to CPPFLAGS during the configure process, perchild will compile relatively cleanly under Solaris 8 and result in a binary that actually serves content!! Please see the standards(5) man page. -D_XPG4_2 is an internal macro, so it shouldn't be defined directly. -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ should be used instead (or -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1 -D__EXTENSIONS__). # -D_XPG4_2 etc. may be defined internally in sys/feature_tests.h. Yeah, I don't think Solaris uses the same structure/functions for passing fd's between processes. recvmsg(3XNET), which is actually mapped to __xnet_recvmsg(), has the UNIX95 semantics, and recvmsg(3SOCKET) has the traditional SunOS4.x semantics. Both can be used for FD passing. Tsuyoshi SASAMOTO [EMAIL PROTECTED]