Mike Rylander [Tue, 13 Sep 2016 21:02:44 +0000 (17:02 -0400)]
LP1579144: Make client_location_code a hard switch, and default to original behavior
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Tue, 13 Sep 2016 20:37:22 +0000 (16:37 -0400)]
LP1579144: Let admin decide on the precedence of the location codes per institution
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 10 Aug 2016 12:47:08 +0000 (08:47 -0400)]
LP1579144: On Login, Send Location to ILS
In addition to supporting client-side location code for login, allow
a fallback value to be set in the configuration file, per account.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Boyer [Fri, 6 May 2016 16:42:30 +0000 (12:42 -0400)]
LP1579144: On Login, Send Location to ILS
If the CP field is sent with message 93, include
that string with the login account in case the ILS
can make use of it.
Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Tue, 16 Jun 2015 15:38:36 +0000 (15:38 +0000)]
LP#
1180468: update license statement to GPL v2 or later
In 2011, all current contributors and copyright holders
to SIPServer approved switching the license from GPLv2
to GPLv2 or later:
<http://libmail.georgialibraries.org/pipermail/open-ils-general/2011-April/004657.html>k
In 2013, contributor Jeff Godin also confirmed approval of
the license change:
https://bugs.launchpad.net/sipserver/+bug/
1180468/comments/2
All subsequent contributors have either already approved of the
license switch or have done work-for-hire coding for organizations
that have approved the change.
Consequently, this patch adjusts all references to the GPLv2
to specify that the current license is GPLv2 or later. This
patch also adds copyright and copying statements to a few
files that lacked them.
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jeff Godin <jgodin@tadl.org>
Galen Charlton [Fri, 12 Jun 2015 19:01:47 +0000 (19:01 +0000)]
LP#
1464748: don't toss terminal account information prematurely
This patch ensures that when the PreFork Net::Server personality
is in use, terminal login information is not prematurely cleared
between *_transport() and sip_protocol_loop(). This, in conjunction
with the patch for bug
1463459, fixes a problem where a SIP
client that connects, issues a 93 request, then a 99 request, could
get an incorrect 98 response.
To test fixes for
1463459 and
1464748:
[1] Set up a SIP configuration with at least two institutions
with different capabilities and at least one account
for each institution. Assume that account A1 is for
institution I1 and A2 for I2.
[2] Prior to applying the patches for
1463459 and
1464748,
start the SIP server and try the following sequence:
a. 93 to log in as A2
b. 99 to get SC status
c. Note that the 98 response has values for I1, not I2
[3] Apply the patches and restart SIP, then repeat the steps
in [2]. This time, the 98 response should have the
values for I2.
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Thomas Berezansky [Mon, 8 Jun 2015 20:57:11 +0000 (16:57 -0400)]
LP#
1463459: make SC Status handler recognize logged-in SIP session
Due to MsgType not having an account field, handle_sc_status should
be checking $server, not $self, for account information. As a result
of checking the wrong field handle_sc_status always assumes the
session is not logged in and returns status based on the first account.
When this account is not flagged for some capabilities and the client
expects/needs those capabilities the client may determine it can't
function and disconnect, even though the login actually has those
capabilities. This patch fixes that; it also adjusts how
$server->{account} is checked (definedness, not existence).
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Thomas Berezansky [Fri, 28 Mar 2014 13:27:56 +0000 (09:27 -0400)]
LP#
1298985: Protect against bad summary types
Ensure that if we are asked for summary information in Patron Information that
we have any form of definition for it *and* we have code to call. If neither
case is true pretend they didn't ask for any to begin with.
Testing notes
-------------
Here is an example of the sort of request that, prior to this patch,
could cause a SIPServer backend to crash:
6300020150615 111700 Y AOUinst|AAuser|
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bill Erickson [Mon, 23 Feb 2015 22:23:14 +0000 (17:23 -0500)]
LP#
1425135 Log message duration w/ millisecond granularity
Log message processing duration with finer granularity. This is
especially useful for diagnosing SIP speed issues for automated
materials handling, where small changes in speed can have a big impact.
New message logs at DEBUG level.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Mike Rylander [Wed, 25 Mar 2015 15:34:17 +0000 (11:34 -0400)]
Typo fix for inline documentation (cut/paste hazard)
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 11 Sep 2013 19:52:00 +0000 (15:52 -0400)]
LP#
1339190 Add support for the "Multiplex" personality
We use Net::Server::Multiplex to reduce resource consumption. In
this mode, SIPServer will maintain connection state in the main
listening process and fork workers as needed to handle individual
requests.
Initial implementation by Mike Rylander, with a conversion from
File::Queue to Memcache, and LOTS of debugging, by Bill Erickson.
Some highlights:
* A fork fence for max concurrent in-flight requests
* Allow the ILS to save state in IO::Multiplex mode
* Optimistic login using fork-and-check
When a SIP child process is spawned to handle a new connection login,
the pending login is tracked in the parent process (by PID) and the
child indicates to the parent that the login has succeeded by storing
login success/failure plus some state information in memcache. Any time
the parent wakes up to process a message, it checks for completed logins
so they can be resolved as OK in the parent and the state information
is extracted and stored for future conversation with the resolved client.
* Let workers hang around for a bit for higher-rate clients
For some clients, such as AMH (sorters), the per-message connections
cause too much latency. So, instead, we'll let their backends hang
around for a while. This is controlled by a new attribute on the
server-params element, worker-keepalive, as a peer to the personality
value. This value can also be set on the institution and login elements
to support finer-grained keepalive tuning.
This is measured in seconds and the default is 5. A value of 0 here
will disable this feature altogether.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Blake GH <blake@mobiusconsortium.org>
Mike Rylander [Wed, 11 Sep 2013 17:39:54 +0000 (13:39 -0400)]
LP#
1339190 Unroll recursion-based processing chain
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Galen Charlton [Mon, 7 Jul 2014 19:55:05 +0000 (12:55 -0700)]
LP#
1338761: add support for Relais extensions to message 24
The Relais SIP2 client expects that the Patron Status Response
(msg 24) will contain certain non-standard fields that are more
properly included in the patron information response:
- patron home address
- patron email
- patron home phone
In addition, and contrary to the specification, Relais expects that
the variable fields in the response will be given in the order that
they appear in the spec.
This patch ensures that the Patron Status repsonse emits the
institution ID, patron ID, and personal name in that order. It also
adds a new institution option, relais_extensions_to_msg24, to make
the response includes the additional fields. For example:
<relais_extensions_to_msg24 enabled="true" />
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Mon, 7 Jul 2014 19:01:41 +0000 (12:01 -0700)]
LP#
1338731: support clients that send 99 then 93 when starting a raw connection
This patch adds the option, for raw transports, to allow clients
to send the SC Status (99) message first, then the Login (93)
message. It's arguable whether such behavior is standard or not,
but at least one SIP2 client (Relais), inflexibly requires such
behavior.
This option is enabled using the service-level attribute
"allow_sc_status_then_login".
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Mike Rylander [Mon, 4 Aug 2014 13:26:56 +0000 (09:26 -0400)]
LP#
1042850: Add TCP-level keepalive
Some client TCP stacks fail to actually close down their sockets
all the way, leading to a pile up of stale backends that can never
go away.
So, we will use Linux's TCP_KEEPALIVE tuning capabilities to probe
the connection on a regular basis. This should detect the half-
closed situation and let the backend shut itself down.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Thomas Berezansky [Tue, 28 Aug 2012 16:50:47 +0000 (12:50 -0400)]
Timeout in protocol loop
To (hopefully) prevent dead connections from hanging around.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Thomas Berezansky [Wed, 18 Sep 2013 17:51:14 +0000 (13:51 -0400)]
LP#
1227273: Clear account info at start and end of connection
Otherwise re-used processes may re-use account information.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jason Stephenson [Tue, 23 Oct 2012 14:36:48 +0000 (10:36 -0400)]
LP#
1070470: Limit variable fields to 255 characters.
The SIP2 protocol document specifies that variable fields are to be from
0 to 255 characters in length, not counting the field identifier or the
delimiter.
This branch adds some defensive coding to Sip::add_field to truncate any
field values that are longer than 255 characters to 255 characters before
adding them to the response.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Colin Campbell [Wed, 21 Oct 2009 08:54:18 +0000 (09:54 +0100)]
LP#
1180479: Koha Bug 3723: Correct return of Institution in Patron Info Resp
While the comment correctly notes that the order of variable length
fields is not fixed some units expect mandatory fields to
follow the sequence in the protocol definition and fail
parsing otherwise. Moved institution id to its expected
place in the patron information response.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Conflicts:
Sip/MsgType.pm
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jason Stephenson [Tue, 23 Oct 2012 17:23:14 +0000 (13:23 -0400)]
LP#
1070466: Pack, then unpack total in debug_split_print.
The checksum needs to be a 16bit value, so we pack, then unpack the
checksum total in debug_split_print to guarantee that. Some longer
messages have generated 32-bit checksums.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jason Stephenson [Tue, 23 Oct 2012 14:52:21 +0000 (10:52 -0400)]
LP#
1070466: Print to STDERR in Sip/Checksum::debug_split_print.
debug_split_print was printing to STDOUT, which goes to the client. This
causes the client to hang up because it is not receiving the expected
response from the server. Explicitly printing to STDERR in this
function resolves this and you can continue your session while also
debugging checksum calculations.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jeff Godin [Wed, 2 Jul 2014 15:36:01 +0000 (11:36 -0400)]
LP#
1336825 Fix log level on find_service warning
Sip::Configuration::find_service tries to log a warning when it does
not find a matching service defined for a given
address/port/protocol tuple.
This uses the correct LOG_WARNING log level, ensuring that the
desired message is logged.
Thanks to Jason Boyer for catching this!
Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jeff Godin [Wed, 28 May 2014 20:12:15 +0000 (16:12 -0400)]
Revert "LP#
1296937: (follow-up) $ids_only is now the last parameter for ->charged_items"
This reverts commit
c97d64412bc12a8df1a8734dcdb48b2bfba6362d.
Signed-off-by: Jeff Godin <jgodin@tadl.org>
Galen Charlton [Tue, 20 May 2014 15:52:20 +0000 (08:52 -0700)]
LP#
1296937: (follow-up) $ids_only is now the last parameter for ->charged_items
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Thomas Berezansky [Thu, 23 Jan 2014 17:05:08 +0000 (12:05 -0500)]
LP#
1296937: Call _items functions with ids_only parameter
So that we don't do full lookups of titles when we only care about
counts.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bill Erickson [Wed, 26 Dec 2012 18:53:39 +0000 (13:53 -0500)]
Set langauge value for patron info response
Ensure the 3-char language field has a value (defaulting to '000') in
the patron info response. Without the value, there is a 3-char offset
in the response message fixed fields.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jeff Godin [Tue, 19 Jun 2012 18:12:56 +0000 (14:12 -0400)]
Derefrence fixed fields in handle_fee_paid
Properly dereference fixed fields in handle_fee_paid so that the ILS layer receives fixed fields fee type, payment type, currency type
Fixes LP
1015227
Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Thomas Berezansky [Tue, 18 Oct 2011 19:08:50 +0000 (15:08 -0400)]
Return proper renewal OK field on checkout fail
This will allow (hopefully) the self check to know that a renewal was
attempted on checkout failure (if the flag is set).
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Jason Stephenson [Thu, 30 Jun 2011 21:02:43 +0000 (17:02 -0400)]
Support "chargeable loans" via SIP2.
Pass FID_FEE_ACK to checkout message in MsgType.pm.
Also return fee info when checkout fails, so patron can
acknowledge the fee.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Thu, 30 Jun 2011 18:39:49 +0000 (14:39 -0400)]
Replace failing unit tests with 17 valid checkout tests
These 17 checkout tests came from a 3M Vseries checkout running with the
UTF8 encoding set.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Jason Stephenson [Thu, 30 Jun 2011 18:02:47 +0000 (14:02 -0400)]
AZ field also needs to be in the output message.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Thu, 23 Jun 2011 19:59:19 +0000 (15:59 -0400)]
Checksum calc needs to include the 'AZ' portion
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Dan Scott [Tue, 21 Jun 2011 02:11:38 +0000 (22:11 -0400)]
Convert checksum to hex value inside checksum() function
Rather than returning the integer value of the checksum and converting
that to a hex value only when it is appended to the returned message,
return the hex value from checksum() itself. This enables the unit tests
for Sip::Checksum to be run meaningfully.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Wed, 15 Jun 2011 19:22:09 +0000 (15:22 -0400)]
Restore Unicode checksum algorithm
This checksum algorithm was verified to work with
3M V-series self-check machines running with encoding
Unicode, which is important to sites with large
collections of non-English materials.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Dan Scott [Fri, 17 Jun 2011 17:50:26 +0000 (13:50 -0400)]
encode to UTF8 consistently
In read_SIP_packet(), we decode the incoming packet as UTF8 and then
encode it again before writing to the log, but not before returning the
message. We were instead encoding the incoming message in a subsequent
call, which is not the recommended Perl practice of decoding input and
encoding output.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Dan Scott [Wed, 15 Jun 2011 19:17:31 +0000 (15:17 -0400)]
Prevent corruption of SIP messages in logs
Non-ASCII characters were not being decoded before being
written to the logs, thus resulting in heinous corruption
in the logs. decode_utf8() is our friend.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Thomas Berezansky [Sat, 21 May 2011 01:11:20 +0000 (21:11 -0400)]
Item extra ILS-defined fields
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Thomas Berezansky [Fri, 29 Apr 2011 20:45:55 +0000 (16:45 -0400)]
Support ILS-defined extension fields
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Jason Stephenson [Tue, 17 May 2011 18:01:08 +0000 (14:01 -0400)]
Restore the debug code that was deleted in a previous commit,
per Joe Atzberger's suggestion.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Jason Stephenson [Thu, 12 May 2011 19:27:30 +0000 (15:27 -0400)]
Fix the properties of the Fee Paid message in MsgType.pm so that
the server actually parses the messages.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Jason Stephenson [Thu, 12 May 2011 19:26:17 +0000 (15:26 -0400)]
Fix checksum generation so that it actually works with clients.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Thomas Berezansky [Thu, 31 Mar 2011 13:21:13 +0000 (09:21 -0400)]
Check for sip_expire before trying to use it.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Jason Stephenson [Thu, 31 Mar 2011 13:19:52 +0000 (09:19 -0400)]
Add FID_PATRON_EXPIRE where required for export.
Thomas Berezansky [Thu, 31 Mar 2011 12:39:28 +0000 (08:39 -0400)]
Patron Expiration in PA
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Joe Atzberger [Thu, 7 Oct 2010 19:48:56 +0000 (19:48 +0000)]
Allow whitespace "lines" to be skipped during login
This keeps clients who might have bad line-endings in the game.
In particular, this would help systems where an expect-driven login
process might be different than the rest of the client interaction.
Joe Atzberger [Thu, 7 Oct 2010 19:40:38 +0000 (19:40 +0000)]
Die if no listeners in config, give better log messages
Also tighten debug messages: one warning at the end listing all failed is good enough.
Certainly better than just throwaway debug messages listing what we are going to try.
Otherwise if we succeeded, we don't need to know about the ones that failed, just
report the successful one.
Joe Atzberger [Thu, 7 Oct 2010 19:34:54 +0000 (19:34 +0000)]
Perltidy and cleanup.
Joe Atzberger [Fri, 1 Oct 2010 23:21:17 +0000 (23:21 +0000)]
VERSIONing, it's good for you.
Joe Atzberger [Fri, 1 Oct 2010 19:57:55 +0000 (19:57 +0000)]
Extension for exposing patron internal ID via Patron Information
Used by some AMH systems
Joe Atzberger [Thu, 30 Sep 2010 23:31:19 +0000 (23:31 +0000)]
Spec compliance on line-endings
\r not CRLF
Joe Atzberger [Fri, 24 Sep 2010 01:34:17 +0000 (01:34 +0000)]
An extra test from CASSIE
Note: checksumming is still NOT recommendedl
Joe Atzberger [Wed, 30 Jun 2010 17:32:33 +0000 (17:32 +0000)]
Adjust comment
Joe Atzberger [Wed, 23 Jun 2010 17:54:19 +0000 (17:54 +0000)]
Item Info extensions and general cleanup
Joe Atzberger [Wed, 23 Jun 2010 17:40:24 +0000 (17:40 +0000)]
Cleanup and adjustment
bad_barcode is is better than berick for clarity.
Joe Atzberger [Wed, 23 Jun 2010 17:38:11 +0000 (17:38 +0000)]
Update to current default EG values.
Joe Atzberger [Tue, 22 Jun 2010 21:43:53 +0000 (21:43 +0000)]
Startup and shutdown scripts
Adapted from the versions I wrote for Koha SIP
Joe Atzberger [Tue, 22 Jun 2010 15:55:33 +0000 (15:55 +0000)]
Perltidy/whitespace cleanup
Joe Atzberger [Tue, 22 Jun 2010 15:38:30 +0000 (15:38 +0000)]
Tiny comment
Joe Atzberger [Fri, 11 Jun 2010 13:39:04 +0000 (13:39 +0000)]
Disable checksums in tests
Holds test disabled by default (for evergreen)
Joe Atzberger [Thu, 3 Jun 2010 20:45:14 +0000 (20:45 +0000)]
Propagate $inst_id to checkout handler
Needed for holds routing logic
Joe Atzberger [Tue, 1 Jun 2010 18:51:28 +0000 (18:51 +0000)]
At least attempt to use the same formatting....
Joe Atzberger [Tue, 1 Jun 2010 18:50:39 +0000 (18:50 +0000)]
Catch undef parameter (avoid warning/failure on substr)
Joe Atzberger [Tue, 1 Jun 2010 18:00:53 +0000 (18:00 +0000)]
Use common vars from SIPtest (stop hardcoding individual tests)
Joe Atzberger [Tue, 1 Jun 2010 17:57:57 +0000 (17:57 +0000)]
Whitespace and stylistic cleanup only.
Joe Atzberger [Tue, 1 Jun 2010 17:51:32 +0000 (17:51 +0000)]
Use more of SIPtest.pm exported values, avoid hardcoding
Joe Atzberger [Tue, 1 Jun 2010 17:50:35 +0000 (17:50 +0000)]
Not an Exporter and not implemented
Joe Atzberger [Tue, 1 Jun 2010 17:48:24 +0000 (17:48 +0000)]
Avoid undef warning, provide lanuage failover to 000 (unknown/default)
Joe Atzberger [Tue, 1 Jun 2010 17:48:07 +0000 (17:48 +0000)]
Pure stylistic and whitespace changes
Joe Atzberger [Tue, 1 Jun 2010 17:45:03 +0000 (17:45 +0000)]
Failover to language '000' (unknown/default)
Joe Atzberger [Fri, 28 May 2010 18:38:07 +0000 (18:38 +0000)]
Tighter indent
Joe Atzberger [Fri, 28 May 2010 18:29:55 +0000 (18:29 +0000)]
Executable python script
Joe Atzberger [Mon, 24 May 2010 22:52:21 +0000 (22:52 +0000)]
Checksum computation overhaul
This adds advanced debugging of checksum computation.
Note: good sample data is lacking. I think most of the actual
checksum lines included in the test are questionable. The only
one that computes accurately seems to be the example from the
3M SIP Developers Guide that specifically addresses checksum
computation. The others from the same guide seem invalid!
I think the debugging output suggests the implementation is
consistent with the specified instructions, despite unavailability
of sample data to confirm.
Joe Atzberger [Mon, 24 May 2010 22:51:27 +0000 (22:51 +0000)]
Debug output capability
Joe Atzberger [Mon, 24 May 2010 22:50:58 +0000 (22:50 +0000)]
whitespace cleanup
Joe Atzberger [Wed, 12 May 2010 22:07:36 +0000 (22:07 +0000)]
Extra read_it catches telnet confirmation prompt
Joe Atzberger [Wed, 12 May 2010 21:49:47 +0000 (21:49 +0000)]
Tests are executable
Joe Atzberger [Wed, 12 May 2010 16:15:25 +0000 (16:15 +0000)]
Robust string cleaning and flexible CRLF from Socket
Joe Atzberger [Wed, 12 May 2010 15:54:05 +0000 (15:54 +0000)]
Simple test showing telnet vs. RAW handling.
Joe Atzberger [Tue, 11 May 2010 15:25:01 +0000 (15:25 +0000)]
Cleanup and more paranoid whitespace filtering
Joe Atzberger [Tue, 11 May 2010 04:55:33 +0000 (04:55 +0000)]
Kill useless sub _count_tests
Joe Atzberger [Tue, 11 May 2010 03:09:29 +0000 (03:09 +0000)]
Correct log message: Sip::MsgType::_initialize
not Sip::MsgType:_initialize (one colon)
Joe Atzberger [Tue, 11 May 2010 01:56:37 +0000 (01:56 +0000)]
Get rid of weird evals, useless use's
There are no scripts committed that use DATA handles, so those
eval blocks are not part of a known application. And that
behavior is super sketchy, especially with multiple scripts, likely
in combination!
Joe Atzberger [Mon, 10 May 2010 22:27:12 +0000 (22:27 +0000)]
LOG_ERROR is not a valid loglevel.
LOG_ERR is.
Joe Atzberger [Mon, 10 May 2010 22:11:18 +0000 (22:11 +0000)]
Append extensions fields to checkin response
Joe Atzberger [Mon, 10 May 2010 22:10:07 +0000 (22:10 +0000)]
Add back FID_HOME_LIBRARY
Joe Atzberger [Mon, 10 May 2010 21:47:59 +0000 (21:47 +0000)]
Patron password is a required field
Alert type is part of the checkin extensions
Joe Atzberger [Mon, 10 May 2010 21:37:13 +0000 (21:37 +0000)]
Add 3M extension constants and structuralize EXPORT_TAGS
Joe Atzberger [Fri, 7 May 2010 01:22:35 +0000 (01:22 +0000)]
LOG_WARN is not a valid syslog loglevel
LOG_WARNING is.
Joe Atzberger [Fri, 7 May 2010 01:09:27 +0000 (01:09 +0000)]
Proper id (copy/paste error)
Joe Atzberger [Fri, 7 May 2010 00:11:08 +0000 (00:11 +0000)]
Script should be executable.
Joe Atzberger [Fri, 7 May 2010 00:09:22 +0000 (00:09 +0000)]
Alarm messages that mean something.
Additional log messages, or log message content borrowed from my work on Koha.
Also some blasts of perltidy.
Joe Atzberger [Fri, 7 May 2010 00:02:24 +0000 (00:02 +0000)]
Allow log ident string to be pulled from ENV
This supports running multiple SIP interfaces on the same box,
even as the same user.
Joe Atzberger [Tue, 4 May 2010 19:21:23 +0000 (19:21 +0000)]
Initial Commit
From openncip.cvs.sourceforge.net:/cvsroot/openncip
.gitignore added
djfiander [Wed, 13 Jan 2010 01:39:30 +0000 (01:39 +0000)]
Dan Scott's patch:
Item status response 18 was returning CJ0|CM0| which are invalid
according to the SIP2 specification; they should either be
18-char fixed fields or not there at all (as they're optional).
It looks like it was just a reversed test. In looking through
Sip/MsgType.pm in that area, I put together a patch which
prevents those fields from being generated if the incoming value
is 0 - and separates out the value assignment & test into
separate statements, which should make the code a bit easier to
read.
As an aside, I believe the same problem was preventing the due
date (AH) from being returned in the item status response.
djfiander [Wed, 13 Jan 2010 01:38:31 +0000 (01:38 +0000)]
Minor fix to UTF8 support
djfiander [Fri, 8 Jan 2010 23:46:07 +0000 (23:46 +0000)]
Various utf8 fixes
djfiander [Thu, 7 Jan 2010 01:24:02 +0000 (01:24 +0000)]
Restore the byte-by-byte checksum method, since the Unicode-aware
version breaks with very new 3M self-check units, according to dbs.
djfiander [Tue, 9 Jun 2009 01:43:07 +0000 (01:43 +0000)]
Fix missing parens in hash dereference
djfiander [Wed, 11 Feb 2009 01:05:04 +0000 (01:05 +0000)]
Log incoming connections promptly
djfiander [Fri, 17 Oct 2008 23:57:52 +0000 (23:57 +0000)]
Only try to strip off the leading newline if there's actually
content in the record at all (eliminate perl 'Use of
uninitialized value' warning).