LDAP configuration in Koha3.0 on Linux
Hi, I am trying to configure Koha3.0 on Linux(Ubuntu) to use our LDAP server. I referred to the below link for configuration: http://wiki.koha.org/doku.php?id=en:development:ldap&s Our LDAP server does not provide any field name for password and hence I am not able to map in the koha_conf.xml file. Also, please let me know if there is any other file that I need to modify to succeed in configuring for this. Can someone please help me in resolving this issue since I am unable to understand the flow of this authentication process. Thanks and Regards, Sai. This email and any attachment(s) transmitted may contain confidential, proprietary or legally privileged information relating to D&B TransUnion Analytic and Decision Services Private Limited. The information is intended solely for the recipient. No part of this information may be disclosed, copied, reproduced, distributed or made available in any form whatsoever without prior authorization. If you have received this email in error please notify the sender electronically and delete all copies immediately. This email may contain viruses. D&B TransUnion Analytic and Decision Services Private Limited has taken every reasonable precaution to minimize this risk, but is not liable for any damage you may sustain as a result of any virus in this email. We strongly advise you to ensure that the email and any attachment(s) are free of any virus.
On Tue, Jul 14, 2009 at 06:43:43PM +0530, Sai bhalaji Dhinakaran wrote:
Hi,
I am trying to configure Koha3.0 on Linux(Ubuntu) to use our LDAP server. I referred to the below link for configuration:
http://wiki.koha.org/doku.php?id=en:development:ldap&s
Our LDAP server does not provide any field name for password and hence I am not able to map in the koha_conf.xml file. Also, please let me know if there is any other file that I need to modify to succeed in configuring for this.
Can someone please help me in resolving this issue since I am unable to understand the flow of this authentication process.
We had similar problem, so we opted to implement following ugly patch: http://koha-dev.rot13.org:8081/cgi-bin/gitweb.cgi?p=koha-ffzg.git;a=commitdi... (which I should really cleanup and submit at some point in future). Idea is simple: instead of having single administrative user which can do LDAP compare to check password, we just bind as user who is trying to login. Tricky part is rewrite of user login@domain.com into LDAP DN syntax (uid=login,dc=domain,dc=com), but if this patten is o.k. for most users (I hope). If it's not, please speak now! :-) -- Dobrica Pavlinusic 2share!2flame dpavlin@rot13.org Unix addict. Internet consultant. http://www.rot13.org/~dpavlin
On Tue, Jul 14, 2009 at 10:10 AM, Dobrica Pavlinusic <dpavlin@rot13.org>wrote:
On Tue, Jul 14, 2009 at 06:43:43PM +0530, Sai bhalaji Dhinakaran wrote:
Hi,
I am trying to configure Koha3.0 on Linux(Ubuntu) to use our LDAP server. I referred to the below link for configuration:
http://wiki.koha.org/doku.php?id=en:development:ldap&s
Our LDAP server does not provide any field name for password and hence I am not able to map in the koha_conf.xml file. Also, please let me know if there is any other file that I need to modify to succeed in configuring for this.
Can someone please help me in resolving this issue since I am unable to understand the flow of this authentication process.
We had similar problem, so we opted to implement following ugly patch:
http://koha-dev.rot13.org:8081/cgi-bin/gitweb.cgi?p=koha-ffzg.git;a=commitdi...
(which I should really cleanup and submit at some point in future).
Idea is simple: instead of having single administrative user which can do LDAP compare to check password, we just bind as user who is trying to login. Tricky part is rewrite of user login@domain.com into LDAP DN syntax (uid=login,dc=domain,dc=com), but if this patten is o.k. for most users (I hope). If it's not, please speak now! :-)
This functionality as already been submitted, with both aspects, including a configurable sprintf-style manipulation of the Koha userid into whatever you want to present LDAP with. See the "principle_name" section: http://lists.koha.org/pipermail/koha-patches/2009-June/003864.html There is a considerable backlog of patches right now, mostly owing to the annual ALA convention this past week. -- Joe Atzberger LibLime - Open Source Library Solutions
Hi, 2009/7/14 Joe Atzberger <ohiocore@gmail.com>:
This functionality as already been submitted, with both aspects, including a configurable sprintf-style manipulation of the Koha userid into whatever you want to present LDAP with. See the "principle_name" section:
http://lists.koha.org/pipermail/koha-patches/2009-June/003864.html
The patch in question has now been pushed to HEAD. Please try it out and let us know if you find any issues during testing. Regards, Galen -- Galen Charlton VP, Research & Development, LibLime galen.charlton@liblime.com p: 1-888-564-2457 x709 skype: gmcharlt
Our MS AD LDAP schema provides samaccountname but not UID, so we map <userid is="sAMAccountName" ></userid>. Test 1A: someuser + password <replicate>1</replicate> <update>1</update> <auth_by_bind>1</auth_by_bind> <principal_name>%s@example.com</principal_name> Result 1A: Can't call method "exists" on an undefined value at /usr/share/koha/lib/C4/Auth_with_ldap.pm line 168, <DATA> line 253. ---------------- Test 1B: someuser@example.com + password Result 1B: You entered an incorrect username or password ---------------- Test 2: someuser + password <replicate>1</replicate> <update>1</update> <auth_by_bind>0</auth_by_bind> Result 2: No ldapserver "mapping for 'userid'" defined in KOHA_CONF: /etc/koha/koha-conf.xml at /usr/share/koha/lib/C4/Auth_with_ldap.pm line 80. However, the mapping does exist: <userid is="sAMAccountName" ></userid>. On Tue, Jul 14, 2009 at 8:54 PM, Galen Charlton <galen.charlton@liblime.com> wrote:
Hi,
2009/7/14 Joe Atzberger <ohiocore@gmail.com>:
This functionality as already been submitted, with both aspects, including a configurable sprintf-style manipulation of the Koha userid into whatever you want to present LDAP with. See the "principle_name" section:
http://lists.koha.org/pipermail/koha-patches/2009-June/003864.html
The patch in question has now been pushed to HEAD. Please try it out and let us know if you find any issues during testing.
Regards,
Galen -- Galen Charlton VP, Research & Development, LibLime galen.charlton@liblime.com p: 1-888-564-2457 x709 skype: gmcharlt _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
I don't see an exists() call on line 168 of Auth_with_ldap.pm. What version of Koha are you using again? The nearest call is in ldap_entry_w_hash(). Actually that's the only call I could find in the current version of the file. ldap_entry_2_hash() is called after authentication though, so that seems to work. Except that $userldapentry is what's complaining, and it's used in authentication. So I'm guessing there are some big differences between what you have and what I have in Auth_with_ldap.pm On Wed, 2009-07-15 at 09:39 -0500, Library Guy wrote:
Our MS AD LDAP schema provides samaccountname but not UID, so we map <userid is="sAMAccountName" ></userid>.
Test 1A: someuser + password
<replicate>1</replicate> <update>1</update> <auth_by_bind>1</auth_by_bind> <principal_name>%s@example.com</principal_name>
Result 1A: Can't call method "exists" on an undefined value at /usr/share/koha/lib/C4/Auth_with_ldap.pm line 168, <DATA> line 253.
----------------
Test 1B: someuser@example.com + password
Result 1B: You entered an incorrect username or password
----------------
Test 2: someuser + password
<replicate>1</replicate>
<update>1</update>
<auth_by_bind>0</auth_by_bind>
Result 2: No ldapserver "mapping for 'userid'" defined in KOHA_CONF: /etc/koha/koha-conf.xml at /usr/share/koha/lib/C4/Auth_with_ldap.pm line 80.
However, the mapping does exist: <userid is="sAMAccountName" ></userid>.
On Tue, Jul 14, 2009 at 8:54 PM, Galen Charlton <galen.charlton@liblime.com> wrote:
Hi,
2009/7/14 Joe Atzberger <ohiocore@gmail.com>:
This functionality as already been submitted, with both aspects, including a configurable sprintf-style manipulation of the Koha userid into whatever you want to present LDAP with. See the "principle_name" section:
http://lists.koha.org/pipermail/koha-patches/2009-June/003864.html
The patch in question has now been pushed to HEAD. Please try it out and let us know if you find any issues during testing.
Regards,
Galen -- Galen Charlton VP, Research & Development, LibLime galen.charlton@liblime.com p: 1-888-564-2457 x709 skype: gmcharlt _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel -- Michael Hafen Systems Analyst and Programmer Washington County School District Utah, USA
for Koha checkout http://development.washk12.org/gitweb/ or git://development.washk12.org/koha
Michael, just to make sure I just finished another fresh dev install (3.00.02.012) from git on a fresh machine. Still have the exact same problem. :-( On Wed, Jul 15, 2009 at 10:04 AM, Michael Hafen<mdhafen@tech.washk12.org> wrote:
I don't see an exists() call on line 168 of Auth_with_ldap.pm. What version of Koha are you using again?
The nearest call is in ldap_entry_w_hash(). Actually that's the only call I could find in the current version of the file. ldap_entry_2_hash() is called after authentication though, so that seems to work. Except that $userldapentry is what's complaining, and it's used in authentication. So I'm guessing there are some big differences between what you have and what I have in Auth_with_ldap.pm
On Wed, 2009-07-15 at 09:39 -0500, Library Guy wrote:
Our MS AD LDAP schema provides samaccountname but not UID, so we map <userid is="sAMAccountName" ></userid>.
Test 1A: someuser + password
<replicate>1</replicate> <update>1</update> <auth_by_bind>1</auth_by_bind> <principal_name>%s@example.com</principal_name>
Result 1A: Can't call method "exists" on an undefined value at /usr/share/koha/lib/C4/Auth_with_ldap.pm line 168, <DATA> line 253.
----------------
Test 1B: someuser@example.com + password
Result 1B: You entered an incorrect username or password
----------------
Test 2: someuser + password
<replicate>1</replicate>
<update>1</update>
<auth_by_bind>0</auth_by_bind>
Result 2: No ldapserver "mapping for 'userid'" defined in KOHA_CONF: /etc/koha/koha-conf.xml at /usr/share/koha/lib/C4/Auth_with_ldap.pm line 80.
However, the mapping does exist: <userid is="sAMAccountName" ></userid>.
On Tue, Jul 14, 2009 at 8:54 PM, Galen Charlton <galen.charlton@liblime.com> wrote:
Hi,
2009/7/14 Joe Atzberger <ohiocore@gmail.com>:
This functionality as already been submitted, with both aspects, including a configurable sprintf-style manipulation of the Koha userid into whatever you want to present LDAP with. See the "principle_name" section:
http://lists.koha.org/pipermail/koha-patches/2009-June/003864.html
The patch in question has now been pushed to HEAD. Please try it out and let us know if you find any issues during testing.
Regards,
Galen -- Galen Charlton VP, Research & Development, LibLime galen.charlton@liblime.com p: 1-888-564-2457 x709 skype: gmcharlt _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel -- Michael Hafen Systems Analyst and Programmer Washington County School District Utah, USA
for Koha checkout http://development.washk12.org/gitweb/ or git://development.washk12.org/koha
Yeah, I've been looking at the 3.1.x version of the file. The auth_by_bind and principal_name features aren't in the 3.0.x branch (yet). And you mention that you are using Active Directory, and I don't know if Auth_with_ldap.pm will work with AD. It's a matter of AD exposing a userPassword attribute that can be compared to the entered password. I don't have a 3.0.2 install to test this, so I don't think I will be able to help much more here. There should be documentation somewhere for the 3.0.2 branch to get LDAP working with AD. Maybe on the wiki. Maybe someone else on the list will know better than me. Good luck. On Wed, 2009-07-15 at 13:31 -0500, Library Guy wrote:
Michael, just to make sure I just finished another fresh dev install (3.00.02.012) from git on a fresh machine. Still have the exact same problem. :-(
On Wed, Jul 15, 2009 at 10:04 AM, Michael Hafen<mdhafen@tech.washk12.org> wrote:
I don't see an exists() call on line 168 of Auth_with_ldap.pm. What version of Koha are you using again?
The nearest call is in ldap_entry_w_hash(). Actually that's the only call I could find in the current version of the file. ldap_entry_2_hash() is called after authentication though, so that seems to work. Except that $userldapentry is what's complaining, and it's used in authentication. So I'm guessing there are some big differences between what you have and what I have in Auth_with_ldap.pm
On Wed, 2009-07-15 at 09:39 -0500, Library Guy wrote:
Our MS AD LDAP schema provides samaccountname but not UID, so we map <userid is="sAMAccountName" ></userid>.
Test 1A: someuser + password
<replicate>1</replicate> <update>1</update> <auth_by_bind>1</auth_by_bind> <principal_name>%s@example.com</principal_name>
Result 1A: Can't call method "exists" on an undefined value at /usr/share/koha/lib/C4/Auth_with_ldap.pm line 168, <DATA> line 253.
----------------
Test 1B: someuser@example.com + password
Result 1B: You entered an incorrect username or password
----------------
Test 2: someuser + password
<replicate>1</replicate>
<update>1</update>
<auth_by_bind>0</auth_by_bind>
Result 2: No ldapserver "mapping for 'userid'" defined in KOHA_CONF: /etc/koha/koha-conf.xml at /usr/share/koha/lib/C4/Auth_with_ldap.pm line 80.
However, the mapping does exist: <userid is="sAMAccountName" ></userid>.
On Tue, Jul 14, 2009 at 8:54 PM, Galen Charlton <galen.charlton@liblime.com> wrote:
Hi,
2009/7/14 Joe Atzberger <ohiocore@gmail.com>:
This functionality as already been submitted, with both aspects, including a configurable sprintf-style manipulation of the Koha userid into whatever you want to present LDAP with. See the "principle_name" section:
http://lists.koha.org/pipermail/koha-patches/2009-June/003864.html
The patch in question has now been pushed to HEAD. Please try it out and let us know if you find any issues during testing.
Regards,
Galen -- Galen Charlton VP, Research & Development, LibLime galen.charlton@liblime.com p: 1-888-564-2457 x709 skype: gmcharlt _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel -- Michael Hafen Systems Analyst and Programmer Washington County School District Utah, USA
for Koha checkout http://development.washk12.org/gitweb/ or git://development.washk12.org/koha
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel -- Michael Hafen Systems Analyst and Programmer Washington County School District Utah, USA
for Koha checkout http://development.washk12.org/gitweb/ or git://development.washk12.org/koha
I haven't been following this thread in detail, but MS Active Directory LDAP is working with my instance of Koha 3.0.1, which is running on Debian Lenny. My configuration is as follows: <useldapserver>1</useldapserver> <!--LDAP SERVER (optional) --> <ldapserver id="[server name]" listenref="[server name]"> <hostname>[server IP]</hostname> <base>[Active Directory Distinguished Name of Domain]</base> <user>[Active Directory Distinguished Name of AT admin user]</user> <pass>[PASSWORD]</pass> <replicate>1</replicate> <update>1</update> <auth_by_bind>1</auth_by_bind> <mapping> <firstname is="givenname"></firstname> <surname is="sn"></surname> <address2 is="physicaldeliveryofficename"></address2> <userid is="samaccountname"></userid> <password is="userpassword"></password> <email is="mail"></email> <phonepro is="telephonenumber"></phonepro> </mapping> </ldapserver> Hope this helps. Cheers, Christopher Curry Assistant Technical Librarian / Assistant IT Officer American Philosophical Society 105 South Fifth Street Philadelphia, PA 19106-3386 Tel. (215) 599-4299 ccurry@amphilsoc.org <mailto:ccurry@amphilsoc.org>
Oops, That should have read: "<user>[Active Directory Distinguished Name of *AD* admin user]</user>" Cheers, Christopher Curry Assistant Technical Librarian / Assistant IT Officer American Philosophical Society 105 South Fifth Street Philadelphia, PA 19106-3386 Tel. (215) 599-4299 ccurry@amphilsoc.org <mailto:ccurry@amphilsoc.org> *For technical support, please use helpdesk@amphilsoc.org <mailto:helpdesk@amphilsoc.org>* Main Library number: (215)440-3400 APS website: http://www.amphilsoc.org Christopher Curry wrote:
I haven't been following this thread in detail, but MS Active Directory LDAP is working with my instance of Koha 3.0.1, which is running on Debian Lenny.
My configuration is as follows:
<useldapserver>1</useldapserver>
<!--LDAP SERVER (optional) --> <ldapserver id="[server name]" listenref="[server name]"> <hostname>[server IP]</hostname> <base>[Active Directory Distinguished Name of Domain]</base> <user>[Active Directory Distinguished Name of AT admin user]</user> <pass>[PASSWORD]</pass> <replicate>1</replicate> <update>1</update> <auth_by_bind>1</auth_by_bind> <mapping> <firstname is="givenname"></firstname> <surname is="sn"></surname> <address2 is="physicaldeliveryofficename"></address2> <userid is="samaccountname"></userid> <password is="userpassword"></password> <email is="mail"></email> <phonepro is="telephonenumber"></phonepro> </mapping> </ldapserver>
Hope this helps.
Cheers,
Christopher Curry Assistant Technical Librarian / Assistant IT Officer
American Philosophical Society 105 South Fifth Street Philadelphia, PA 19106-3386 Tel. (215) 599-4299
ccurry@amphilsoc.org <mailto:ccurry@amphilsoc.org>
------------------------------------------------------------------------
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
Chris, yes in Koha 3.0.1 my test users could authenticate against AD using <auth_by_bind>, but Koha was not creating or updating their Koha accounts despite <replicate> and <update> set to 1. In addition, our I.T. dept will not provide me an AD Admin account; only an alternate domain account for doing queries only. (userpassword is not exposed for my use) This was my original reason for testing the newest Auth_with_ldap.pm from the git repository, hoping that <replicate> and <update> would now work, but now authentication no longer works. James 2009/7/15 Christopher Curry <ccurry@amphilsoc.org>:
Oops,
That should have read:
"<user>[Active Directory Distinguished Name of AD admin user]</user>"
Cheers,
Christopher Curry Assistant Technical Librarian / Assistant IT Officer
American Philosophical Society 105 South Fifth Street Philadelphia, PA 19106-3386 Tel. (215) 599-4299
ccurry@amphilsoc.org
For technical support, please use helpdesk@amphilsoc.org Main Library number: (215)440-3400 APS website: http://www.amphilsoc.org
Christopher Curry wrote:
I haven't been following this thread in detail, but MS Active Directory LDAP is working with my instance of Koha 3.0.1, which is running on Debian Lenny.
My configuration is as follows:
<useldapserver>1</useldapserver>
<!--LDAP SERVER (optional) --> <ldapserver id="[server name]" listenref="[server name]"> <hostname>[server IP]</hostname> <base>[Active Directory Distinguished Name of Domain]</base> <user>[Active Directory Distinguished Name of AT admin user]</user> <pass>[PASSWORD]</pass> <replicate>1</replicate> <update>1</update> <auth_by_bind>1</auth_by_bind> <mapping> <firstname is="givenname"></firstname> <surname is="sn"></surname> <address2 is="physicaldeliveryofficename"></address2> <userid is="samaccountname"></userid> <password is="userpassword"></password> <email is="mail"></email> <phonepro is="telephonenumber"></phonepro> </mapping> </ldapserver>
Hope this helps.
Cheers,
Christopher Curry Assistant Technical Librarian / Assistant IT Officer
American Philosophical Society 105 South Fifth Street Philadelphia, PA 19106-3386 Tel. (215) 599-4299
ccurry@amphilsoc.org
________________________________ _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
Dobrica Pavlinusic <dpavlin@rot13.org> writes:
Idea is simple: instead of having single administrative user which can do LDAP compare to check password, we just bind as user who is trying to login.
Yes, this is the correct way to authenticate against an LDAP directory. As you say, it requires no privileged access to the directory beyond that granted to the authenticating user. This normal behaviour (bind as authenticating user) is available in the current development tree of Koha 3.x, and is not yet in any stable release TTBOMK. -- \ Rommel: “Don't move, or I'll turn the key on this can of Spam!” | `\ —The Goon Show, _Rommel's Treasure_ | _o__) | Ben Finney _______________________________________________ Koha-devel mailing list Koha-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/koha-devel
Ben, I'm testing the latest dev (3.01.00.037). LDAP authentication against our MS AD LDAP works properly using auth_by_bind, but if I enable either <replicate> or <update>, as soon as a new patron is authenticated Koha produces this error: Can't call method "exists" on an undefined value at /home/koha/kohaclone/C4/Auth_with_ldap.pm line 168, <DATA> line 253. The offending line 168 in Auth_with_ldap.pm is: $userldapentry->exists('uid'); # This is bad, but required! By side-effect, this initializes the attrs hash. I suspect it has something to do with uid not being a part of our schema, but I don't know where to go from here or how to help the developers address it. Thanks! James On Wed, Jul 15, 2009 at 8:06 PM, Ben Finney<ben+koha@benfinney.id.au> wrote:
Dobrica Pavlinusic <dpavlin@rot13.org> writes:
Idea is simple: instead of having single administrative user which can do LDAP compare to check password, we just bind as user who is trying to login.
Yes, this is the correct way to authenticate against an LDAP directory. As you say, it requires no privileged access to the directory beyond that granted to the authenticating user.
This normal behaviour (bind as authenticating user) is available in the current development tree of Koha 3.x, and is not yet in any stable release TTBOMK.
-- \ Rommel: “Don't move, or I'll turn the key on this can of Spam!” | `\ —The Goon Show, _Rommel's Treasure_ | _o__) | Ben Finney
_______________________________________________ Koha-devel mailing list Koha-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/koha-devel _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
Of course, why didn't I see that before. Of course AD doesn't have the uid attribute. There is a free download from Microsoft, Services For Unix, which adds this and a few other attributes. Look into that. On Fri, 2009-07-17 at 11:41 -0500, Library Guy wrote:
Ben, I'm testing the latest dev (3.01.00.037). LDAP authentication against our MS AD LDAP works properly using auth_by_bind, but if I enable either <replicate> or <update>, as soon as a new patron is authenticated Koha produces this error:
Can't call method "exists" on an undefined value at /home/koha/kohaclone/C4/Auth_with_ldap.pm line 168, <DATA> line 253.
The offending line 168 in Auth_with_ldap.pm is:
$userldapentry->exists('uid'); # This is bad, but required! By side-effect, this initializes the attrs hash.
I suspect it has something to do with uid not being a part of our schema, but I don't know where to go from here or how to help the developers address it.
Thanks!
James
On Wed, Jul 15, 2009 at 8:06 PM, Ben Finney<ben+koha@benfinney.id.au> wrote:
Dobrica Pavlinusic <dpavlin@rot13.org> writes:
Idea is simple: instead of having single administrative user which can do LDAP compare to check password, we just bind as user who is trying to login.
Yes, this is the correct way to authenticate against an LDAP directory. As you say, it requires no privileged access to the directory beyond that granted to the authenticating user.
This normal behaviour (bind as authenticating user) is available in the current development tree of Koha 3.x, and is not yet in any stable release TTBOMK.
-- \ Rommel: “Don't move, or I'll turn the key on this can of Spam!” | `\ —The Goon Show, _Rommel's Treasure_ | _o__) | Ben Finney
_______________________________________________ Koha-devel mailing list Koha-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/koha-devel _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha.org http://lists.koha.org/mailman/listinfo/koha-devel -- Michael Hafen Systems Analyst and Programmer Washington County School District Utah, USA
for Koha checkout http://development.washk12.org/gitweb/ or git://development.washk12.org/koha
participants (8)
-
Ben Finney -
Christopher Curry -
Dobrica Pavlinusic -
Galen Charlton -
Joe Atzberger -
Library Guy -
Michael Hafen -
Sai bhalaji Dhinakaran