Menu

Tree [d66949] master /
 History

HTTPS access


File Date Author Commit
 sample 2005-01-31 Ben Goodwin Ben Goodwin [057830] Read [client] and [libnss-mysql] sections in my...
 src 2006-09-16 Ben Goodwin Ben Goodwin [e9088b] Explicitly set auto-reconnect; default on MySQL...
 .cvsignore 2004-04-11 Ben Goodwin Ben Goodwin [8dc7a3] Updated since files moved to src/ and aux/
 AUTHORS 2002-12-29 Ben Goodwin Ben Goodwin [1a0b4f] Changed my email address
 COPYING 2002-05-28 Ben Goodwin Ben Goodwin [813aba] Initial import of nss-mysql
 ChangeLog 2006-09-16 Ben Goodwin Ben Goodwin [d66949] *** empty log message ***
 DEBUGGING 2003-06-19 Ben Goodwin Ben Goodwin [912da1] Path fixes
 FAQ 2004-03-04 Ben Goodwin Ben Goodwin [feb463] Note about -R under Solaris
 INSTALL 2002-12-29 Ben Goodwin Ben Goodwin [104cf4] Added website URL
 Makefile.am 2006-09-16 Ben Goodwin Ben Goodwin [f0eee4] * 1415600 - "DESTDIR=/another/root make install...
 NEWS 2005-09-04 Ben Goodwin Ben Goodwin [5acd7a] Fix bugid 1244484.
 README 2004-03-28 Ben Goodwin Ben Goodwin [6ee6d2] Tested on MySQL 4.1.1
 THANKS 2003-07-12 Ben Goodwin Ben Goodwin [076f22] 1.0
 TODO 2004-04-10 Ben Goodwin Ben Goodwin [58b452] *** empty log message ***
 UPGRADING 2005-09-04 Ben Goodwin Ben Goodwin [5acd7a] Fix bugid 1244484.
 acinclude.m4 2004-04-10 Ben Goodwin Ben Goodwin [103dd3] Prefer static MySQL libs
 configure.in 2005-09-04 Ben Goodwin Ben Goodwin [5acd7a] Fix bugid 1244484.
 libnss-mysql.spec 2005-09-04 Ben Goodwin Ben Goodwin [5acd7a] Fix bugid 1244484.
 setup.sh 2004-04-11 Ben Goodwin Ben Goodwin [13a21f] Make aux dir if it doesn't exist

Read Me

Official website: http://libnss-mysql.sourceforge.net/

MySQL for NSS systems
=====================
Supported Operating Systems:
    o Linux
    o Solaris (Sparc or Intel) (2.6, 7, 8. 9 without PAM)
    o FreeBSD (5.1+)

Supported MySQL Versions:
    o MySQL 3.23.9 - 4.1.x

Supported Compilers:
    o GCC (2.95.2, 3.x)
    o Sun Forte Developer 7 C 5.4

NOTE: Solaris 9 is not fully unsupported.  Sun's PAM modules have become
      so restrictive that you can't even properly authenticate via PAM
      anymore if there's a "mysql" in /etc/nsswitch.conf.  System routines
      like getpwnam will still work, so you can work around it some by
      compiling your apps with PAM turned *off* - however logging in via
      system programs such as telnet will fail.  I'll be addressing this
      when I can; unfortunately it requires a PAM module that I'd need to
      write.  It's on my TODO list ...

Prerequisites
=============
    o Installing from source:
      o A functional compile environment (system headers, C compiler, ...)
      o MySQL client library & header files (local)
      o MySQL server (local or remote)

    o Installing from RPM:
      o MySQL server (local or remote)

    o Installing from Solaris Package
      o MySQL server (local or remote)

    o Installing from FreeBSD Port
      o MySQL client library (local)
      o MySQL server (local or remote)

The details
===========
    o If installing from source:
      o ./configure
      o make
      o make install
      If your MySQL installation is based in strange directory, use
      the --with-mysql=DIR option of ./configure to specify.  For example,
      "./configure --with-mysql=/usr2"

    o Edit /etc/libnss-mysql.cfg and /etc/libnss-mysql-root.cfg.

    o Add data to MySQL. The default configs will work well with the sample
      sql database in sample/sample_database.sql.  Read that file for more
      details on the sample database.

    o Edit (or create) /etc/nsswitch.conf such that it contains at least the
      following:
        passwd: files mysql
        shadow: files mysql
        group:  files mysql

      Do not enter the 'shadow' line on any system except Linux.
      If you don't want groups from MySQL, simply don't include 'mysql' in 
      in the 'group' line.

64-bit Support (SPARC V9/Solaris 7+)
====================================
You need to produce BOTH a 32-bit and 64-bit library, so get the 32-bit
one working first.  32-bit programs (most still are) will use the 32-bit
library, and 64-bit programs will use the 64-bit version.

You must have a set of 32-bit libraries, and another set of 64-bit
libraries: MySQL, libc, libm, etc ... Solaris tends to put 64-bit
libraries (and binaries) in a subdirectory named 'sparcv9' - so 64-bit
versions of libc, libm, etc, can be found in /usr/lib/sparcv9.

    o Build a 64-bit MySQL library and install it in a DIFFERENT place than
      your 32-bit MySQL library - IE /usr/local/lib/sparcv9/mysql
    o Build a 64-bit libnss-mysql:
      o Set CFLAGS settings in your environment to:
            gcc:      "-m64"
            Sun's CC: "-xarch=v9"
      o Re-run 'configure', pointing it at your 64-bit MySQL library
        (using --with-mysql=...)
      o Edit Makefile and change 'libdir' to be '/usr/lib/sparcv9'
      o Compile and install
    o Test it by using programs such as 'ls' and 'ps' from the /usr/bin/sparcv9
      directory.

At some point in the future, 64-bit support will be integrated.

Debugging
=========
    See the file DEBUGGING

$Id$
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.