Comment 12 for bug 1927542

Revision history for this message
Galen Charlton (gmc) wrote :

And here's a configuration that doesn't depend on Evergreen at all, just the test ILS driver, where I can reliably reproduce the bug:

oils_sip.xml / SIPConfig.xml
---
<acsconfig xmlns="http://openncip.org/acs-config/1.0/">

  <error-detect enabled="true" />

  <!-- Set Net::Server runtime parameters. "personality" may -->
  <!-- be either PreFork or Multiplex. -->
  <server-params
           personality='Multiplex'
           min_servers='3'
           min_spare_servers='1'
           max_servers='50' />

  <listeners>
    <service
      port="127.0.0.1:6001/tcp"
      transport="RAW"
      protocol="SIP/2.00"
      allow_sc_status_then_login="enabled"
      timeout="60" />
  </listeners>

  <!-- One or more Memecache servers are required for Multiplex mode. -->
  <!-- Cache server(s) are ignored in non-Multiplex mode -->
  <cache>
    <server>127.0.0.1:11211</server>
  </cache>

  <accounts>
      <login id="scclient" password="clientpwd" institution="UWOLS"></login>
  </accounts>

<!-- Institution tags will hold stuff used to interface to -->
<!-- the rest of the ILS: authentication parameters, etc. I -->
<!-- don't know what yet, so it'll just be blank. But there -->
<!-- needs to be one institution stanza for each institution -->
<!-- named in the accounts above. -->
<institutions>
    <institution id="UWOLS" implementation="ILS" parms="">
          <policy checkin="true" renewal="false"
                  status_update="false" offline="false"
                  timeout="600" client_location_code="true"
                  retries="3" />
          <relais_extensions_to_msg24 enabled="false" />
          <encoding>ascii</encoding>
    </institution>
</institutions>
</acsconfig>
---

The expect script:
---
#!/usr/bin/expect

spawn telnet 127.0.0.1 6001
sleep .1;
send "9900402.00\r";
expect "98";
puts "\n";
sleep .1;
send "9300CNscclient|COclientpwd|CPUWOLS\r";
expect "941";
puts "\n";
sleep 6;
send "9900402.00\r";
expect "98";
puts "\ndone\n";
---

Results without the patch:
---
spawn telnet 127.0.0.1 6001
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
9900402.00
98YNNYNN60000320210512 1449022.00AOUWOLS|BXYYYYYYYYYNYNYYYY|

9300CNscclient|COclientpwd|CPUWOLS
941

9900402.00
98YNNNNN00000020210512 1449082.00AOUWOLS|BXYYYYYYYYYNYNYYYY|
done
---

Results with the patch:
---
spawn telnet 127.0.0.1 6001
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
9900402.00
98YNNYNN60000320210512 1451122.00AOUWOLS|BXYYYYYYYYYNYNYYYY|

9300CNscclient|COclientpwd|CPUWOLS
941

9900402.00
98YNNYNN60000320210512 1451182.00AOUWOLS|BXYYYYYYYYYNYNYYYY|
done
---