More on mod_auth_pam on HP-UX 11.0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



OK, I've gotten farther with getting the Apache module mod_auth_pam to work
on HP-UX.

I don't know why I didn't do this sooner, but I wiped out Apache and
recompiled Apache and mod_auth_pam from scratch.  Sure enough, the
unresolved references went away with the PAM modules.  D'OH!

Now I think I'm closer.  PAM says it is loading the module, but says my
account doesn't exist.  It does.  Here is what syslog says:

Sep 26 14:42:00 silver PAM: pam_start(httpd millaadi)
Sep 26 14:42:00 silver PAM: pam_set_item(1)
Sep 26 14:42:00 silver PAM: pam_set_item(2)
Sep 26 14:42:00 silver PAM: pam_set_item(5)
Sep 26 14:42:00 silver PAM: pam_authenticate()
Sep 26 14:42:00 silver PAM: load_modules: /usr/lib/security/libpam_unix.1
Sep 26 14:42:00 silver PAM: load_function: successful load of
pam_sm_authenticate
Sep 26 14:42:00 silver PAM: pam_get_username(ux)
Sep 26 14:42:00 silver PAM: pam_mapping_in_use()
Sep 26 14:42:00 silver PAM: unix pam_sm_authenticate(httpd millaadi), flags
= 2
Sep 26 14:42:00 silver PAM: audit_log: cannot set effective uid before
audwrite
Sep 26 14:42:00 silver PAM: pam_authenticate: error No account present for
user
Sep 26 14:42:00 silver PAM: pam_set_item(6)
Sep 26 14:42:00 silver PAM: pam_end(): status = Success


So I'm left scratching my head.

I did get one warning during compilation of mod_auth_pam:



cc -DHPUX11 -Aa -Ae -D_HPUX_SOURCE -DUSE_HSREGEX -DUSE_EXPAT -I../lib/expat-
lite +z -DSHARED_MODULE -I/scr/alan/apache/include  -c mod_auth_pam.c
  cc: "mod_auth_pam.c", line 365: warning 604: Pointers are not
assignment-compatible.

I checked this line of the source, and found it has:

      struct pam_conv conv_info = { &auth_pam_talker, (void*)&userinfo};


I also looked at /usr/include/security/pam_appl.h for pam_conv, and found
this:

-----
struct pam_conv {
#if defined(__STDC__) || defined(__cplusplus)
        int (*conv)(int, struct pam_message **,
            struct pam_response **, void *);
#else
        int (*conv)();
#endif
        void *appdata_ptr;              /* Application data ptr */
};
-----

I don't know enough C, but are/should these be compatible?  (Am I even
looking at the right things? :-)

I'd appreciate any tips.  Thanks.

- Alan

--
Alan Millar                  Email: Alan.Millar@LPCorp.com
Unix System Administrator    Voice: 503-624-9004 x3014
Louisiana-Pacific            Fax:   509-692-3948






[Index of Archives]     [Fedora Users]     [Kernel]     [Red Hat Install]     [Linux for the blind]     [Gimp]

  Powered by Linux