Item 46: Scrubbing failures
Item 46: Scrubbing failures
This allegation concerns three alleged scrubbing failures.
The first, recorded in a Bugzilla ticket dated 21 October 2020, concerned an incident in which Winsopia used CPX to process a number of load libraries in response to DR-191 but scrubbing failed in relation to certain C programs with the result that IBM copyright material was found by LzLabs in one of the load modules.
In cross-examination Mr Whittingham agreed that this was an example of a scrubbing failure:
“Q. So what's happened here, see if you agree with me, is that Winsopia has attempted to scrub a number of load libraries in response to a DR, DR-191, but scrubbing has failed in relation to some C programs with the result that what's described as IBM copyright material has been found by LzLabs in one of the load modules; do you agree with that?
A. Yes.”
As a result of this scrubbing failure, Mr Whittingham made a commit to the Git repository, adding a substantial number of additional CSECTs to the scrub list.
Mr Althen of LzLabs UK raised this issue with Mr Rockmann and others at LzLabs by email dated 21 October 2020:
“We have discovered an issue in the CPX Load Module scrubbing process. Not all Copyright Material is being removed. We have obviously imported those load modules on a number internal and [a customer] based SDM nodes. Do we have to do something, remove them, clear instances out ?”
At the request of Mr Rockmann, Mr Althen sent an SDM AMBLIST output, identifying many IBM CSECTs containing IBM copyright statements that had been missed from the scrubbing exercise. The output included, in relation to the IBM CSECTs: (i) a hexadecimal dump of the binary content code of the CSECT, (ii) a plain text interpretation of any EBCDIC encoding and (iii) a plain text interpretation of any ASCII encoding.
On the following day, Mr Rockmann sent an email to Mr Althen, stating:
“Given the tight timelines of this engagement we currently have to continue. We will need to clean up later on.”
Mr Swanson and Mr Stephens agree that all but four of the unscrubbed CSECTs were members of the SCEELKED or SEZACMTX libraries distributed with z/OS. As such, they were ICA Programs as defined by the ICA. Although they appear to have originated with a third-party customer, Mr Whittingham acknowledged that the load modules were processed by Winsopia using CPX and sent to LzLabs.
The second allegation concerns OS/VS COBOL CSECTs. On 22 October 2020 Mr Bowler commented in a Jira ticket:
“I am sorry but the load libraries in DR-189 package … will have to be sent back to Winsopia and scrubbed again because they contain some proprietary csects. Please can you request a redelivery and advise Winsopia that all csects whose names begin with ILBO must be added to the scrub list. ”
The following morning, Mr Vitale of LzLabs UK sent an email to Mr Whittingham regarding CSECTs that were outside the conventional three letter prefix and needed to be added to the scrub list:
“In a recent CPX package we had some OS/VS COBOL programs it appears they still contain some proprietary IBM csects. Can you update the scrub list to include ILBO*,
The load library in question on WINSP system is …
Once you have tested and the csects are scrubbed correctly, can you recreate a CPX package with the scrubbed library.”
In cross-examination, Mr Whittingham accepted that the relevant CSECTs in fact used a standard IBM prefix, albeit a four letter prefix, and would have been caught by the use of wild cards, not yet implemented. He added all CSECTs he could find that shared the relevant OS/VS COBOL prefix to the scrub list.
On 23 October 2020, Mr Whittingham circulated an email, stating:
“As mentioned in the meeting on Thursday, it has become apparent that the LZSLIST entry in CPX has become out of date. I have spent the last couple of days adding all the CSECTs I could discover that were missing.
I would like to request that, for the time being, scrubbed libraries, especially from newly arrived customer files, are scanned for copyrighted CSECTs using … You can see the JOB I have been using … brazenly plagiarised from something John put together (thanks JB!) Please notify me of any new CSECTs which need to be added.
I see this as an interim solution until I can implement something more permanent.”
Mr Swanson and Mr Stephens agree that the unscrubbed CSECTs were members of the SCEELKED or SEZACMTX libraries distributed with z/OS. As such, they were ICA Programs as defined by the ICA. As above, although they appear to have originated with a third-party customer, Mr Whittingham acknowledged that the load modules were processed by Winsopia using CPX and sent to LzLabs.
The third allegation concerns IMS RESLIB CSECTs. DR-216 was opened on 8 September 2020, requesting Winsopia to process and scrub a customer dataset, and create a new CPX package for the SDM. Winsopia duly created a new CPX package and sent it to LzLabs using the LzLabs FTP server.
By email dated 25 October 2020 Mr Vitale informed Mr Maddison of Winsopia that the CPX package created by Winsopia included the IMS SDFSRESL load libraries, in which some modules had been scrubbed but others still contained IBM copyright messages.
It is common ground that IMS Versions 12, 14 and 15 are ICA Programs. SDFSRESL is a library that contains standard IMS resources supplied as part of IMS. It follows that these IMS CSECTs are components of an ICA Program, and therefore an ICA Program.
In summary on this issue:
Load modules sent by Winsopia to LzLabs contained IBM CSECTs that were ICA Programs within the meaning of the ICA.
Winsopia’s supply of such materials to LzLabs constituted breach of clauses 4.1, 4.1.2(b) and/or 4.1.3(b) of the ICA.
- Heading
- Mrs Justice O’Farrell
- Section II - Background to the dispute
- The SDM
- Hercules
- Neon litigation
- Formation of LzLabs and Winsopia
- The ICA
- SDM development and the clean room procedures
- Launch of the SDM
- Project Eiger
- Further development of the SDM
- Audit request and termination
- Section III - The proceedings
- The Issues
- The factual witnesses
- Section IV - Construction of the ICA
- Approach to construction of the ICA
- Scope of licence
- The ICA Programs
- Customer applications
- Licensed Program Specifications
- Independent software vendors (ISVs)
- Debugging tools
- Restrictions on use of ICA Programs
- Legislative framework
- Berne Convention
- TRIPS
- WIPO
- Software Directive
- Copyright, Designs and Patents Act 1988 (CDPA)
- Applicable legal principles
- Conclusions on ICA
- Section V - Alleged breaches of the ICA
- Disassembly, decompilation and translation
- Item 2: Load Module Decompiler (“the LMD”) (Paragraph 11.2 of the Technical Particulars)
- Item 3: CICS Control Blocks Document (Paragraph 11.3 of the Technical Particulars)
- Item 4: EXEC DLI (Paragraphs 27.18 & 28.19 of RRRAPOC)
- Item 5: IBM Binder Software (Paragraph 11.4 of the Technical Particulars)
- Compiler listings – summary of the dispute
- Item 6: IGZCIVL COBOL runtime module (Paragraph 11.6 of the Technical Particulars)
- Item 7: CICS Translators (Paragraph 20.1-2 of the Technical Particulars)
- Item 8: Floating point rounding rules (Paragraph 20.3 of the Technical Particulars)
- Item 9: IBM PL/1 compiler (Paragraph 20.4 of the Technical Particulars & Paragraph 27 of the POC)
- Item 10: XML Parse statements (Paragraphs 33-38 of the Technical Particulars)
- Item 11: COBOL initialisation, branching and I/O declaratives (Paragraphs 27.4&27.5 RRRAPOC)
- Item 12: PL/I Condition handling (Paragraphs 27.10-27.12 of RRRAPOC)
- Reverse engineering through the systematic use of traces, dumps, slip traps, packet sniffing and other debugging tools techniques – summary of the dispute
- Item 13: CICS-to-CICS communications (Paragraph 28.1 of the Technical Particulars)
- Item 14: AMBLIST analysis of CICS Stubs (Paragraph 28.2 of the Technical Particulars)
- Item 15: Colesoft z/XDC and COBOL initialisation (Paragraph 28.3 of the Technical Particulars)
- Item 16: XDC and IMS (Paragraph 28.4 of the Technical Particulars)
- Additional examples
- Item 17: SLIP Traps and CICS (Paragraph 28.5 of the Technical Particulars)
- Item 18: SLIP Traps and COBOL (Paragraph 28.6 of the Technical Particulars)
- Macros and Copybooks - introduction
- Macros (Paragraphs 32.1-32.9 of the Technical Particulars) – summary of the dispute
- Item 19: DR-3246 (Paragraph 32.1 of the Technical Particulars)
- Item 20: DR-10237 (Paragraph 32.2 of the Technical Particulars)
- Item 21: DR-2753 (Paragraph 32.3 of the Technical Particulars)
- Item 22: DR-2771 (Paragraph 32.4 of the Technical Particulars)
- Item 23: DR-2796 (Paragraph 32.5 of the Technical Particulars)
- Item 24: DR-3280 (Paragraph 32.6 of the Technical Particulars)
- Item 25: DR-4281 (Paragraph 32.7 of the Technical Particulars)
- Item 26: DR-4322 (Paragraph 32.8 of the Technical Particulars)
- Item 27: DR-0847 (Paragraph 32.9 of the Technical Particulars)
- Macros - discussion
- Copybooks (Paragraphs 2.1.1.3 and 32.10-32.12 of the Technical Particulars) – nature of the dispute
- Item 28: DR-715 (Paragraph 32.10 of the Technical Particulars)
- Item 29: DR-753 (Paragraph 32.11 of the Technical Particulars)
- Item 30: DR-756 (Paragraph 2.1.1.3 of the Technical Particulars)
- Copybooks - discussion
- Transferring “unscrubbed” materials
- Item 31:Epiphany
- Item 32: Db2 Catalog table metadata
- Item 33: DSS dump
- Item 34: Kednos
- Item 35: CSECTs deliberately omitted from scrubbing
- Items 36 and 42: Unscrubbed CSECTs
- Items 37 and 40: IMS PROCLIB & DLIBATCH
- Item 38: DFHEI1 module
- Item 39: IGZXANE
- Item 41: IGZXNE3N
- Item 43: CEEBETBL, CEEBLLST, IBMPINPL & CEESG*
- Item 44: DR-4617
- Item 45: DR-171
- Item 46: Scrubbing failures
- Item 47: @@TRGLOC CSECT
- Item 48: PARMLIB & PROCLIB
- Use outside Enterprise and beyond Designated Machine
- Item 49: Brad Taylor (Paragraph 44.2 of the Technical Particulars)
- Item 50: Winsopia Pizzabox (Paragraph 44.5 of the Technical Particulars)
- Item 51: Justin Bendich (Paragraph 44.6 of the Technical Particulars)
- Conclusions on technical breaches
- Section VI - Wrongful procurement of breach
- Applicable legal principles
- LzLabs
- LzLabs UK
- Claims against the directors
- Mr Moores
- Summary on unlawful procurement
- Section VII - Unlawful means conspiracy
- Applicable legal principles
- Knowledge of unlawfulness
- Summary on unlawful means conspiracy
- Section VIII – Audit and Termination
- Validity of audit request
- Validity of termination
- Section IX - Limitation
- Contractual limitation
- Statutory Limitation
- Deliberate concealment
- Finding - section 32(1)(b)
- Finding - Section 32(2)
- Actual or constructive knowledge – legal principles
- Date of knowledge issues
- ICA 2013
- Mr Knight - 2017
- Mr Anzani - 2018
- Conclusions
![HT-2021-000363 - [2025] EWHC 532 (TCC)](https://backend.juristeca.com/files/emisores/logo_yJUntHA.png)