Koha-clms/C4
Kyle M Hall 8e1f0cfc8d Bug 29264: SIP config allows use of non-branchcode institution ids causes workers to die without responding
If is entirely possible to create an SIP institution whose ID does not match a valid branchcode in Koha's SIP config. In fact, Koha's example SIP config contains an example of this ( kohalibrary / kohalibrary2 ).

If a SIP login uses an institution with an id that doesn't match a valid branchcode, everything will appear to work, but the SIP worker will die anywhere that Koha gets the branch from the userenv and assumes it is valid.

The repercussions of this are that actions such as the checkout message simply die and do not return a response message to the requestor.

At the very least, we should output a warning to the SIP log.

I think we should strongly consider disallowing institution ids in the SIP config that do not match valid branchcodes. In this scenario, attempting to start the SIP server should result in a error message with the SIP server exiting immediately.

Test Plan:
1) Apply this patch
2) Make a sip login that uses an instution whose id is *not* a valid branchcode
3) Start the SIP server
4) Check sip.log, you should see a warning similar to the following:
[2021/10/18 12:18:29] [2068079] [ERROR] ERROR: Institution kohalibrary does does not match a branchcode. This can cause unexpected behavior. C4::SIP::Sip::siplog /kohadevbox/koha/C4/SIP/Sip.pm (220)

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Joonas Kylmälä <joonas.kylmala@iki.fi>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
2021-11-19 10:50:24 -05:00
..
AuthoritiesMarc Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Barcodes Bug 26673: Fix perlcritic complains 2020-11-02 08:42:20 +01:00
ClassSortRoutine Bug 16011: $VERSION - Remove use vars qw(); 2016-03-24 17:20:39 +00:00
ClassSplitRoutine Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Creators Bug 25852: Improve C4::Creators::Lib reliability under plack 2020-07-31 10:03:26 +02:00
External Bug 22010: Check preferences for ebook integration 2019-04-30 11:42:51 +00:00
Form Bug 16259: Replace CGI->param with CGI->multi_param in list context - part 2 2016-05-16 17:28:06 +00:00
Heading [21.05] Bug 21958: Add missing subfields 2021-09-23 11:44:02 +00:00
ILSDI Bug 28630: Add track_login_daily to ILSDI::AuthenticatePatron 2021-08-06 14:29:16 -04:00
Installer Bug 24545: Fix license statements 2020-02-24 13:31:26 +00:00
Labels Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Linker Bug 28676: Cache and retrieve match_count when searching a cached heading 2021-10-01 13:30:47 -04:00
Members Bug 24447: Changing 'DUE' to example in database that exists. 2021-01-22 13:46:41 +01:00
OAI Bug 25460: Update OAI sets when adding/editing/deleting item records 2020-10-15 12:56:30 +02:00
Output Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Patroncards Bug 25459: Makes barcode position respect units in patron cards layout 2021-11-05 11:53:41 -04:00
Reports Bug 27884: Add html support for report mails 2021-11-05 11:54:38 -04:00
SIP Bug 29264: SIP config allows use of non-branchcode institution ids causes workers to die without responding 2021-11-19 10:50:24 -05:00
Search Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Serials Bug 20144: [sql_modes] Add default value for subscription_numberpatterns.description in tests 2018-02-13 13:58:53 -03:00
Utils Bug 29134: (follow-up) Specify which borrowernumber 2021-10-26 08:42:42 -04:00
Accounts.pm Bug 22394: Remove C4::Accounts::manualinvoice 2020-11-04 12:59:33 +01:00
Acquisition.pm Bug 27203: Calculate tax based on ecost if unitprice not set 2021-05-11 15:09:13 +02:00
Auth.pm Bug 28660: (bug 21325 follow-up) Fix auto self check 2021-07-23 07:44:31 -04:00
Auth_cas_servers.yaml.sample Bug 17065 - Rename C4/Auth_cas_servers.yaml.orig 2016-08-08 13:16:36 +00:00
Auth_with_cas.pm Bug 20854: (QA follow-up) Improve readability 2021-04-21 10:51:29 +02:00
Auth_with_ldap.pm Bug 28490: Revert "Bug 26995: Drop column relationship from borrowers, deletedborrowers and borrower_modifications tables" 2021-06-18 07:47:34 -04:00
Auth_with_shibboleth.pm Bug 28367: (follow-up) Fix plack condition in C4/Auth_with_shibboleth.pm 2021-05-18 11:26:27 +02:00
AuthoritiesMarc.pm Bug 27173: Add plugin hooks for authority record changes 2021-11-05 14:22:07 -04:00
BackgroundJob.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Barcodes.pm Bug 16011: $VERSION - Remove the $VERSION init 2016-03-24 17:20:28 +00:00
Biblio.pm Bug 28384: Add 'no_items' option to TransformMarcToKoha 2021-07-16 09:32:12 -04:00
Breeding.pm Bug 26528: Z39.50/SRU ignore invalid replies 2021-04-16 16:20:42 +02:00
Budgets.pm Bug 23195: Always count shipping costs as 'spent' 2021-04-22 14:50:11 +02:00
Calendar.pm Bug 25723: (QA follow-up) Handle holiday and exception on same day 2020-07-20 17:45:31 +02:00
Charset.pm Bug 22721: Remove frameworkcode parameter in GetMarcFromKohaField calls 2019-07-15 11:28:08 +01:00
Circulation.pm Bug 29062: (QA follow-up) Add comment 2021-10-08 11:15:52 -04:00
ClassSortRoutine.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
ClassSource.pm Bug 15836: Remove deprecated subroutines 2018-11-13 18:56:18 +00:00
ClassSplitRoutine.pm Bug 15836: Add the ability to defined custom methods to split call number in labels 2018-11-13 15:18:22 +00:00
Context.pm Bug 28317: Use the default CGI::Session serializer 2021-05-19 14:45:32 +02:00
Contract.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
CourseReserves.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Creators.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Debug.pm Bug 16011: $VERSION - Remove the $VERSION init 2016-03-24 17:20:28 +00:00
HTML5Media.pm Bug 27422: YouTube videos are HTTPS only 2021-02-08 17:09:34 +01:00
Heading.pm Bug 21958: Fix bibliographic record field comparison with authority 2021-04-01 17:13:56 +02:00
HoldsQueue.pm Bug 28510: Remove marking of closed branches as 'disable_transfer' 2021-10-08 08:18:45 -04:00
ImportBatch.pm Bug 24469: Move the new queries to a dedicated ImportBatch subroutine 2021-02-18 11:52:59 +01:00
ImportExportFramework.pm Bug 27968: Fix framework import if isurl has an incorrect value 2021-04-23 10:03:30 +02:00
InstallAuth.pm Bug 28317: Use the default CGI::Session serializer 2021-05-19 14:45:32 +02:00
Installer.pm Bug 28281: Remove double decoding when importing installation data 2021-05-07 14:44:00 +02:00
ItemCirculationAlertPreference.pm Bug 23271: Replace search_limited with search_with_library_limits 2021-04-21 15:25:07 +02:00
Items.pm Bug 29243: Correct call when adding items from staged records 2021-10-22 11:06:59 -04:00
Koha.pm Bug 27746: prevent regexp undefined warning when checking subfield contents ($oclc) 2021-04-14 15:25:26 +02:00
Labels.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Languages.pm Bug 27491: Rename system preference opaclanguages to OPACLanguages 2021-01-22 14:59:27 +01:00
Letters.pm Bug 29062: Use primary key issued_id to fetch old_issues for letters 2021-10-08 11:15:51 -04:00
Linker.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Log.pm Bug 23632: Remove C4::Logs::GetLogs 2020-08-18 15:45:48 +02:00
MarcModificationTemplates.pm Bug 24840: Replace DateTime->now with dt_from_string 2020-04-08 11:54:23 +01:00
Matcher.pm Bug 26199: Include LDR for match check/match point 2021-03-09 17:20:47 +01:00
Members.pm Bug 28001: (bug 27050 follow-up) Fix delete_patrons if no category passed 2021-04-16 12:28:17 +02:00
Message.pm Bug 28230: Store C4::Message->{metadata} as Perl string always 2021-04-28 11:07:06 +02:00
NewsChannels.pm Bug 26205: (QA follow-up) Change OPACNEWS to just NEWS 2021-07-09 08:35:42 -04:00
Output.pm Bug 11994: OpenSearch plugins needs to be delivered with Content-Type application/opensearchdescription+xml 2020-06-24 14:31:37 +02:00
Overdues.pm Bug 28144: Check if issue_id defined 2021-04-27 16:23:49 +02:00
Patroncards.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Record.pm Bug 27673: Fix encoding issues 2021-02-16 14:54:50 +01:00
Reports.pm Bug 27486: Rename system preference delimiter to CSVDelimiter 2021-01-29 09:03:45 +01:00
Reserves.pm Bug 25619: Adjust POD and move date check before logging 2021-09-03 10:00:50 -04:00
Ris.pm Bug 27673: Fix encoding issues 2021-02-16 14:54:50 +01:00
RotatingCollections.pm Bug 17202: Don't report an item in a collection if the collection doesn't exist 2021-04-28 11:07:06 +02:00
SMS.pm Bug 27673: Replace YAML with YAML::XS 2021-02-16 14:54:50 +01:00
Scheduler.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
Scrubber.pm Bug 16011: $VERSION - Remove the $VERSION init 2016-03-24 17:20:28 +00:00
Search.pm Bug 28365: (Bug 19873 follow-up) Make it possible to search on value 0 2021-11-05 12:36:07 -04:00
Serials.pm Bug 27842: Update serial.biblionumber when a subscription is linked with another record 2021-04-28 11:07:06 +02:00
Service.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
ShelfBrowser.pm Bug 26673: Remove shebangs from Perl modules 2020-10-26 00:14:42 +01:00
SocialData.pm Bug 9978: (followup) Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:43 -03:00
Stats.pm Bug 24151: Copy info to the pseudonymized table when a transaction is done 2020-07-20 15:17:42 +02:00
Suggestions.pm Bug 7806: Fix remaining occurrences of 0000-00-00 2021-03-01 11:16:42 +01:00
TTParser.pm Bug 26673: Remove #!/usr/bin/env perl from .pm modules too 2020-10-26 00:14:42 +01:00
Tags.pm Bug 23084: Replace grep {^$var$} with grep {$_ eq $var} 2020-02-17 10:44:45 +00:00
Templates.pm Bug 28303: Fix plugins system with multiple pluginsdir settings 2021-10-08 10:25:09 -04:00
TmplToken.pm Bug 16011: $VERSION - Remove the $VERSION init 2016-03-24 17:20:28 +00:00
TmplTokenType.pm Bug 24217: use Modern::Perl for modules when strict is missing 2020-01-03 10:45:46 +00:00
UsageStats.pm Bug 28108: Fix filtering 2021-05-10 15:52:53 +02:00
XISBN.pm Bug 26364: Don't discard the passed isbn 2021-01-07 15:37:15 +01:00
XSLT.pm Bug 28373: [21.05] Fix transformMARCXML4XSLT export in C4::XSLT 2021-09-10 08:11:05 -04:00