Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-9486

Cannot authenticate anymore using Unix security realm after upgrading Ubuntu from Maverick to Natty

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • core
    • None
    • Jenkins 1.408 as a webapp, Ubuntu Natty 11.04, tomcat 6.0.28, openjdk_1.6.0_22

      Cannot authenticate anymore using Unix security realm after upgrading to Ubuntu from Maverick to Natty.
      This one's probably due to JNA 3.2.4 incompatibility with Natty. Has already been reported : http://java.net/jira/browse/JNA-184

      SEVERE: Servlet.service() for servlet Stapler threw exception
      java.lang.UnsatisfiedLinkError: Unable to load library 'pam': libpam.so: cannot open shared object file: No such file or directory
      at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:164)
      at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:237)
      at com.sun.jna.Library$Handler.<init>(Library.java:140)
      at com.sun.jna.Native.loadLibrary(Native.java:374)
      at com.sun.jna.Native.loadLibrary(Native.java:359)
      at org.jvnet.libpam.impl.PAMLibrary.<clinit>(PAMLibrary.java:132)
      at sun.misc.Unsafe.ensureClassInitialized(Native Method)
      at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
      at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:140)
      at java.lang.reflect.Field.acquireFieldAccessor(Field.java:936)
      at java.lang.reflect.Field.getFieldAccessor(Field.java:917)
      at java.lang.reflect.Field.get(Field.java:376)
      at com.sun.jna.Native.loadLibraryInstance(Native.java:398)
      at com.sun.jna.Native.getStructureAlignment(Native.java:507)
      at com.sun.jna.Structure.setAlignType(Structure.java:191)
      at com.sun.jna.Structure.<init>(Structure.java:149)
      at com.sun.jna.Structure.<init>(Structure.java:145)
      at com.sun.jna.Structure.<init>(Structure.java:141)
      at com.sun.jna.Structure.<init>(Structure.java:132)
      at org.jvnet.libpam.impl.PAMLibrary$pam_conv.<init>(PAMLibrary.java:107)
      at org.jvnet.libpam.PAM.<init>(PAM.java:73)
      at hudson.security.PAMSecurityRealm$PAMAuthenticationProvider.authenticate(PAMSecurityRealm.java:91)
      at org.acegisecurity.providers.ProviderManager.doAuthentication(ProviderManager.java:195)
      at org.acegisecurity.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:45)
      at org.acegisecurity.ui.webapp.AuthenticationProcessingFilter.attemptAuthentication(AuthenticationProcessingFilter.java:71)
      at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:252)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
      at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:427)
      at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:384)
      at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1584)
      at java.lang.Thread.run(Thread.java:679)

          [JENKINS-9486] Cannot authenticate anymore using Unix security realm after upgrading Ubuntu from Maverick to Natty

          sogabe added a comment -

          java.lang.UnsatisfiedLinkError: Unable to load library 'pam': libpam.so: cannot open shared object file: No such file or directory

          You have to install "libpam.so".

          sogabe added a comment - java.lang.UnsatisfiedLinkError: Unable to load library 'pam': libpam.so: cannot open shared object file: No such file or directory You have to install "libpam.so".

          It's not the matter of the libpam.so not being installed. It is a matter of directory layout change that has not been accommodated by JNA (as it is explained further in James Pages' report).

          master@sting:~$ sudo find / -name libpam*so* -exec ls -la \{\} \;
          lrwxrwxrwx 1 root root 21 2011-04-16 20:19 /lib/x86_64-linux-gnu/libpam_misc.so.0 -> libpam_misc.so.0.82.0
          -rw-r--r-- 1 root root 14528 2011-04-14 18:57 /lib/x86_64-linux-gnu/libpamc.so.0.82.1
          -rw-r--r-- 1 root root 51712 2011-04-14 18:57 /lib/x86_64-linux-gnu/libpam.so.0.82.3
          lrwxrwxrwx 1 root root 16 2011-04-16 20:19 /lib/x86_64-linux-gnu/libpam.so.0 -> libpam.so.0.82.3
          -rw-r--r-- 1 root root 14528 2011-04-14 18:57 /lib/x86_64-linux-gnu/libpam_misc.so.0.82.0
          lrwxrwxrwx 1 root root 17 2011-04-16 20:19 /lib/x86_64-linux-gnu/libpamc.so.0 -> libpamc.so.0.82.1
          

          Adding a symlink /lib/x86_64-linux-gnu/libpam.so to /lib/x86_64-linux-gnu/libpam.so.0 seems to resolve this issue, but I am not quite sure that this does not break something else.

          Dominik Drzewiecki added a comment - It's not the matter of the libpam.so not being installed. It is a matter of directory layout change that has not been accommodated by JNA (as it is explained further in James Pages' report ). master@sting:~$ sudo find / -name libpam*so* -exec ls -la \{\} \; lrwxrwxrwx 1 root root 21 2011-04-16 20:19 /lib/x86_64-linux-gnu/libpam_misc.so.0 -> libpam_misc.so.0.82.0 -rw-r--r-- 1 root root 14528 2011-04-14 18:57 /lib/x86_64-linux-gnu/libpamc.so.0.82.1 -rw-r--r-- 1 root root 51712 2011-04-14 18:57 /lib/x86_64-linux-gnu/libpam.so.0.82.3 lrwxrwxrwx 1 root root 16 2011-04-16 20:19 /lib/x86_64-linux-gnu/libpam.so.0 -> libpam.so.0.82.3 -rw-r--r-- 1 root root 14528 2011-04-14 18:57 /lib/x86_64-linux-gnu/libpam_misc.so.0.82.0 lrwxrwxrwx 1 root root 17 2011-04-16 20:19 /lib/x86_64-linux-gnu/libpamc.so.0 -> libpamc.so.0.82.1 Adding a symlink /lib/x86_64-linux-gnu/libpam.so to /lib/x86_64-linux-gnu/libpam.so.0 seems to resolve this issue, but I am not quite sure that this does not break something else.

          Lyle Hanson added a comment -

          I've also had success adding the equivalent link on my system:

          ln -s /lib/i386-linux-gnu/libpam.so.0 /lib/libpam.so.0
          

          Lyle Hanson added a comment - I've also had success adding the equivalent link on my system: ln -s /lib/i386-linux-gnu/libpam.so.0 /lib/libpam.so.0

          Code changed in jenkins
          User: Kohsuke Kawaguchi
          Path:
          changelog.html
          core/pom.xml
          http://jenkins-ci.org/commit/jenkins/9b0c8d236257ec32b052875921bd22e3f9ac7416
          Log:
          [FIXED JENKINS-9486] integrated a patched version of JNA that includes a fix for JNA-184

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: changelog.html core/pom.xml http://jenkins-ci.org/commit/jenkins/9b0c8d236257ec32b052875921bd22e3f9ac7416 Log: [FIXED JENKINS-9486] integrated a patched version of JNA that includes a fix for JNA-184

          Fixed in 1.421.

          Kohsuke Kawaguchi added a comment - Fixed in 1.421.

          dogfood added a comment -

          Integrated in jenkins_main_trunk #945
          [FIXED JENKINS-9486] integrated a patched version of JNA that includes a fix for JNA-184

          Kohsuke Kawaguchi : 9b0c8d236257ec32b052875921bd22e3f9ac7416
          Files :

          • changelog.html
          • core/pom.xml

          dogfood added a comment - Integrated in jenkins_main_trunk #945 [FIXED JENKINS-9486] integrated a patched version of JNA that includes a fix for JNA-184 Kohsuke Kawaguchi : 9b0c8d236257ec32b052875921bd22e3f9ac7416 Files : changelog.html core/pom.xml

          I confirm that the fix indeed works. Be wary to not have libjna-java package installed (as I once had) as it comes into the way and makes things go wrong.

          Dominik Drzewiecki added a comment - I confirm that the fix indeed works. Be wary to not have libjna-java package installed (as I once had) as it comes into the way and makes things go wrong.

          Code changed in jenkins
          User: Kohsuke Kawaguchi
          Path:
          changelog.html
          core/pom.xml
          http://jenkins-ci.org/commit/jenkins/9b0c8d236257ec32b052875921bd22e3f9ac7416
          Log:
          [FIXED JENKINS-9486] integrated a patched version of JNA that includes a fix for JNA-184

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: changelog.html core/pom.xml http://jenkins-ci.org/commit/jenkins/9b0c8d236257ec32b052875921bd22e3f9ac7416 Log: [FIXED JENKINS-9486] integrated a patched version of JNA that includes a fix for JNA-184

          Code changed in jenkins
          User: Kohsuke Kawaguchi
          Path:
          changelog.html
          core/pom.xml
          http://jenkins-ci.org/commit/jenkins/9b0c8d236257ec32b052875921bd22e3f9ac7416
          Log:
          [FIXED JENKINS-9486] integrated a patched version of JNA that includes a fix for JNA-184

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: changelog.html core/pom.xml http://jenkins-ci.org/commit/jenkins/9b0c8d236257ec32b052875921bd22e3f9ac7416 Log: [FIXED JENKINS-9486] integrated a patched version of JNA that includes a fix for JNA-184

            Unassigned Unassigned
            drzewo Dominik Drzewiecki
            Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: