Hilgraeve Corporation v. McAfee Associates, Inc. (Now Known as Network Associates, Inc.)

224 F.3d 1349 | Fed. Cir. | 2000

224 F.3d 1349 (Fed. Cir. 2000)

HILGRAEVE CORPORATION, Plaintiff-Appellant,
v.
MCAFEE ASSOCIATES, INC. (now known as Network Associates, Inc.), Defendant-Appellee.

99-1481, -1491

United States Court of Appeals for the Federal Circuit

DECIDED: August 2, 2000

On appeal from: U.S. District Court for the Eastern District of Michigan Judge Nancy G. EdmundsErnie L. Brooks, Brooks & Kushman P.C., of Southfield, Michigan, argued for plaintiff-appellant. With him on the brief were Robert C. J. Tuttle, Thomas A. Lewry, and Frank A. Angileri.

Michael Barclay, Wilson Sonsini Goodrich & Rosati, of Palo Alto, California, argued for defendant-appellee. With him on the brief were Peter P. Chen, David L. Larson, David L. Larson, Colleen Bal, and Behrooz Shariati. Of counsel on the brief was R. Terrance Rader, Rader, Fishman & Grauer PLLC, of Boomfield Hills, Michigan.

Before MICHEL, LOURIE, and RADER, Circuit Judges.

RADER, Circuit Judge.

1

On summary judgment, the United States District Court for the Eastern District of Michigan determined that the VirusScan product of McAfee Associates, Inc. (MC)* does not literally infringe Hilgraeve Corporation's U.S. Patent No. 5,319,776 (the '776 patent). See Hilgraeve Corp. v. McAfee Assocs., Inc., 70 F. Supp. 2d 738 (E.D. Mich. 1999). The district court also estopped Hilgraeve from arguing that VirusScan infringes any claim of the '776 patent under the doctrine of equivalents. This court affirms the district court's finding that prosecution history estoppel bars application of the doctrine of equivalents. This court vacates, however, the grant of summary judgment of no literal infringement and remands for appropriate further proceedings.

I.

2

Hilgraeve's '776 patent, entitled "In Transit Detection of Computer Virus with Safeguard," describes a program that scans for computer viruses. The claimed invention scans a body of data during its transfer, i.e., before storage of the data with potential viruses on the destination storage medium. If the program detects signs of a virus during the scan, the program automatically blocks storage.

3

Claims 1 and 18 of the '776 patent are at issue. Claim 1 reads as follows, with language in dispute underlined:

4

1. In a system for transferring digital data for storage in a computer storage medium, a method of screening the data as it is being transferred and automatically inhibiting the storage of screened data containing at least one predefined sequence, comprising the steps of:

5

causing a quantity of digital data resident on a source storage medium to be transferred to a computer system having a destination storage medium; receiving and screening the transferred digital data prior to storage on the destination storage medium to determine if at least one of a plurality of predefined sequences are present in the digital data received; and in response to said screening step :

6

(a) automatically causing the screened digital data to be stored on said destination storage medium if none of the plurality of predefined sequences are present and

7

(b) automatically inhibiting the screened digital data from being stored on said destination storage medium if at least one predefined sequence is present.

8

'776 patent, col. 17, ll. 9-29 (emphasis added). Claim 18 reads as follows:

9

18. A method of preventing the spread of computer viruses to a computer having a storage medium, comprising the steps of:

10

simultaneously searching for a plurality of virus signatures, each of which comprising an identifiable digital sequence, while said computer is receiving a stream of digital data for storage on said storage medium;

11

providing an indication of the detection of a virus from said searching step; and

12

automatically inhibiting the storage of said digital stream on said storage medium if any of said virus signatures have been detected.

13

Id. at col. 28, ll. 45-57 (emphasis added). Because these claims require inhibition of storage, the district court construed the meaning of the word "storage" in the temporal context of the patent. The district court construed "storage" as occurring "when the incoming digital data is sufficiently present on the destination storage medium, and accessible by the operating system or other programs, so that any viruses contained in the data can spread and infect the computer system." Hilgraeve, 70 F. Supp. 2d at 745. This definition is consistent with the district court's interpretation of the patent claims as requiring scanning prior to storage. See id. at 748. Neither party disputes the court's claim construction.

14

Hilgraeve contended that McAfee's accused product, VirusScan, infringes independent claims 1 and 18 and dependent claims 2 and 6 of the '776 patent. In other words, Hilgraeve alleged that VirusScan screens incoming digital data for viruses during transfer and before "storage" on the destination storage medium. McAfee, on the other hand, asserted that VirusScan does not infringe because it screens the incoming digital data only after it has been transferred and "stored" on the destination storage medium. Thus, the critical issue in the infringement analysis is whether VirusScan screens before, or after, the time at which incoming data is present on the destination storage medium and accessible by the operating system and other programs.

15

To resolve this issue on summary judgment, the district court relied solely upon expert testimony about the operation of VirusScan. The district court declined to entertain a declaration and accompanying exhibits offered by one of the co-inventors of the '776 patent, terming this evidence "a thinly veiled effort to introduce expert testimony in an improper manner." Id. at 754. The district court also declined to consider McAfee promotional materials describing VirusScan. Hilgraeve asserted that these promotional materials showed that a user of VirusScan would perceive that the program operates as outlined in the claims of the '776 patent. The district court pointed out that infringement is not a question of user perception of operation, but of actual operation. Therefore it declined to consider the promotional literature. See Id. at 756.

II

16

This court reviews the district court's grant of McAfee's motion for summary judgment of non-infringement without deference. See Conroy v. Reebok Int'l, Ltd., 14 F.3d 1570, 1575, 29 USPQ2d 1373, 1377 (Fed. Cir. 1994). A summary judgment may stand when the record shows no genuine issues of material fact and entitlement to judgment as a matter of law. See Fed. R. Civ. P. 56(c). In granting summary judgment, the district court must draw all reasonable inferences in favor of the nonmovant. See SRI Int'l v. Matsushita Elec. Corp., 775 F.2d 1107, 1116, 227 USPQ 577, 581 (Fed. Cir. 1985) (en banc).

III.

17

The district court based its summary judgment on the testimony of experts who had tested VirusScan and interpreted the VirusScan code. In examining the appellate record for genuine issues of material fact, this court notes disagreements between the experts. McAfee's expert, Mr. Belgard, opined on the basis of his studies that VirusScan first stores digital data and then screens for viruses, and so does not infringe the '776 patent. Hilgraeve's expert, Dr. Geske, on the basis of his own technical studies and consideration of deposition testimony of McAfee's designated witness on infringement, Mr. Kuo, reached a different conclusion. Dr. Geske characterized Mr. Belgard's description of VirusScan's operation as over-simplified and opined that his tests were not probative on the question of infringement. Thus, Dr. Geske concluded that VirusScan infringes the '776 patent. While disagreements do not always create genuine issues of material fact, on this record the conflicting allegations of experts leaves material factual questions unanswered.

18

The experts described the operation of VirusScan in different ways. McAfee's expert described VirusScan's operation in terms of a sequence of steps. In this sequence, first (step 1) an application program transfers all the data for storage to a file on the destination storage medium, then (step 2) the application program makes a request for the operating system to close the file containing the transferred data. If it is operating, VirusScan intercepts (step 3) the program's request to the operating system to close the file. According to Mr. Belgard, by the time VirusScan intercepts the "close file" command, all the requested data has been transferred and stored in a designated file on the destination storage medium. Later, (step 4) VirusScan makes a call to the operating system to close the file on behalf of the application program. Now, critically to McAfee, (step 5) the operating system closes the file, releases the transferred digital data that it has maintained on behalf of the application program, and returns control back to VirusScan. McAfee's expert asserted, on the basis of his testing, that at this point the operating system has made all the data transferred to the file available to the computer system. In other words, the destination storage medium - e.g., a hard disk drive - has already completely "stored" the data, as the district court defined "stored." In this description, because VirusScan permits storage, the operating system and all other application programs can copy and execute the file even if it contains a virus. According to McAfee, VirusScan only scans for viruses in the next step, (step 6). If VirusScan detects no viruses, it then returns control (step 7) to the application program. If it detects a virus (step 8), VirusScan calls the operating system to delete the file or perform a user-selectable option. Finally, (step 9) the operating system responds to the VirusScan call and deletes the file or performs the selected option.

19

McAfee thus based its defense on step 5 and the immediately preceding steps. According to McAfee's expert, step 5 concludes the process of "storage" as the district court defines that term. Because scanning occurs after step 5, VirusScan cannot, by this interpretation, infringe the '776 patent.

20

Hilgraeve's expert, for his part, described VirusScan's operation differently:

21

VirusScan modifies the operating system's "call-return mechanisms" used for file I/O such that VirusScan inhibits return to the calling process (a user application program, or command). When VirusScan detects an infected file, VirusScan maintains control of the system until it has completed the operations it has been preconfigured to perform, i.e., delete the infected file or move the infected file to a quarantined area.

22

In this description, VirusScan manipulates the operating system to prevent an application program from having access to the data during and possibly beyond the scanning process. Further, Hilgraeve's expert avers, if VirusScan detects an infected file, it continues to inhibit storage or access to that file until the infected data is deleted or quarantined. Thus, because the district court defined "storage" as both "present on the destination storage medium" and "accessible by the operating system or other programs," Hilgraeve contends that VirusScan does not store before scanning. Specifically, VirusScan defeats the "accessibility" component of the district court's definition of "storage."

23

These differences in the experts' descriptions of VirusScan's operation raise a genuine issue of material fact. The record shows a genuine and material conflict over the interaction of VirusScan with the computer's operating system arising from the differing explanations of the operation of VirusScan. Moreover the record does not conclusively describe VirusScan's interaction with the computer's operating system. McAfee's expert does not describe VirusScan's inhibition or manipulation of the operating system. Instead, this expert states that VirusScan makes the infected program available to the computer in general (an operation which defeats infringement) by a normal call from the application program to the operating system to close the file. Hilgraeve's expert, however, understands VirusScan to interact with the operating system itself to make an infected program inaccessible. The determination of whether either description (or neither) is correct requires a factual determination of the actual operation of the VirusScan program, particularly its interaction with the operating system. The testimony of neither party's expert reveals enough of such a determination to resolve the issues on this record.

24

Hilgraeve's expert specifically contests the validity and relevance of the three tests offered by McAfee's expert to "confirm" his stepwise interpretation of the operation of VirusScan. For example, in all of these tests McAfee's expert set the "Action" option in VirusScan to stop the program upon detection of an infected file and to ask the user whether to delete the file. However, claim 1 of the '776 patent requires that, in response to the virus screening, the invention "automatically" either stores an uninfected file, or inhibits the storage of an infected file. See '776 patent, col. 17, ll. 21-29. The inventor himself asserted while prosecuting the patent that his invention requires the user to perform "only one step." -- "The user simply initiates the data transfer." Thus a scanning program that does not automatically inhibit storage of an infected file cannot infringe the '776 patent. While VirusScan's "Action" option can also be set to automatically delete files, McAfee's expert did not conduct his tests with the program used in this mode. Thus, the tests could not prove that VirusScan does not infringe the '776 patent. Further, the record does not reflect the expert's consideration of the differences between VirusScan's operation in the non-automatic mode, in which it was tested, from its operation in the automatic mode, the mode claimed by the patent. McAfee's expert, Mr. Belgard, is only conclusory on this question, stating: "the results of my tests are equally applicable . . . regardless of how the 'Action' setting is set." Neither the tests nor any analysis in the record necessarily supports this conclusion. On the other hand, Hilgraeve's expert offers a similarly conclusory opinion that he "do[es] not believe Mr. Belgard could duplicate any of his 'tests' for any of the 'automatic' configurations of VirusScan . . . ." If the tests -- McAfee's only evidence proffered to "confirm" its expert's interpretation of the VirusScan code -- are to show non-infringement at all, the record must show that the choice of user intervention in VirusScan's "Action" setting does not affect the mechanism of storage or inhibition of storage of infected files.

25

Questions reaching beyond the effect of the "Action" cast doubt on whether McAfee's tests could really answer the question of whether VirusScan infringes the '776 patent. The first test involved a file transfer over a network from a computer with VirusScan to one without VirusScan. The '776 patent describes a system which screens transferred data upon receipt, not transmission. See '776 patent, fig. 6; col. 17, l. 17. Therefore, in such a transfer, the screening program must be able to operate on the data as it is received in the second computer. This record on appeal does not show that such operation was possible in this test configuration.

26

The second test involved a file transfer over a network, from the hard disk of a computer without VirusScan to a floppy disk, the destination medium, on a computer with VirusScan operating. VirusScan detected the virus and, having been configured to do so, displayed a prompt box asking the user what further action to take. At this point, examination of the file on the floppy disk showed that when the prompt box appeared, the infected file had been stored and was accessible. But VirusScan in the non-automatic inhibition mode, as used in this test, itself cannot infringe the '776 patent, which calls for automatic inhibition of storage upon detection of a virus. Once again, a test disabling the automatic capabilities of VirusScan is not probative of whether VirusScan may infringe in the automatic mode.

27

The third test involved a transfer of an infected file from the floppy drive on a computer to the hard drive, the destination medium, on the same computer, with VirusScan operating. VirusScan detected the infected file and, because it was so configured, displayed a prompt. Instead of responding to the prompt at this point, McAfee's expert removed the floppy disk and rebooted the computer, later finding that the infected file had been transferred to the hard drive and was accessible. Again, this test is not probative of any issue in the infringement analysis, for the same reasons that the second test is not probative. In addition, the record here does not contain any indication that the expert considered the relevance of the reboot process to the method in the '776 patent. Moreover the record does not show consideration of the effect of the reboot process on the operation of VirusScan itself, or its interaction with the operating system. Hilgraeve's expert testified that the rebooting process "prematurely" terminates a computer's normal operating system functions. According to this expert, VirusScan operates by preventing an operating system from having access to an infected file. Therefore, because rebooting disrupts the normal operating system, the disputed test does not show whether VirusScan prevented that access. In addition, this summary record does not disclose the effect of the rebooting process on the operation of VirusScan itself. Accordingly, this test as well does not resolve the infringement question.

IV.

28

Although the parties nominally agree on the district court's claim interpretation, Hilgraeve also argued before that court that the phrase "prior to storage" must be construed from the ordinary user's perspective, i.e., that whether or not VirusScan screens before or after storage, it will infringe if the user perceives that screening occurs before storage. As support for this argument, Hilgraeve refers to comments the applicant made to the Patent and Trademark Office (PTO) during prosecution, in support of the amendments to its application which resulted in allowance. The amendments added, inter alia, the phrase "prior to storage on the destination storage medium" to claim 1. See Hilgraeve, 70 F. Supp. 2d at 750. In its comments to the PTO, Hilgraeve asserted that "the Applicants' invention requires only one step. The user simply initiates the data transfer. The program automatically screens the data, as it is being transferred . . . ." Hilgraeve asserts that this comment means that the patented invention requires only that the user perceive screening before storage, regardless of how the program actually operates.

29

The district court correctly found nothing in the intrinsic evidence to support Hilgraeve's argument based on the perception of the program's operation. SeeHilgraeve, 70 F. Supp. 2d. at 756. Neither the claims nor the rest of the specification of the '776 patent show that the invention involves the user's perception of the program's operation. The written description supplies some suggestions for user interaction with the program to direct inspection for certain specific error protocols. The claims of the '776 patent, however, do not claim a method of screening data "so that the user perceives that screening occurs before storage," but instead claims a method of actually screening before storage. The patentee claimed a technical method, not a method for projecting a perception.

V.

30

The district court found Hilgraeve estopped from claiming infringement under the doctrine of equivalents by any product that screens for viruses after "storage." As originally submitted, the application that led to the '776 patent did not contain claim 18. Claim 18 was added in the applicant's first response to rejection of all its claims. In this response, the applicant stated to the examiner that "[t]he present invention also has the capability to respond to the detection of a virus by not only preventing the copying of the complete file, but also . . . ." (Emphasis added.) In other words, the applicant was stating that when the scanning program detected a virus, it prevented the copying of the complete file (among other things). Because an incomplete file would not be "sufficiently present on the destination storage medium, and accessible by the operating system or other programs" (except perhaps for erasure), the patentee may not now assert equivalents to claim 18 that allow screening after storage. SeeHilgraeve, 70 F.Supp. at 748-50. Claim 1 acquired the phrase "prior to storage on the destination storage medium" in a later amendment, after which the patent was granted. Hilgraeve admits that it amended its claims to specify screening "prior to storage" to procure its patent. A surrender of subject matter during patent prosecution may preclude recapturing any part of that subject matter, even if it is equivalent to the matter expressly claimed. See Warner-Jenkinson Co. v. Hilton Davis Chem. Co., 117 S.Ct. 1140, 1144 (1997). In other words, prosecution history estoppel bars recapture of subject matter surrendered during prosecution. By limiting the added claim 18 to screening before storage, and specifically adding "screening . . . prior to storage" to claim 1, Hilgraeve surrendered the possibility of infringement by equivalence of any process that does not contain this modification, i.e., that screens after storage.

VI.

31

Because neither McAfee's three tests nor either expert's analysis of the VirusScan code definitively answers the fundamental factual question of whether "storage," as defined by the district court, occurs before or after scanning in VirusScan, this court vacates the district court's grant of summary judgment of non-infringement and remands for further proceedings consistent with this opinion. Because Hilgraeve surrendered, during prosecution, the option of accusing a product of infringing its patent by equivalents if it does not screen before storage, this court affirms the district court's holding that a product that screens for viruses after "storage" cannot infringe any claim of the '776 patent under the doctrine of equivalents.

COSTS

32

Each party shall bear its own costs.

33

VACATED-IN-PART, AFFIRMED-IN-PART, and REMANDED.

NOTES:

*

Now known as Network Associates, Inc.

midpage