Commit Graph

59752 Commits

Author SHA1 Message Date
Lucas Gass f57ea320bd
Bug 37893: Fix http links
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:20 -07:00
Pedro Amorim 0aa77814c7
Bug 37893: (QA follow-up): Fix database inconsistencies:
This should pass:
perl /kohadevbox/misc4dev/run_tests.pl --instance=kohadev --db-password=password --run-db-compare-only --compare-with=HEAD

This is a squash of the following:
1) Fix charset in kohastructure.sql
2) Fix NULL => DEFAULT NULL
3) Reorder tables in kohastructure.sql
4) typos

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:20 -07:00
Pedro Amorim 94eab622c7
Bug 37893: (QA follow-up): Fix xt/api.t
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:19 -07:00
Pedro Amorim 8ef32181e7
Bug 37893: (QA follow-up): Update cypress tests
Addressing QA lines of feedback has changed the forms. Cypress tests need to be updated accordingly.

cypress run --spec t/cypress/integration/SIP2/Accounts.ts --config video=false,screenshotOnRunFailure=false
cypress run --spec t/cypress/integration/SIP2/Institutions.ts --config video=false,screenshotOnRunFailure=false
cypress run --spec t/cypress/integration/SIP2/SystemPreferenceOverrides.ts --config video=false,screenshotOnRunFailure=false

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:19 -07:00
Pedro Amorim 987db4f5ce
Bug 37893: (QA follow-up): Add changes to etc/koha-httpd.conf
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:18 -07:00
Pedro Amorim 8b5497fd0e
Bug 37893: (QA follow-up): Clean-up store code, fix erm => sip2
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:18 -07:00
Pedro Amorim d968e4e77c
Bug 37893: (QA follow-up): Update SIP2 breadcrumbs to start with Administration
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:17 -07:00
Pedro Amorim 7339867550
Bug 37893: (QA follow-up): Remove nonexistent js-patron-format.inc
After bug 40958

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:17 -07:00
Pedro Amorim 5dd9966c8e
Bug 37893: (QA follow-up): Fix sip2 div app container
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:16 -07:00
Pedro Amorim 4c4e64dc7a
Bug 37893: (QA follow-up): Add Koha::SIP2::Accounts unit tests
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:16 -07:00
Pedro Amorim c24a5b25c5
Bug 37893: (QA follow-up): Remove file_transports database table
This was clearly a mistake due a botched rebase.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:15 -07:00
Pedro Amorim ba9c8d69a3
Bug 37893: (QA follow-up): Remove uneeded singular form of the module
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:15 -07:00
Pedro Amorim dccff42870
Bug 37893: (QA follow-up): Add new line to apache-shared-intranet.conf
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:14 -07:00
Pedro Amorim 49e51aa3be
Bug 37893: (QA follow-up): Explicitly set boolean => 0 for tinyints which arent boolean
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:14 -07:00
Pedro Amorim cf11f3863d
Bug 37893: (QA follow-up): Insert defaults to database for delimiter and terminator
Not considering here encoding here as I'm uncertain from the code if it should utf8 or ascii

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:13 -07:00
Pedro Amorim a15bfabf37
Bug 37893: (QA follow-up): Add tooltip for relationshipWidget patron_attributes: code
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:13 -07:00
Pedro Amorim 244a0bd22b
Bug 37893: (QA follow-up): Default terminator to CRLF
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:12 -07:00
Pedro Amorim 57b92e9237
Bug 37893: (QA follow-up): Update prevcheckout_block_checkout label and tooltip
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:12 -07:00
Pedro Amorim e02fe6da52
Bug 37893: (QA follow-up): Set label for holds_get_captured
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:11 -07:00
Pedro Amorim 76fe744691
Bug 37893: (QA follow-up): Set tooltip for 'Format due date'
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:11 -07:00
Pedro Amorim 04542a4ee1
Bug 37893: (QA follow-up): Ensure convert_nonprinting_characters is null if empty string
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:10 -07:00
Pedro Amorim 3e4fc7db7e
Bug 37893: (QA follow-up): Add maxlength to number attributes. Set '3' for SIP2 institutions retires
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:10 -07:00
Pedro Amorim 5e76fb103a
Bug 37893: (QA follow-up): Default institution policy attributes to true
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:09 -07:00
Pedro Amorim f342ae3dd3
Bug 37893: (QA follow-up): Update institution name label
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:09 -07:00
Pedro Amorim e94e205419
Bug 37893: (QA follow-up): Update admin-home module description
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:08 -07:00
Martin Renvoize e713c0e5f5
Bug 37893: (QA follow-up): Add tooltip for account Staff userid
The userid field for accounts was missing a tooltip; We add one here
that clarifies that the userid must match an existing Koha user with
appropriate circulation permissions for the sip client.

NOTE: A future follow-up should introduce a patron autocomplete or
select type input allowing administrators to just search users to add
for this field, but such a component doesn't exist in the Vue
architecture yet.

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:08 -07:00
Martin Renvoize a0c3d523bc
Bug 37893: (QA follow-up): Update tooltip for institution Name
The institution name tooltip was slightly misleading, we clarify it
here.

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:07 -07:00
Martin Renvoize b5f515422a
Bug 37893: (QA follow-up): Update DBIx::Class schema for sip_accounts
Remove login_password column from the DBIx::Class schema result class
to reflect the database structure changes.

This updates the auto-generated schema to match the removal of the
login_password column from the sip_accounts table.

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:07 -07:00
Martin Renvoize c1a97af67c
Bug 37893: (QA follow-up): Remove plaintext password storage from SIP2
This follow-up removes the security vulnerability of storing plaintext
passwords in the sip_accounts table. The SIP2 system now relies entirely
on Koha's secure password authentication.

Changes:
- Remove plaintext password comparison from login_core() and telnet_transport()
- Remove login_password column from sip_accounts table
- Update database schema files and atomic update
- Remove password field from API definitions and Vue form
- Update all tests to remove login_password references

Authentication now works in two stages:
1. Access control: Check if userid exists in sip_accounts (allowlist)
2. Authentication: Validate password against hash in borrowers table

This maintains SIP access control while eliminating plaintext password
storage. Staff users authenticate with their Koha password (securely hashed).

Test plan:
1. Run updated tests to verify they pass
2. Verify SIP2 authentication works with staff user credentials
3. Confirm no plaintext passwords are stored

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:06 -07:00
Pedro Amorim dfd9e08b6b
Bug 37893: Add warning notes to obsolete xml file sections
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:06 -07:00
Pedro Amorim e49697234e
Bug 37893: API tests
prove t/db_dependent/api/v1/sip2_accounts.t
prove t/db_dependent/api/v1/sip2_institutions.t
prove t/db_dependent/api/v1/sip2_system_preference_overrides.t

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:05 -07:00
Pedro Amorim b90f7c88ad
Bug 37893: Add sip2 module permission
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:05 -07:00
Pedro Amorim f70d7a5405
Bug 37893: (QA follow-up): Address qa script complaints
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:04 -07:00
Pedro Amorim ab7684ca2b
Bug 37893: Reimplement check for fresh SIP config
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:04 -07:00
Pedro Amorim 75827c831e
Bug 37893: Remove redundant inheritance
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:03 -07:00
Pedro Amorim 3866d85555
Bug 37893: (QA follow-up): Nuke server params and listeners from UI
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:03 -07:00
Pedro Amorim 6b28a7da7d
Bug 37893: Rewrite: Move to composition API as well as other changes to use the latest of bug 38201
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:02 -07:00
Pedro Amorim cd25cca2b5
Bug 37893: VueJS Framework: Consider rendering of relationshipSelect attribute on list
The display of a relationshipSelect on the ResourceList defaults to
whats in the showElement part of the attribute definition.
This also means we can now get rid of the 'vendor' attribute type and
have that be a 'relationshipSelect' instead.

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:02 -07:00
Pedro Amorim d6ba3806fa
Bug 37893: Add cypress tests
cypress run --spec t/cypress/integration/SIP2/Institutions.ts
cypress run --spec t/cypress/integration/SIP2/Accounts.ts
cypress run --spec t/cypress/integration/SIP2/SystemPreferenceOverrides.ts

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:01 -07:00
Pedro Amorim 9029216d77
Bug 37893: Add SIP2 module item menu to admin-home and admin-menu
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:01 -07:00
Pedro Amorim 2ed892b38c
Bug 37893: (QA follow-up): Check if port already in use when storing a listener
To test:
1) Ensure a port is already in use in the server
2) Try creating a new listener using that same port.
3) Notice the error 'Something went wrong: Error: Can't listen on port 127.0.0.1:8023/tcp/IPv4. Port already in use.' is shown on the UI

Co-authored-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:00 -07:00
Pedro Amorim ee62bd459e
Bug 37893: (QA follow-up) Add tooltips to institutions form
Also make 'ILS' the default value and placeholder of 'implementation'

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:21:00 -07:00
Pedro Amorim c01f870d7e
Bug 37893: Add tests: DB changes get picked up by get_configuration without a server restart
prove t/db_dependent/Koha/SIP2/SIP2ModuleMigration.t

Test plan for the whole module:
[MODULE UI TESTING]
1) Checkout the branch and reset_all
2) Run 'updatedatabase'. The contents from
   /etc/koha/sites/kohadev/SIPConfig.xml have been migrated to the
database and should be accessible in the UI.
3) Visit the administration page:
   http://localhost:8081/cgi-bin/koha/admin/admin-home.pl
4) Notice the new 'Self-service circulation (SIP2)' item under 'Patrons
   and circulation'. Click it.
5) Notice you are now on the new SIP2 module. Create some institutions,
   accounts, listeners, etc. Play around with the forms.
6) Confirm all the data has been migrated correctly, and is editable in
   the UI as expected.

[SIP TESTING]
1) On ktd, run the following SIP emulator command:
$ perl misc/sip_cli_emulator.pl -su koha -sp koha -l kohalibrary --host localhost --patron 42 -m patron_information
2) Note that the response message contains 'Greetings from Koha'.
3) Using the module UI, visit SIP accounts:
   http://localhost:8081/cgi-bin/koha/sip2/accounts
4) Find the SIP account that has 'koha' as login. Click edit.
5) Scroll down to 'SIP response mappings' and click 'Add new screen msg regex'.
6) On 'Find', enter 'Greetings from Koha'. On 'Replace', enter 'Hello from 37893 test plan'. Save.
7) Repeat the sip command from 1). Note that 'Greetings from Koha has been replaced with 'Hello from 37893 test plan', without having to restart the SIP server.

[OPTIONAL]
1) You can repeat the previous steps in [MODULE UI TESTING] but edit the contents of
   /etc/koha/sites/kohadev/SIPConfig.xml beforehand with a more complex and
thorough configuration (something resembling a real SIPConfig.xml)
2) After updating the contents of SIPConfig.xml, restart SIP:
koha-sip --restart
3) Test the module again, verify the contents have been migrated as
    expected.

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:20:59 -07:00
Pedro Amorim b1c964db86
Bug 37893: Handle SIP config updates
The classes that use Koha::SIP2::Object as base update the
config_timestamp server param whenever an object of said classes is
inserted, updated or deleted.

This patch considers that, and performs a check to see if the
config_timestamp is more recent than the one which the SIP server was
started with. If it is, config is fetched from the database for up to
date configurations.

Note: The classes currently using Koha::SIP2::Object as base are as
follows:
Koha::SIP2::Account
Koha::SIP2::Institution
Koha::SIP2::SystemPreferenceOverride

The 2 classes that are left out are:
Koha::SIP2::Listener
Koha::SIP2::ServerParam

A UI message is shown when CRUDing any of the 2 above informing that a
SIP server restart is required for the changes to take effect.
The reason these 2 are left out is because they're loaded and only
utilized when the SIP server is launched.

Co-authored-by: Mark Hofstetter <mark@hofstetter.at>
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:20:59 -07:00
Pedro Amorim c3a9bc3ff3
Bug 37893: Add data migration tests
This test file utilizes the same SIPconfig.xml as the atomicupdate.
To test different SIPConfig.xml configurations using k-t-d, edit the
contents of /etc/koha/sites/kohadev/SIPConfig.xml and run the test file
again. All tests should always pass.

[IMPORTANT]: The atomicupdate file used in this test (bug_37893.pl)
needs to be updated to the respective DBrev file when it's pushed.

prove t/db_dependent/Koha/SIP2/SIP2ModuleMigration.t

Test plan for the whole module:
1) Checkout the branch and reset_all
2) Visit the administration page:
/cgi-bin/koha/admin/admin-home.pl
3) Notice the new 'Self-service circulation (SIP2)' item under 'Patrons
   and circulation'. Click it.
4) Notice you are now on the new SIP2 module. Create some institutions,
   accounts, listeners, etc. Play around with the forms.
5) Notice everytime you add/edit a new SIP2 'resource', a prompt asking
   to restart the SIP2 server is shown. If you confirm it, it will
restart the SIP server in order for the new data to take effect.
6) Run 'updatedatabase'. Notice the contents from
   /etc/koha/sites/kohadev/SIPConfig.xml have been migrated to the
database are should be accessible in the UI.
7) Confirm all the data has been migrated correctly, and is editable in
   the UI as expected.
8) You can repeat this test plan but edit the contents of
   /etc/koha/sites/kohadev/SIPConfig.xml with a more complex and
thorough configuration (something resembling a real SIPConfig.xml)
9) After updating the contents of SIPConfig.xml, restart SIP:
koha-sip --restart
10) Test the module again, verify the contents have been migrated as
    expected.
11) Run the migration test again to ensure that SIP2 is being served the
    exact same configuration before and after the migration:
prove t/db_dependent/Koha/SIP2/SIP2ModuleMigration.t

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:20:58 -07:00
Pedro Amorim f3dc7ce05e
Bug 37893: Add tables to atomicupdate
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:20:58 -07:00
Pedro Amorim 8e83b27a0f
Bug 37893: SIP Configuration read from database
To test:
perl ./C4/SIP/SIPServer.pm /etc/koha/sites/kohadev/SIPconfig.xml

Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:20:57 -07:00
Pedro Amorim 1cea8fb01d
Bug 37893: SIP accounts - automated dbic - add register
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:20:57 -07:00
Pedro Amorim fa527ac8ff
Bug 37893: SIP2 System preference overrides
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:20:56 -07:00
Pedro Amorim 443d4a069b
Bug 37893: SIP Server params
Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-11-18 11:20:56 -07:00