Addressing the boundaries of a permanent injunction awarded to a major software developer, the US Court of Appeals for the Ninth Circuit largely agreed that the defending developer was in contempt for violating the order but reversed on certain issues where the district court overextended the injunction. Oracle USA, Inc. v. Rimini St., Inc., Case No. 22-15188 (9th Cir. Aug. 24, 2023) (Bybee, Bumatay, JJ.; Bennett, Dist. J., sitting by designation).
Oracle creates enterprise software to carry out business functions. Oracle’s customers buy licenses to its products, which require updates and technical support. These necessary support services can be outsourced to third-party vendors, such as Rimini.
This case is the byproduct of a 13-year battle that Oracle initiated on the grounds that Rimini’s support services constituted copyright infringement. Rimini made generic versions of Oracle software on Rimini computers to develop updates and bug fixes (local hosting) and supported clients by using development environments created pursuant to a different client’s license (cross-use). After multiple appeals and remands, the case resulted in a permanent injunction prohibiting Rimini from reproducing or cross-using Oracle software unless pursuant to a customer license. Rimini revamped its support services and sought a declaratory judgment of noninfringement. After Oracle was permitted to conduct discovery into potential violations of the injunction, the district court held a bench trial on 10 possible violations. The district court found Rimini in contempt for five of the 10 alleged violations (issues 1–4 and 8). On two others (issues 7 and 9), the district court found no contempt but enjoined Rimini from continuing a specific copying practice. The district court sanctioned Rimini $630,000, calculated according to statutory damages available under the Copyright Act.
Rimini appealed each contempt finding, the injunction and the sanctions.
First, the Ninth Circuit addressed the five contempt findings, sorted into three groups:
- Local hosting (issue 1)
- Cross-use (issues 2–4)
- Database copying (issue 8).
On issue 1, the Ninth Circuit affirmed. The lower court had found that Rimini received copyrighted files from its clients. Instead of following internal policies requiring them to quarantine or report these files, Rimini employees forwarded and saved them locally. Based on the plain language of the PI, this was a clear violation.
On issues 2–4, regarding cross-use, the Ninth Circuit also affirmed. Rimini used one client’s environment to modify and test updates that the client did not need and were intended for other clients. Since the injunction specifically prohibited cross-use, this was a violation. Rimini lodged multiple failed arguments, including that the injunction only prohibited cross-use in “generic” (non-client) environments, so its use of one client’s environment to support another client was allowed. The Court disagreed that the injunction was so specific.
On issue 8 (database copying), however, the Ninth Circuit reversed. The district court held Rimini in contempt for making copies of an Oracle database file on Rimini systems. When the client uploaded the file to Salesforce for Rimini to provide technical assistance, a copy was automatically created on Rimini’s system. Here, the [...]