timeout="600"
retries="3"/>
+ <!-- The default encoding defined in the SIP specification is -->
+ <!-- ASCII, which isn't great for French, Spanish, Armenian. -->
+ <!-- You can specify a different encoding here, based on the -->
+ <!-- encodings supported by your SIP client and your Encode -->
+ <!-- module; run the following command to get a list of supported -->
+ <!-- encodings: -->
+ <!-- perl -MEncode -le "print for Encode->encodings(':all')" -->
+
+ <!-- UTF-8 is the recommended encoding if your SIP client supports it -->
+ <encoding>ascii</encoding>
+
<!-- implementation specific config options go here -->
<implementation_config>
<bootstrap>SYSCONFDIR/opensrf_core.xml</bootstrap>
<currency>USD</currency>
- <!-- The default encoding defined in the SIP specification is -->
- <!-- ASCII, which isn't great for French, Spanish, Armenian. -->
- <!-- You can specify a different encoding here, based on the -->
- <!-- encodings supported by your SIP client and your Encode -->
- <!-- module; run the following command to get a list of supported -->
- <!-- encodings: -->
- <!-- perl -MEncode -le "print for Encode->encodings(':all')" -->
-
- <!-- UTF-8 is the recommended encoding if your SIP client supports it -->
- <encoding>ascii</encoding>
-
<!-- These defines what this SIP code has the ability to support -->
<supports>
<item name='magnetic media' value='true'/>
--- /dev/null
+SIP Bugfix Requires SIPServer Upgrade
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The fix for Launchpad Bug 1542495: "OpenILS::SIP::clean_text() can
+crash" requires that you also upgrade SIPServer with the fix for
+Launchpad Bug 1463943: "Non-ascii Unicode characters in messages cause
+SIP client problems." This means that if you use SIP2 with Evergreen,
+you must also upgrade SIPServer to the latest commit in the git
+repository. Conversely, if you upgrade SIPServer to the latest commit
+in git, you must also upgrade Evergreen or, at least, apply the patch
+for Launchpad Bug 1542495. These two patches are complementary and
+cannot be applied independently of one another.
+
+SIP Bugfix Changes How Encoding Is Determined in Configuration
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The combined fix for the above mentioned SIP bugs alters the way that
+the output encoding is looked up in the configuration file (typically
+oils_sip.xml). SIPServer now looks for the encoding in the following
+places:
+
+1. An +encoding+ attribute on the +account+ element for the currently active SIP account.
+2. The +encoding+ element that is a child of the +insitution+ element of the currently acctive SIP account.
+3. The +encoding+ element that is a child of the +implementation_config+ element that is itself a child of the +insitution+ element of the currently acctive SIP account.
+4. If none of the above exist, then ASCII encoding is used by default.
+
+Number 3 is provided to ease the transition to the new code. It is
+the current location of the +encoding+ element in the sample
+configuration file and as such, where it is likely to be found in
+actual files. It is recommended that you alter your configuration to
+move this element out of the +implementation_config+ element and into
+its parent +institution+ element. SIPServer should *not* look into
+the implementation config, and this check may be removed at some time
+in the future.