Open Source Integrated Library System

Evergreen on IRC

#evergreen Logs for Wednesday, December 23rd, 2009

< Tuesday, December 22nd, 2009Raw Log FileThursday, December 24th, 2009 >
#TimeNickMessage
#07:48:13sfortin has joined #evergreen
#07:54:33mck9 has joined #evergreen
#08:10:46ToPdOg has quit IRC
#08:25:43Dyrcona has joined #Evergreen
#08:38:09DyrconaYesterday I proposed using libcrypto's digest implementation for sha1 in libopensrf on the mailing list.
#08:38:43DyrconaToday, I have a patch against trunk, but I have a question about submitting it because it adds two new files: digest.h and digest.c.
#08:39:02DyrconaI'm not sure how I should add the new files in the patch/attachment.
#08:44:39berickDyrcona: I don't think it's unreasonable to send the patch plus any new files as their own attachments w/ some description of where they need to go
#08:45:25Dyrconaok. should i just send them to the dev list or does anyone else want to see them first?
#08:45:52berickdev list is best
#08:46:13DyrconaI should probably try it on our opensrf server, first.
#08:46:22berickthat would be good :)
#08:46:31Dyrconai've made sure that it compiles, but I've not run it, yet.
#08:46:40berickunless your just submitting it as a proof of concept.. right
#08:47:08berickDyrcona++
#08:47:23Dyrconacould be proof of concept, but I think overall using libcrypto is better than having our own implementations of sha1 and md5.
#08:47:53berick agrees
#08:48:33DyrconaI'm out of the office today, so it could be tomorrow or early next week before I can submit the patch.
#08:51:25berickmck9: ^--
#08:52:38bshum has joined #evergreen
#08:52:50mck9berick: are you pinging me?
#08:53:00bshum has quit IRC
#08:53:13bshum has joined #evergreen
#08:53:14berickmck9: just making sure you saw the converstaion above, since you were looking into the mde5/sha code
#08:54:25mck9Yeah, well it may be a while before I do much with it. For the foreseeable future we can expect to keep the existing sha1 code, unless you want me to escalate it.
#08:55:21mck9Now if the proposed patch is a replacement of the sha1 code, then that's another matter.
#08:56:40berickmck9: i think that (patch == replacemnet) is a distinct possibility
#08:56:55jeffheh. i just responded to that thread on -dev
#08:59:22mck9I didn't know i was stirring up a hornet's nest. Thanks jeff -- incompatibility with the GPL is a deal-breaker.
#08:59:27jeffOpenSSL apparently has GPL incompatabilities. The OpenSSL FAQ suggests that if you are developing open source software that uses OpenSSL, you consider licensing your software under a license other than the GPL.
#09:00:00berickwow
#09:00:13jeff(they also suggest as an alternative adding an exemption clause to your GPL license statement)
#09:00:26jeffand "If you are using GPL software developed by others, you may want to ask the copyright holder for permission to use their software with OpenSSL."
#09:00:38jeffThis is how things like gnutls came about.
#09:00:53jeffhttp://www.openssl.org/support/faq.html#LEGAL2
#09:00:53jeffhttp://www.gnome.org/~markmc/openssl-and-the-gpl.html
#09:01:05jefffor background/details if anyone cares.
#09:11:24mck9From looking at jeff's links, it might be possible to squeeze through a legal chink and use OpenSSL, but it's a very dodgy thing. I don't think we should touch it if there's any way to avoid it.
#09:12:57phasefx_KISS
#09:14:23DyrconaI don't see it being a problem as long as opensrf does not include openssl itself.
#09:14:39DyrconaFrom the openssl FAQ: On many systems including the major Linux and BSD distributions, yes (the GPL does not place restrictions on using libraries that are part of the normal operating system distribution).
#09:15:30mck9Then we would restrict EG to systems that already provide the OpenSSL library.
#09:16:05DyrconaOpenSSL has to be there already or most of the components don't work anyway.
#09:17:29DyrconaAfter all, you're already expecting Apache to provide SSL. Postrgres practically requires SSL for remote connections. Several jabber servers require it, too.
#09:18:38berickof course, we can also consider the fact that everything is (technically) working just fine right now ;)
#09:18:42berick devils advocate
#09:19:17mck9Also the "special exception" in the GPL may be only in version 3. If so, then we would have to make EG a GPL v3-only project, instead of v2-or-v3-at-your-option.
#09:19:17jeffberick: surgeons general? ;-)
#09:20:01jeffmck9: the exemption in question is present in GPLv2
#09:20:19mck9Okay thanks, I hadn't checked yet
#09:20:50mck9Other components may require SSL, but that doesn't mean they require OpenSSL specifically.
#09:20:54jeffeither change introduces an additional dependency, but reduces reinventing the wheel.
#09:21:31jeffin the case of openssl, it's another dev package to install (i don't think anything needs the dev package yet), and a potential licensing gotcha.
#09:21:43jeffin the case of mhash, it's another dev package and it's LGPL'd
#09:21:54jeffi don't know how easy the code against either is.
#09:23:23phasefx_for Debian, we'd have to include a GPL exception if we link against openssl
#09:23:47mck9If mhash is LGPL we can include its source, or a subset thereof, in our own distribution, the way we currently include the sha.c file. No need to load a dev package.
#09:23:57jeffphasefx_: oh? i didn't catch that part.
#09:24:58jeffmck9: yes, an option we wouldn't have with openssl, unless we complied with both of the advertising clauses.
#09:25:37mck9It's mainly the advertising clauses that create the problem, apparently.
#09:25:53Dyrconayep. stupid advertising clauses....
#09:25:58jeffif the dev libs in question are already packaged for all of the distributions that evergreen is supported on, it might be more maintainable in the long run to use those packages. depends on how stable things are.
#09:26:18phasefx_http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=501145 http://lists.debian.org/debian-legal/2002/10/msg00113.html
#09:26:31mck9The GPL says we can't require downstream recipients to comply with an advertising clause, as I understand it.
#09:27:00DyrconaHrm, should I just rework the code to use GNUTLS, then? It should be available on the distros we're aiming at?
#09:27:34phasefx_is libcrypto part of openssl?
#09:27:46DyrconaYes, I believe so.
#09:27:55phasefx_ah, soo desu
#09:29:27Dyrcona is not a big fan of copying implementation code from other projects, particularly libraries.
#09:29:49Dyrcona prefers linking against libraries so he has less implementation to worry about. :)
#09:30:27dbs has joined #evergreen
#09:30:49phasefx_dan the man
#09:30:53phasefx_ bets he hates being called that
#09:30:58mck9Drcona: Agreed. But copying is an option for some and not for others, and I like to keep my options open.
#09:31:02dbs doesn't mind that much
#09:31:38dbs"dan the man who screwed things up" on the other hand... truth always hurts
#09:32:46phasefx_dan with the plan
#09:32:47dbsjeff: licensing concerns? whatever... (apparently that's the thing to say)
#09:33:25jeffphasefx_: wait, dbs is a cylon?
#09:33:32phasefx_supposed to say "whatever" with your inside voice
#09:33:42dbsheh
#09:33:54jeffBY YOUR WHATEVER.
#09:34:52mck9dbs: just before you came in we were discussing licensing issues with OpenSSL.
#09:35:21dbs reads scrollback, favours package linking (or compiling the source package if a package isn't available *ahem* libmemcached *ahem*)
#09:36:16dbsotherwise, I haven't coded against either mhash or libcrypto so have no opinion on the ease of use of either one
#09:37:16dbsjeff++ # by your SUDO
#09:41:33jeffalias whatever,=sudo
#09:42:31Dyrconamhash looks like the way to go in light of the libcrypto license issue.
#09:45:18dbs was peeking around at heimdal just to throw another option on the table, but it might be more complex
#09:46:00gmcharltmiker_++ # twisting tongues with the best of them
#09:48:14dbshttp://www.h5l.org/manual/HEAD/hcrypto/group__hcrypto__evp.html
#09:52:07alxp has joined #evergreen
#09:52:08DyrconaThat looks just like the OpenSSL interface.
#09:52:15moodaepo has joined #evergreen
#09:53:19phasefx_GNU TLS has an OpenSSL compatibility layer, fwiw
#09:56:23dbsDyrcona: ah, that's nice; by complex I meant trying to work out which debian package (if any) one would be able to depend on
#09:59:09DyrconaI'm going to install gnutls on my laptop and try my code with it.--I did check that not only my function compiles, but it gives a desirable result.
#10:00:55dbsphasefx: Dyrcona: IIRC, packages with sophisticated autotools setups can default to linking against gnutls but fall back to libopenssl
#10:01:33dbssame with readline vs libedit and other GPL-compatible vs. GPL-incompatible libraries
#10:02:44phasefx_ was wondering about that, "how sophisticated are we? :)
#10:04:05mck9FWIW I'm writing a summary of this discussion and will be sending it to the dev list once the discussion settles down, or I get tired of it. Some people may be on holiday and would otherwise miss it.
#10:07:09djfiander has joined #Evergreen
#10:07:38dbsan example of readline vs. libedit (the example I was thinking of, actually): http://svn.php.net/viewvc/php/php-src/trunk/ext/readline/config.m4?revision=292081&view=markup
#10:07:42dbsphasefx: not very :)
#10:09:37dbsdjfiander: SIP was holding up reasonably well for a few tests yesterday, shock and surprise, although the 3M guy told me that SIP2 over raw sockets doesn't use username/password on "the mythical beast" systems, which sounds insane
#10:09:50dbsdjfiander++
#10:10:07djfianderthat is whacked.
#10:10:42djfianderone can only hope that one has to register the IPs of the clients with the ILS, or something
#10:10:46dbshe actually had me set up the system and try connecting without a username / password to begin with
#10:11:59dbsno hope here, only despair :)
#10:12:55dbsmck9++ # sounds like a good idea
#10:13:13djfiandersometimes the appropriate response to being told to "be generous in what you accept" is, "Fuck no. get the protocol right, asshole."
#10:15:51dbsmy despair was doubled by the tech guy strongly suggesting that we keep the administrative passwords on the self-check machine the defaults
#10:16:06atzdbs: that's why it's raw
#10:16:14mck9djfiander: Another way to translate "be generous in what you accept" is "change the rules arbitrarily for your own convenience."
#10:16:48dbsand then redoubled by our computer services person suggesting that we create a shared VPN account for which all of the circ staff would have the username / password
#10:17:40atzdbs: welcome to a technology stuck in the era of serial port connectivity.
#10:18:17djfianderdbs: for the admin passwords on the self-check machines. They do have the advantage that they are locked in a cabinet, and in most libraries would not be managed by IT staff but by branch staff. So, depending on physical security isn't a big issue.
#10:18:23dbsatz: seriously? it's bad enough that the telnet option passes cleartext
#10:18:50djfianderdbs: the protocol was designed for hardline connections. security isn't a big deal ;-)
#10:19:17dbs(yes, I know that's the definition of telnet)
#10:20:19atzdbs: yeah, the 3M emulator/test apparatus was written in 1997 on top of NT4 and a foxpro database.
#10:20:32dbsanyhoo, raw SIP2 over port-forwarded connection is working nicely, if a tad slow
#10:21:06djfianderfortunately self-check is neither particularly time sensitive nor a heavy network load.
#10:25:36dbsatz: weird. IIRC, the internet existed in 1997. oh well, I'll shut up.
#10:28:17Dyrconadbs: For most commercial ILS vendors, the internet still doesn't exist....
#10:28:41godzilla8nj has joined #evergreen
#10:29:17DyrconaWell, GNUTLS is not working for me. The OpenSSL compatibility lacks a few things that I used from OpenSSL.
#10:29:27dbs heads off to test & document the self-check machine for staff
#10:30:04godzilla8njcan anyone please help: i've been struggling for days to get opensrf 1.2 installed. have finally traced it back to ejabberd failing, but i have no idea how to fix it.
#10:34:36atzgot error msgs?
#10:35:59godzilla8njE(<0.314.0>:ejabberd_listener:106) : Failed to open socket for {7777...
#10:36:35godzilla8nj(from /var/log/ejabberd/ejabberd.log)
#10:43:13godzilla8njwithout a clue as to what i'm talking about, i think it has to do with the erlang node name. per step #5 of http://www.open-ils.org/dokuwiki/doku.php?id=opensrf:1.2:install i set it to ejabberd@localhost but in /var/log/ejabberd/ejabberd.log i see an early error that says it's set to ejabberd@(mydomain.com)
#10:48:17moodaepogodzilla8nj: What do you see in /etc/default/ejabberd?
#10:50:15dbs has quit IRC
#10:50:52lisppaste3godzilla8nj pasted "/etc/default/ejabberd" at http://paste.lisp.org/display/92534
#10:51:50sfortin has quit IRC
#10:56:03lisppaste3moodaepo annotated #92534 "my /etc/default/ejabberd" at http://paste.lisp.org/display/92534#1
#10:57:09lisppaste3moodaepo pasted "ejabberd install info" at http://paste.lisp.org/display/92535
#11:00:27dbs has joined #evergreen
#11:03:53godzilla8njis there a command that erlang requires in order to accept the adjusted node name from /etc/default/ejabberd?
#11:24:30sfortin has joined #evergreen
#11:42:16dbsdjfiander: hey... getting a checksum error on patron summaries or checkouts for titles containing accents. counting bytes instead of characters or something?
#11:42:30djfianderhmm
#11:42:43dbssame problem whether I tell the self-check to use ANSEL, Latin-1, or UTF-8
#11:43:02djfianderthat came up back in the PINES pre-launch days with a spanish Harry Potter book. There's a unit test for it.
#11:43:05dbs(I assumed that switching from latin-1 to UTF8 would fix the problem, but no...)
#11:43:23dbsfortunately there's almost no french content here!
#11:43:32djfianderodd
#11:43:44djfiandercan you build a test case and send it to me?
#11:43:59djfianderI'll look at it over the break.
#11:44:08djfiander(and bill Equinox) ;-)
#11:44:15dbsdjfiander: I will try
#11:44:29dbsmerci, djfiander
#11:44:49djfiander*think*
#11:45:58djfiandersend me the error log message too, if you can.
#11:46:05dbsI'll try to dig into the SIP2 code a bit further, it will probably benefit me in the long run
#11:46:45dbssure, I've got the logs running at debug level on the self-check unit (which is how I can see it's a checksum error) and will try to sync that up with our EG logs
#11:48:40brendan_ga has quit IRC
#11:49:43dbs has quit IRC
#12:03:35godzilla8nj has quit IRC
#12:14:57dbs has joined #evergreen
#12:15:53DyrconaI have a working char *shahash(const char *str) using gnutls's sha1 implementation.
#12:16:05Dyrconait gives the same results that I got using OpenSSL.
#12:16:16dbsHmm. vim, at least, says that the encoding of SIPtest.pm is latin-1
#12:16:34dbsbut I've gotta go and bake a carrot cake for A the younger's birthday
#12:16:39dbsDyrcona++
#12:16:54berickdbs: birthday is today?
#12:16:57DyrconaI'll send a patch to the list tomorrow after I get a chance to test it on our server.
#12:17:00dbstomorrow
#12:17:01berickDyrcona++
#12:17:20dbsfamily is here to celebrate tonight, though, so we go with what we've got :)
#12:17:47dbshe had 15 minutes to spare before he would have been obligated to be named "jesus"
#12:17:51djfianderdbs check the encoding on the test data file too rmemeber.
#12:18:21berickdbs: well, happy bday to the little guy
#12:18:32dbsdjfiander: SIPtest.pm is where $item_diacritic_title is defined, though
#12:18:47djfianderah. It's been a while since I looked at that stuff. oops
#12:18:52dbsberick: thanks! and a merry christmas to everyone else on or off-channel
#12:19:29dbsdjfiander: yeah. but pines has it working somehow, so it's gotta work
#12:19:43djfianderexactly.
#12:20:01dbsokay, really going. Before I become a victim of spousal violence.
#12:20:06dbs has quit IRC
#12:20:06djfianderbecause the same thing happened there: connected to an appliance. appliance started reporting problems.
#12:44:48djfiander has left #Evergreen
#13:19:30Dmagick has joined #Evergreen
#13:54:31bshum has quit IRC
#14:01:04phase_bb has joined #evergreen
#14:32:07gdunbar has quit IRC
#15:00:05alxp has quit IRC
#15:09:37jeffBy my understanding, and by a quick scan of the overdue fine generation code in 1.4, there's no current way to put a per-patron ceiling on how much a patron will be fined, there's just the per-circ maximum.
#15:12:27jeffIs this correct, and has any work/thought gone into a ceiling on how much a patron will be fined, which could stop fines early if they have a large number of items out?
#15:13:37jeff(If you have a 40 item limit and want $40 to be the max a patron could be charged for overdues, you could set a $1 per item/circ limit on the overdue rule, but then a patron with only one item long overdue would only owe $1.)
#15:14:11jeffThis seems to be the kind of thing that has come up before. I'll do some searching, but would appreciate any feedback in the meantime.
#15:32:29dchristens has joined #evergreen
#15:43:28dchristensIt's been almost a year since I did a batch load of bibs/items... followed my old notes, bibs loaded fine, copies look ok in the db (used the staging_table approach). Searching in opac finds the bibs, and shows # copies (in "title results") for local library system, but no copy information in "title details"...
#15:43:54dchristensIn staff client, I can bring up items by barcode. Any thoughts on where to start poking?
#15:52:01dchristensHeh. I guess folks are busy :-) Happy holidays, all!
#16:13:46dchristens has left #evergreen
#16:17:29finnx has quit IRC
#16:18:22finnx has joined #evergreen
#16:20:37sfortin has quit IRC
#16:30:46leed has quit IRC
#16:48:13_bott_ has left #evergreen
#17:49:24mck9 has quit IRC
#18:12:02Dyrcona has quit IRC
#22:35:43alxp has joined #evergreen
< Tuesday, December 22nd, 2009Raw Log FileThursday, December 24th, 2009 >