OpenSRF.git
13 years agoCompleting the JSON perl module move started by patch from Dan Scott.
miker [Mon, 2 Jul 2007 15:14:02 +0000 (15:14 +0000)]
Completing the JSON perl module move started by patch from Dan Scott.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@990 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Dan Scott to move JSON to OpenSRF::Utils::JSON:
miker [Mon, 2 Jul 2007 15:11:15 +0000 (15:11 +0000)]
Patch from Dan Scott to move JSON to OpenSRF::Utils::JSON:

I noticed back when I was first installing OpenSRF that it includes a
module, JSON.pm, that exists at the root level of the package
directories. This would be fine, except it conflicts with a CPAN
module that is also named JSON, which confuses the CPAN installer when
you check for upgrades and conceivably could lead to a broken system.

I suggested to Mike that it would probably make sense to move the
OpenSRF version of the module into the OpenSRF/Utils/ package
namespace, and he agreed. Of course, there are ramifications
throughout the code, so I've tried to be extra-careful in catching and
correcting all of the places where the use of this module surfaces in
both OpenSRF and Evergreen.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@989 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Dan Scott to finish up the removal of bootstrap.conf:
miker [Mon, 2 Jul 2007 14:24:04 +0000 (14:24 +0000)]
Patch from Dan Scott to finish up the removal of bootstrap.conf:

Attached are patches that complete the work that I should have done in
my first patch. I also modify the Makefile in OpenSRF to prevent
bootstrap.conf.example from being copied from the OpenSRF/examples
directory into /openils/conf/.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@988 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar implementing cleaner daemonization; moved daemonizing code...
miker [Sat, 30 Jun 2007 03:14:36 +0000 (03:14 +0000)]
Patch from Scott McKellar implementing cleaner daemonization; moved daemonizing code above worker forking in system boostrapping:

1. As long as I was in the neighborhood, I replaced the error messages
going to stderr with messages going to the logging machinery.

2. I altered the comment just above daemonize(), because the original
was inaccurate.  This function does not change the process title.

3. Pedantic point: I captured the return value of fork() with a pid_t
instead of an int.

4. After the fork, the parent process terminates with _exit()
instead of exit().  That way it doesn't flush any buffers or close
any files.  It also doesn't call any functions registered with
atexit().  In fact it doesn't do much of anything except get out of
the way and let the child process take its place in every way.

5. The child process switches to the root directory, calls setsid()
to create a new session, and freopens the three standard streams
to /dev/null.

I could have changed directories before the fork, or at any of
several other places.  I don't think it makes any difference.

I could also have done the freopens before the fork, but if the
fork failed, I might not have a way to report it (if the logging is
going to stderr for some reason).

Note that I'm not flushing any buffers, apart from the three standard
streams.  There's no need to.  The child process inherits the file
descriptors intact and can do with them whatever it likes.  The
parent may have died, but the estate doesn't have to go through
probate.

I didn't add any error checking for chdir(), setsid(), or freopen().
The first two are unlikely to fail, as is the freopen of stdin.  The
freopens of stderr and stdout could fail, if for example they are
redirected to a full disk.  I don't know how paranoid we need to be.

For more details, see archives starting at

  http://list.georgialibraries.org/pipermail/open-ils-dev/2007-June/001378.html

and also

  http://list.georgialibraries.org/pipermail/open-ils-dev/2007-June/001405.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@987 9efc2488-bf62-4759-914b-345cdb29e865

13 years agocleaning up XML indentation via xmllint; removing bootstrap.conf, which is no longer...
miker [Fri, 29 Jun 2007 15:36:58 +0000 (15:36 +0000)]
cleaning up XML indentation via xmllint; removing bootstrap.conf, which is no longer needed (yay Dan!)

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@986 9efc2488-bf62-4759-914b-345cdb29e865

13 years agotest for failed forker creation before touching struct members
miker [Fri, 29 Jun 2007 14:07:01 +0000 (14:07 +0000)]
test for failed forker creation before touching struct members

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@985 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Dan Scott to move perl OpenSRF core bootstrapping settings into
miker [Fri, 29 Jun 2007 03:55:37 +0000 (03:55 +0000)]
Patch from Dan Scott to move perl OpenSRF core bootstrapping settings into
opensrf_core.xml.  This removes the dependency on the INI style bootstrap.conf
file:

Building on Nathan Eady's suggestion / intention from December
(http://list.georgialibraries.org/pipermail/open-ils-dev/2006-December/000177.html),
here is a patch that enables OpenSRF to avoid duplicating settings in
opensrf_core.xml and bootstrap.conf by having both Perl and C apps
read from opensrf_core.xml

The major limitation is that I've hardcoded /config/opensrf to appear as
the 'bootstrap' section of config for compatibility with the expectations of
the rest of OpenSRF. A broader patch would convert all of those other calls
from config->bootstrap->blah to config->opensrf->blah and make the
siblings of /config/opensrf visible in the config as well, as a more
generally useful approach.

Applied with minor changes to avoid API regressions and remove unneeded code.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@982 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoarg ... Patch from Scott McKellar that:
miker [Fri, 29 Jun 2007 02:24:47 +0000 (02:24 +0000)]
arg ... Patch from Scott McKellar that:

1. When we log messages to a log file, we open and close the file
for each message.  If the open fails, we write a message to stderr
about the failure to open, but we discard the original message that
we were asked to issue.

With this patch, after issuing the message about the failure to
open, we write the original message to stderr.

I believe that this change plugs the last message leak.  Now if we're
asked to issue a message, by golly we're going to issue it, one way
or another.

Of course the user may still not see the message, either through
inattention or, for example, because stderr is redirected to
/dev/null.  In that case the user is just a poo-poo head, and I have
no sympathy for him.

2. In an earlier post I proposed to change osrfLogSetType() so that
it would return the previous log type.  That way one could
temporarily change the log type and then restore it later, without
knowing in advance what to restore it to.

Upon further reflection I decided that the only plausible use for
this trick would be to reroute messages to standard error, and I
might as well provide a mechanism limited to this purpose.

Accordingly I created two new functions and prototyped them in log.h:

osrfLogToStderr() reroutes messages to stderr, and saves the previous
log type internally.

osrfRestoreLogType() restores the log type previously saved, if any.

This interface provides fewer ways for the calling code to mess up
than what I had originally contemplated.  First, the calling code
doesn't have to keep track of the previous log type.  Second, if the
messages are already rerouted, osrfLogToStderr() will do nothing.
One needn't worry about nested reroutings, or maintaining a stack of
log types, or anything of the sort.

If we ever need anything fancier we can build it, but I don't think
we will.

3. Wherever a function takes no parameters, I coded "void" as the
formal parameter list.  Otherwise the compiler doesn't know whether
the function takes parameters or not.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@981 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar:
miker [Thu, 28 Jun 2007 03:14:06 +0000 (03:14 +0000)]
Patch from Scott McKellar:

At one time. if we had trouble reading or parsing the configuration
file, we would issue log messages to complain.  However those log
messages didn't have anywhere to go because, not having loaded the
configuration file, we didn't know where to write the messages.

The earlier patch wrote the same messages to standard error as well
as to the logging machinery, so that they would be visible.

These extra writes are no longer necessary,  With recent changes to
the logging machinery, all log messages will go to standard error
if no other destination has been defined for them.

Accordingly this patch removes two messages, now redundant, that
were being written to standard error.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@980 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoI missed patching the header somehow ... (Part of a patch from Scott McKellar.
miker [Thu, 28 Jun 2007 01:07:55 +0000 (01:07 +0000)]
I missed patching the header somehow ... (Part of a patch from Scott McKellar.
See http://svn.open-ils.org/trac/OpenSRF/changeset/977 for details.)

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@979 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar, finishing off the "log to stderr when all esle fails"...
miker [Tue, 26 Jun 2007 03:04:37 +0000 (03:04 +0000)]
Patch from Scott McKellar, finishing off the "log to stderr when all esle fails" work:

Currently if we have asked to log to a file, but we haven't yet
specified the name of that log file, then any messages issued are
dropped.

With this patch, any messages issued under these conditions will be
rerouted to standard error.  The rerouting is only temporary,
applying only to the current message.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@977 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadding yet more router commands to gather some stats about request counts
miker [Mon, 25 Jun 2007 20:48:18 +0000 (20:48 +0000)]
adding yet more router commands to gather some stats about request counts

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@976 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadding router commands to gather some stats about request counts
miker [Mon, 25 Jun 2007 20:22:34 +0000 (20:22 +0000)]
adding router commands to gather some stats about request counts

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@975 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar to improve default logging:
miker [Mon, 25 Jun 2007 03:06:56 +0000 (03:06 +0000)]
Patch from Scott McKellar to improve default logging:

1. In log.h I added another macro OSRF_LOG_TYPE_STDERR by which the
application can specifically request logging to standard error.

2. In log.c I initialze _osrfLogType to OSRF_LOG_TYPE_STDERR so that
the application can issue a log message even if it hasn't called
osrfLogInit() yet.

3. I added the const qualifier to the parameters of the functions
_osrfLogToFile() and _osrfLogSetXid().

4. In osrfLogCleanup() I set _osrfLogAppname and _osrfLogFile to
NULL after freeing them.  Otherwise the application could cause
needless mischief by calling this function twice.

5. Also in osrfLogCleanup() I set _osrfLogType back to the default
OSRF_LOG_TYPE_STDERR so that the application can still issue a
message after calling osrfLogCleanup().

6. I rewrote osrfLogSetType() to use switch/case instead of an "if".
Now that we have three valid values to check instead of two, a
switch/case is a little tidier.  Also the default branch applies
the default log type OSRF_LOG_TYPE_STDERR.

7. _osrfLogDetail() had a local variable named "l" (lower case L).
I renamed it to "label" because "l" looks too much like a digit.

8.Also in _osrfLogDetail(): I added a branch to write a message to
stderr when _osrfLogType is OSRF_LOG_TYPE_STDERR.

9. The existing _osrfLogToFile function sizes and declares a buffer
named "buf", fills it with zeros, and then doesn't do anything with
it.  This buffer is probably a relic of some earlier version. I
eliminated it.

10. A few lines thereafter, I eliminated a useless call to bzero().

11. The call to strftime() contained a hard-coded buffer size.  I
changed it to use the sizeof operator, so that the buffer size is
defined in only one place.

12. If we can't open the log file, we write a message to stderr.
In this message I changed "file" to "log file" to make the meaning
more clear to a benighted and panicky user.

13. If after writing the message we can't close the file, the
existing code logs an error message by calling osrfLogWarning().
However in this circumstance this latter message will probably meet
the same fate, and no one will ever see it.  I changed the code so
as to write this message to stderr.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@974 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoallow the OSRF_HOSTNAME env variable to specify the local hostname -- for single...
miker [Fri, 22 Jun 2007 01:54:39 +0000 (01:54 +0000)]
allow the OSRF_HOSTNAME env variable to specify the local hostname -- for single-box installs

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@961 9efc2488-bf62-4759-914b-345cdb29e865

13 years agotesting email2
erickson [Thu, 21 Jun 2007 20:45:35 +0000 (20:45 +0000)]
testing email2

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@960 9efc2488-bf62-4759-914b-345cdb29e865

13 years agotesting email
erickson [Thu, 21 Jun 2007 20:42:38 +0000 (20:42 +0000)]
testing email

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@959 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoforget to add libopensrf Makefile with latest re-org commit
erickson [Thu, 21 Jun 2007 16:22:02 +0000 (16:22 +0000)]
forget to add libopensrf Makefile with latest re-org commit

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@958 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoMerged libopensrf source directories (libtransport, libstack, and utils) into a singl...
erickson [Thu, 21 Jun 2007 16:19:20 +0000 (16:19 +0000)]
Merged libopensrf source directories (libtransport, libstack, and utils) into a single libopensrf directory
Moved opensrf headers to trunk/include/opensrf
Moved objson headers to trunk/include/objson
Updated #include's throughout to be fully qualified.  e.g. <opensrf/utils.h>, <objson/object.h>
Removed old, unused trunk/src/xinclude code
Cleaned up Makefiles to support new directory layout

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@957 9efc2488-bf62-4759-914b-345cdb29e865

13 years agomade the logging module fail gracefully when syslog is not present
erickson [Thu, 21 Jun 2007 14:35:27 +0000 (14:35 +0000)]
made the logging module fail gracefully when syslog is not present

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@956 9efc2488-bf62-4759-914b-345cdb29e865

13 years agothinko, need to return an int from osrfLogGetLevel()
miker [Thu, 21 Jun 2007 02:20:10 +0000 (02:20 +0000)]
thinko, need to return an int from osrfLogGetLevel()

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@955 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoAdded osrfLogGetLevel method, then applied
miker [Wed, 20 Jun 2007 03:49:48 +0000 (03:49 +0000)]
Added osrfLogGetLevel method, then applied
partial patch from Scott McKellar:

Whenever a declared identifier had two leading underscores, I
removed the first one, except for a few cases where I removed the
second one and kept the first one.

I moved the prototypes for the following functions to log.c, and
declared them static:

 osrfLogSetType
 _osrfLogDetail
 _osrfLogToFile
 _osrfLogSetXid

I declared the following variables static:

 _osrfLogType
 _osrfLogFacility
 _osrfLogActFacility
 _osrfLogFile
 _osrfLogAppname
 _osrfLogLevel
 _osrfLogActivityEnabled
 _osrfLogIsClient
 _osrfLogXid
 _osrfLogXidPfx

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@954 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar to add stderr logging when config (and thus configured...
miker [Sat, 16 Jun 2007 23:58:35 +0000 (23:58 +0000)]
Patch from Scott McKellar to add stderr logging when config (and thus configured logging) is unavailable:

If osrfConfigInit() is unable to load the configuration file,
it issues error messages to the log.

Unfortunately, if we can't load the configuration file, we don't know
where the log file is.  The usual result is that the messages don't
go anywhere.  At best, depending on some convoluted details that
aren't worth going into here, the messages will go to an obscure
system-wide syslog file that only a hardened system administrator
could love.

In this patch I send similar messages to standard error, so that
someone can see them.  It might make sense to delete the calls
to osrfLogWarning(), but I left them alone.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@953 9efc2488-bf62-4759-914b-345cdb29e865

13 years agomore tuning of hinted object handling. added support for hinted object parsing in...
erickson [Fri, 15 Jun 2007 14:31:30 +0000 (14:31 +0000)]
more tuning of hinted object handling.  added support for hinted object parsing in gateway parser

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@952 9efc2488-bf62-4759-914b-345cdb29e865

13 years agotesting email 2
erickson [Fri, 15 Jun 2007 03:36:39 +0000 (03:36 +0000)]
testing email 2

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@951 9efc2488-bf62-4759-914b-345cdb29e865

13 years agotesting email
erickson [Fri, 15 Jun 2007 03:33:46 +0000 (03:33 +0000)]
testing email

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@950 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoCleaned up the network hint / object registration code in net_obj
erickson [Fri, 15 Jun 2007 03:18:51 +0000 (03:18 +0000)]
Cleaned up the network hint / object registration code in net_obj
Added object2XML function for posting XML to the opensrf gateway
updated the gateway to deal with the new object API

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@949 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoAdded a new XML-2-JSON utility for converting XMLized OpenSRF objects to their intern...
erickson [Thu, 14 Jun 2007 16:03:57 +0000 (16:03 +0000)]
Added a new XML-2-JSON utility for converting XMLized OpenSRF objects to their internal JSON representations
Added a new gateway param "input_format" to define the param format.
Options are "json" and "xml".
Unless overridden, input_format will match format

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@948 9efc2488-bf62-4759-914b-345cdb29e865

13 years agorolling back changes to objson includes. opensrf cannot find "opensrf/<blah>" since...
erickson [Wed, 13 Jun 2007 15:10:29 +0000 (15:10 +0000)]
rolling back changes to objson includes. opensrf cannot find "opensrf/<blah>" since there is no external include directory yet.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@947 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Dan Scott to fix up the OpenSRF build process in the new SVN repo:
miker [Tue, 12 Jun 2007 02:52:42 +0000 (02:52 +0000)]
Patch from Dan Scott to fix up the OpenSRF build process in the new SVN repo:

OpenSRF-svn-build.patch: this modifies the objson headers to specify
that "utils.h" is actually found in "opensrf/utils.h". I beleive the
ILS build was failing with the unqualified include because it didn't
have access to the utils.h file that used to be kept around in a
common TMP directory when OpenSRF and ILS were built simultaneously.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@944 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar; rearranges some logic to avoid a potential memory leak
miker [Tue, 12 Jun 2007 01:30:49 +0000 (01:30 +0000)]
Patch from Scott McKellar;  rearranges some logic to avoid a potential memory leak

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@943 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar:
miker [Tue, 12 Jun 2007 01:23:04 +0000 (01:23 +0000)]
Patch from Scott McKellar:

This small and inoffensive patch concerns two functions in utils.c:
init_proc_title() and set_proc_title().

1. I added some comments to explain what these functions do for a
living.

2. I declared the __global_argv and __global_argv_size variables
static.  No other source file refers to them.

3. I removed the leading underscores from their names.  Identifiers
beginning with two underscores are reserved for the implementation.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@942 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoCapturing the return value of the bootstrap call and emitting a message when encounte...
miker [Tue, 12 Jun 2007 01:15:55 +0000 (01:15 +0000)]
Capturing the return value of the bootstrap call and emitting a message when encountering a non-success value

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@941 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar to clarify errors in bootstrapping of the server process
miker [Tue, 12 Jun 2007 01:11:52 +0000 (01:11 +0000)]
Patch from Scott McKellar to clarify errors in bootstrapping of the server process

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@940 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar with minor adjustments:
miker [Tue, 12 Jun 2007 01:10:05 +0000 (01:10 +0000)]
Patch from Scott McKellar with minor adjustments:

1. In an earlier patch to osrf_settings_host_value_object(), we
contrived to abort the program deliberately instead of crashing with
a segmentation violation.  The current patch applies the same
treatment to the similar function osrf_settings_host_value(),
although I don't know that anyone has ever reported a problem at
this spot.  I rearranged the error message a bit so that it would
be distinct from the other one.

2. If the config pointer is null, it's because osrf_settings_retrieve()
was unable to populate it, or was never called.  There are two ways
it might fail: it might not get an osrf_message from
osrf_app_session_request_recv(), or the osrf_message it gets might
not have the _result_content member populated.  I added a couple of
log messages to distinguish between these possibilities. Maybe they
will make diagnosis easier.

3. The latter change also plugs a small memory leak.  If we get an
osrf_message but it has no _result_content, the present code neglects
to free the osrf_message.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@939 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoremoved unused TEMPLATEDIR directory creation. thanks, Dan S.
erickson [Tue, 12 Jun 2007 01:09:39 +0000 (01:09 +0000)]
removed unused TEMPLATEDIR directory creation.  thanks, Dan S.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@938 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar:
miker [Tue, 12 Jun 2007 01:08:25 +0000 (01:08 +0000)]
Patch from Scott McKellar:

1. I declared several functions as static, and moved their prototypes
from the header file to the implementation file.  In each case I
verified that nothing else in the code base calls it.

2. I removed the socket_send_nowait prototype from the header, and
commented it out in the implementation file.  I was tempted to
eliminate it entirely, but stayed my hand.  It is a trivial wrapper
for _socket_send(), and nothing calls it.

3. Nothing calls several other functions either.  However unlike
socket_send_nowait() they are non-trivial functions, and they appear
to be intended for external linkage, so I left them alone for
potential future use.

4. The identifier _socket_print_list is reserved for local scope,
and should not have external linkage, because it starts with an
underscore followed by a lower case letter.  I may submit a patch to
rename it some day if I ever get around to it, but that will require
a change in socket_test.c, which calls it.

5. I moved the definition of the RBUFSIZE macro from the header file
into the implmentation file.  It is an internal detail that no
other translation unit should know or care about.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@937 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar:
miker [Tue, 12 Jun 2007 01:05:53 +0000 (01:05 +0000)]
Patch from Scott McKellar:

1. I made __osrfChatXMLErrorOcurred and __osrfChatClientSentDisconnect
static, and removed the leading underscores from their names.  No other
source files refer to them.

2. In osrfNewChatServer() I explicitly initialize the port member to
zero -- which is already happening implicitly due to the memset() in
safe_malloc().

3. Also in osrfNewChatServer(): the existing code populates the secret
member only if the secret parameter is not NULL, and leaves it
uninitialized otherwise.  However if the secret parameter were NULL
we would have already performed an early exit.  I populate the secret
member unconditionally, just as we do with the domain member.  I also
moved this assignment up with the other assignments, for a more
readable flow.

4. In osrfChatServerFree(), the existing code leaves several memory
references dangling, without freeing them.  I added code to free the
domain member, the deadNodes member, and finally the osrfChatServer
itself.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@936 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadding gateway parsing code. so far, we have XML gateway handling using python minidom.
erickson [Mon, 11 Jun 2007 22:21:08 +0000 (22:21 +0000)]
adding gateway parsing code.  so far, we have XML gateway handling using python minidom.

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@935 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadding sample makefile and install.conf file for opensrf installation
erickson [Mon, 11 Jun 2007 20:13:58 +0000 (20:13 +0000)]
adding sample makefile and install.conf file for opensrf installation

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@934 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoported XML parsing from libxml2 to Python's builtin xml.dom.minidom to reduce dependenies
erickson [Mon, 11 Jun 2007 20:06:56 +0000 (20:06 +0000)]
ported XML parsing from libxml2 to Python's builtin xml.dom.minidom to reduce dependenies

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@933 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar; cleaning up several error conditions
miker [Sun, 10 Jun 2007 23:41:14 +0000 (23:41 +0000)]
Patch from Scott McKellar; cleaning up several error conditions

http://list.georgialibraries.org/pipermail/open-ils-dev/2007-June/001241.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@932 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar; Adds calls to strerror() where appropriate in
miker [Thu, 31 May 2007 12:12:02 +0000 (12:12 +0000)]
Patch from Scott McKellar;  Adds calls to strerror() where appropriate in
OpenSRF/src/utils/socket_bundle.c.

Applied with some additional changes to clean up log messages and correct an
instance of printf'ing a getpid as an int instead of a long.

http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001148.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@930 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoremoved some error lines printed to stderr. not used and they also have the potentia...
erickson [Thu, 31 May 2007 03:33:06 +0000 (03:33 +0000)]
removed some error lines printed to stderr.  not used and they also have the potential of overwriteing errno

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@929 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoslimmed some logging. capturing errno locally after the recv() call so it is not...
erickson [Thu, 31 May 2007 03:32:27 +0000 (03:32 +0000)]
slimmed some logging.  capturing errno locally after the recv() call so it is not replaced by a different system call before the check

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@928 9efc2488-bf62-4759-914b-345cdb29e865

13 years agono longer freeing return value from strerror since it should not be modified
erickson [Tue, 29 May 2007 13:26:33 +0000 (13:26 +0000)]
no longer freeing return value from strerror since it should not be modified

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@926 9efc2488-bf62-4759-914b-345cdb29e865

13 years agodueling patches of pedantism
miker [Tue, 29 May 2007 13:08:53 +0000 (13:08 +0000)]
dueling patches of pedantism

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@925 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded some more descriptive logging. removed old signal handling code. no longer...
erickson [Tue, 29 May 2007 12:54:49 +0000 (12:54 +0000)]
added some more descriptive logging.  removed old signal handling code.  no longer freeing return value from strerror since it should not be modified

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@924 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoChange suggested by Scott McKellar; handle c-app children death without a
miker [Tue, 29 May 2007 03:03:44 +0000 (03:03 +0000)]
Change suggested by Scott McKellar; handle c-app children death without a
signal handler.

http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/000955.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@923 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Dan Scott; adds -rpath=$(LIBDIR) to the default LDFLAGS for
miker [Tue, 29 May 2007 02:43:20 +0000 (02:43 +0000)]
Patch from Dan Scott; adds -rpath=$(LIBDIR) to the default LDFLAGS for
OpenSRF, obviating the need to set up non-standard system search paths
for any libs that OpenSRF loads that either don't have a lib prefix
or live outside the normal system library paths.

http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001123.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@922 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoswapped the formats -- typo
miker [Mon, 28 May 2007 20:16:09 +0000 (20:16 +0000)]
swapped the formats -- typo

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@921 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar; reasonable and non-intrusive diagnostic message in
miker [Mon, 28 May 2007 20:12:23 +0000 (20:12 +0000)]
Patch from Scott McKellar; reasonable and non-intrusive diagnostic message in
the case that we've been given on port or unix socket path to connect over.

http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001109.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@920 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoPatch from Scott McKellar; allows the compiler to warn us of missing casts
miker [Mon, 28 May 2007 20:08:47 +0000 (20:08 +0000)]
Patch from Scott McKellar; allows the compiler to warn us of missing casts
coming from undefined safe_malloc()s, NULL-initialize pointers (\0 != NULL).

http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001098.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@919 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoSeveral combined cleanup patches from Scott McKellar:
miker [Mon, 28 May 2007 19:57:19 +0000 (19:57 +0000)]
Several combined cleanup patches from Scott McKellar:

 * remove leading underscores from static vars and functions
 * make static functions, well, static
 * tighten up the definition of funcs that take 0 params

http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001095.html
http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001101.html
http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001112.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@918 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoAt Scott McKellar's suggestion, using (long) cast and %ld format for getpid()
miker [Mon, 28 May 2007 19:49:20 +0000 (19:49 +0000)]
At Scott McKellar's suggestion, using (long) cast and %ld format for getpid()

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@917 9efc2488-bf62-4759-914b-345cdb29e865

13 years agohttp://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001092.html
miker [Sun, 27 May 2007 00:49:10 +0000 (00:49 +0000)]
list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001092.html
Patch from Scott McKellar to:

 * Make default config object pointer static (module local)
 * Clean up variable name to remove leading underscores
 * Remove think-o which would deallocate the default config when
   loading any other
 * Fix error log message

Applied with minor change to the log message fix

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@916 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoXSD from Dan Scott for validating the ~/.srfsh.xml config file.
miker [Fri, 25 May 2007 15:31:59 +0000 (15:31 +0000)]
XSD from Dan Scott for validating the ~/.srfsh.xml config file.
http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001030.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@915 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoFrom Dan Scott: EOL Whitespace is now stripped in the perl config file,
miker [Wed, 23 May 2007 15:04:59 +0000 (15:04 +0000)]
From Dan Scott: EOL Whitespace is now stripped in the perl config file,
hopefully saving some debugging time in the future.

Details at: http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001049.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@914 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoignore non-leaf text nodes
miker [Mon, 21 May 2007 16:33:29 +0000 (16:33 +0000)]
ignore non-leaf text nodes

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@913 9efc2488-bf62-4759-914b-345cdb29e865

13 years agocompatability functions for strnlen and strndup
miker [Mon, 21 May 2007 05:12:27 +0000 (05:12 +0000)]
compatability functions for strnlen and strndup

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@912 9efc2488-bf62-4759-914b-345cdb29e865

13 years agomoving this to strn_compat
miker [Mon, 21 May 2007 05:11:15 +0000 (05:11 +0000)]
moving this to strn_compat

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@911 9efc2488-bf62-4759-914b-345cdb29e865

13 years agocut-n-paste error in logged message -- thanks scottmck
miker [Mon, 21 May 2007 04:33:46 +0000 (04:33 +0000)]
cut-n-paste error in logged message -- thanks scottmck

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@910 9efc2488-bf62-4759-914b-345cdb29e865

13 years agostrndup() and strnlen() implementations from Jeroen Ruigrok van der Werven
miker [Mon, 21 May 2007 02:31:52 +0000 (02:31 +0000)]
strndup() and strnlen() implementations from Jeroen Ruigrok van der Werven
See bug #551 for original details -- http://open-ils.org/cgi-bin/bugzilla/show_bug.cgi?id=551

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@909 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoreordering breakage; const qualifier in header
miker [Mon, 21 May 2007 01:53:27 +0000 (01:53 +0000)]
reordering breakage; const qualifier in header

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@908 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoFailure cleanups suggested by Scott McKellar; modified from patch at
miker [Mon, 21 May 2007 01:48:05 +0000 (01:48 +0000)]
Failure cleanups suggested by Scott McKellar; modified from patch at
http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001006.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@907 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoconst-ification
miker [Mon, 21 May 2007 01:46:39 +0000 (01:46 +0000)]
const-ification

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@906 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoCorrecting previous comment. The right mailing list pointer is at:
miker [Sun, 20 May 2007 13:15:05 +0000 (13:15 +0000)]
Correcting previous comment.  The right mailing list pointer is at:
http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001002.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@905 9efc2488-bf62-4759-914b-345cdb29e865

13 years agostderr output cleanup
miker [Sun, 20 May 2007 12:50:36 +0000 (12:50 +0000)]
stderr output cleanup
Patch supplied by Scott McKellar
http://list.georgialibraries.org/pipermail/open-ils-dev/2007-May/001006.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@904 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded some inline comments
erickson [Fri, 18 May 2007 19:55:59 +0000 (19:55 +0000)]
added some inline comments

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@903 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded math bench code. added shutdown method to disconnect from jabber. updated...
erickson [Fri, 18 May 2007 19:44:31 +0000 (19:44 +0000)]
added math bench code.  added shutdown method to disconnect from jabber.  updated makefile to used fetched version of the stax jar

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@902 9efc2488-bf62-4759-914b-345cdb29e865

13 years agochanged log level on what really should not be a warning message
erickson [Fri, 18 May 2007 17:31:44 +0000 (17:31 +0000)]
changed log level on what really should not be a warning message

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@901 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoreturning OK status in respond method, instead of no status at all. most code uses...
erickson [Fri, 18 May 2007 16:57:56 +0000 (16:57 +0000)]
returning OK status in respond method, instead of no status at all.  most code uses respond_complete, which is why this has not been an issue in the past.  writing new client libs exposed it, though

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@900 9efc2488-bf62-4759-914b-345cdb29e865

13 years agobroke network-object logic out of the JSON parsing code
erickson [Fri, 18 May 2007 16:55:51 +0000 (16:55 +0000)]
broke network-object logic out of the JSON parsing code

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@899 9efc2488-bf62-4759-914b-345cdb29e865

13 years agocommitting scott's safer MALLOC macro and a new buffer_release function patches
erickson [Fri, 18 May 2007 16:53:29 +0000 (16:53 +0000)]
committing scott's safer MALLOC macro and a new buffer_release function patches

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@898 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded a make target to sample makefile for fetching jar/source dependencies to ease...
erickson [Fri, 18 May 2007 15:58:38 +0000 (15:58 +0000)]
added a make target to sample makefile for fetching jar/source dependencies to ease deployment

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@897 9efc2488-bf62-4759-914b-345cdb29e865

13 years agorethinking deployment
erickson [Fri, 18 May 2007 15:56:17 +0000 (15:56 +0000)]
rethinking deployment

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@896 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoupdating to jdk1.5 build
erickson [Wed, 16 May 2007 21:01:06 +0000 (21:01 +0000)]
updating to jdk1.5 build

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@895 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded memcache lib to makefile
erickson [Wed, 16 May 2007 20:41:03 +0000 (20:41 +0000)]
added memcache lib to makefile

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@894 9efc2488-bf62-4759-914b-345cdb29e865

13 years agocommitting added jars
erickson [Wed, 16 May 2007 20:09:45 +0000 (20:09 +0000)]
committing added jars

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@893 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded a memcache client and test
erickson [Wed, 16 May 2007 19:30:03 +0000 (19:30 +0000)]
added a memcache client and test

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@892 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded a settings server client and test. made the global config object wrapped in...
erickson [Wed, 16 May 2007 17:27:56 +0000 (17:27 +0000)]
added a settings server client and test.  made the global config object wrapped in a method instead of using static methods all around

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@891 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoimplemented client bootstrap. created a status object to model connection statuses...
erickson [Wed, 16 May 2007 14:38:02 +0000 (14:38 +0000)]
implemented client bootstrap.  created a status object to model connection statuses.  remodeled the client test code to run arbitrary methods

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@890 9efc2488-bf62-4759-914b-345cdb29e865

13 years agofixed some doc strings. added sample makefile
erickson [Fri, 11 May 2007 23:10:26 +0000 (23:10 +0000)]
fixed some doc strings.  added sample makefile

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@886 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded a lot of documentation
erickson [Fri, 11 May 2007 22:53:43 +0000 (22:53 +0000)]
added a lot of documentation

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@885 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoimplemented enough of the stack/session logic to make stateless requests and receive...
erickson [Fri, 11 May 2007 15:45:27 +0000 (15:45 +0000)]
implemented enough of the stack/session logic to make stateless requests and receive responses

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@884 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadding more base objects, started on stack layer. added config parser
erickson [Thu, 10 May 2007 20:59:27 +0000 (20:59 +0000)]
adding more base objects, started on stack layer. added config parser

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@883 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded JSON reading ability, including serializable objects
erickson [Thu, 10 May 2007 19:56:08 +0000 (19:56 +0000)]
added JSON reading ability, including serializable objects

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@882 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded support for opensrf-serializable objects and JSON output of those objects....
erickson [Thu, 10 May 2007 16:31:52 +0000 (16:31 +0000)]
added support for opensrf-serializable objects and JSON output of those objects. updated some JSON test code

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@881 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded initial opensrf stack layer objects. more tuning/testing of the jabber layer
erickson [Thu, 10 May 2007 02:51:51 +0000 (02:51 +0000)]
added initial opensrf stack layer objects.  more tuning/testing of the jabber layer

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@880 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoprintf family format fixup found (har har) and suggested by Scott McKellar -- %lf...
miker [Wed, 9 May 2007 20:20:46 +0000 (20:20 +0000)]
printf family format fixup found (har har) and suggested by Scott McKellar -- %lf -> %f
(no need for the precision and/or scale of %Lf)

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@879 9efc2488-bf62-4759-914b-345cdb29e865

13 years agofixed some logic bugs with the body parsing, added some comments
erickson [Wed, 9 May 2007 18:13:38 +0000 (18:13 +0000)]
fixed some logic bugs with the body parsing, added some comments

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@878 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded the woodstox stax jar files
erickson [Wed, 9 May 2007 18:00:36 +0000 (18:00 +0000)]
added the woodstox stax jar files

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@877 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded java jabber layer
erickson [Wed, 9 May 2007 17:45:42 +0000 (17:45 +0000)]
added java jabber layer

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@876 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded some more index sanity checks. added const qualifier where necessary
erickson [Mon, 7 May 2007 14:26:56 +0000 (14:26 +0000)]
added some more index sanity checks.  added const qualifier where necessary

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@875 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoadded size check to constructor
erickson [Mon, 7 May 2007 14:07:36 +0000 (14:07 +0000)]
added size check to constructor

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@874 9efc2488-bf62-4759-914b-345cdb29e865

13 years agocommitting scott m's buffer protection patch
erickson [Thu, 3 May 2007 15:10:06 +0000 (15:10 +0000)]
committing scott m's buffer protection patch

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@872 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoExiting with a usable error message rather than segfaulting
miker [Sun, 29 Apr 2007 20:11:51 +0000 (20:11 +0000)]
Exiting with a usable error message rather than segfaulting
 - patch provided by Scott McKellar
 - http://list.georgialibraries.org/pipermail/open-ils-dev/2007-April/000727.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@866 9efc2488-bf62-4759-914b-345cdb29e865

13 years agoAvoiding memory leaks in string opperations
miker [Sat, 28 Apr 2007 23:46:02 +0000 (23:46 +0000)]
Avoiding memory leaks in string opperations
  - patch provided by Scott McKellar
  - http://list.georgialibraries.org/pipermail/open-ils-dev/2007-April/000724.html

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@864 9efc2488-bf62-4759-914b-345cdb29e865

13 years agocompletely untested and possibly broken settings extention to retrieve defaults when...
miker [Thu, 26 Apr 2007 02:12:45 +0000 (02:12 +0000)]
completely untested and possibly broken settings extention to retrieve defaults when host specific fails

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@863 9efc2488-bf62-4759-914b-345cdb29e865

13 years agomade new child creation more robust
erickson [Mon, 9 Apr 2007 19:52:00 +0000 (19:52 +0000)]
made new child creation more robust

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@862 9efc2488-bf62-4759-914b-345cdb29e865