IP Library Granted Patent US 8,739,188
Granted Patent B2
US 8,739,188 · App. 11/551,610 · Granted May 27, 2014

System, method and computer program product for deferring interface monitoring based on whether a library associated with the interface is loaded

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,739,188
App. No.
11/551,610
Granted
May 27, 2014
Kind
B2
Abstract

An interface monitoring system, method and computer program product are provided. In use, an interface is identified. In addition, monitoring of the interface is deferred based on whether a library associated with the interface is loaded.

Claims (43)

1. A method, comprising:

identifying, utilizing a processor, an invocation of an interface, the interface configured to facilitate communication between a first instance of hardware or software and a second instance of hardware or software;

determining, with the processor and in response to the invocation of the interface, whether a library associated with the interface has been previously loaded;

monitoring the interface, with the processor, only when it is determined that the library associated with the interface has been previously loaded; and

deferring monitoring of the interface until the library associated with the interface has already been loaded,

wherein deferring monitoring of the interface comprises:

adding an indicator for the interface to a list of pending interfaces to be monitored;

detecting a request to load a new library;

determining whether the new library is associated with any interface having the indicator for the interface in the list of pending interfaces to be monitored; and

monitoring the interface associated with the indicator only after it has determined that the library associated with the interface has been loaded.

2. The method of claim 1 , wherein the act of monitoring the interface includes hooking the interface.

3. The method of claim 1 , further comprising removing, with the processor, the interface that is associated with the new library from the list of pending interfaces when it is determined that the interface is associated with the new library.

4. A non-transitory computer readable medium, comprising instructions stored thereon to cause a processor to:

identify an invocation of an interface, the interface configured to facilitate communication between a first instance of hardware or software and a second instance of hardware or software;

determine, in response to the invocation of the interface, whether a library associated with the interface has been previously loaded;

monitor the interface only when it is determined that the library associated with the interface has been previously loaded; and

defer monitoring of the interface until the library associated with the interface has already been loaded;

wherein the instructions to cause the processor to defer monitoring of the interface comprise instructions to cause the processor to:

add an indicator for the interface to a list of pending interfaces to be monitored;

detect a request to load a new library;

determine whether the new library is associated with any interface having the indicator for the interface in the list of pending interfaces to be monitored; and

monitor the interface associated with the indicator only after it has determined that the library associated with the interface has been loaded.

5. The computer readable medium of claim 4 , wherein the interface includes an application program interface.

6. The computer readable medium of claim 4 , wherein the instructions to cause a processor to determine whether the library associated with the interface has been loaded include instructions to cause the processor to determine whether a library that contains the interface has been loaded.

7. The computer readable medium of claim 4 , wherein the library includes a dynamic link library.

8. The computer readable medium of claim 4 , wherein the instructions to cause a processor to monitor the interface include instructions to cause the processor to monitor the interface by hooking the interface.

9. The computer readable medium of claim 4 , further comprising instructions stored thereon to cause the processor to remove the interface that is associated with the new library from the list of pending interfaces when it is determined that the interface is associated with the new library.

10. The computer readable medium of claim 4 , wherein the instructions to cause a processor to determine whether the library associated with the interface has been previously loaded include instructions to cause the processor to intercept a file system event.

11. The computer readable medium of claim 10 , wherein the instructions to cause a processor to intercept the file system event include instructions to cause the processor to intercept the file system event by mapping a file that contains an on-disk image of the library associated with the interface.

12. The computer readable medium of claim 4 , wherein the instructions to cause a processor to detect the request to load the new library include instructions to cause the processor to intercept an invocation of a library loading interface.

13. The computer readable medium of claim 4 , wherein the instructions to cause a processor to determine whether the library associated with the interface has been loaded include instructions to cause the processor to evaluate a flow of the interface to determine whether a request to load the library has been made by the interface.

14. A system, comprising:

a memory; and

a processor operatively coupled to the memory, the processor adapted to execute instructions stored in the memory, comprising instructions that when executed cause the processor to:

identify an invocation of an interface, the interface configured to facilitate communication between a first instance of hardware or software and a second instance of hardware or software;

determine, in response to the invocation of the interface, whether a library associated with the interface has been previously loaded;

monitor the interface only when it is determined that the library associated with the interface has been previously loaded; and

defer monitoring of the interface until the library associated with the interface has already been loaded;

wherein the instructions to cause the processor to defer monitoring of the interface comprise instructions to cause the processor to:

add an indicator for the interface to a list of pending interfaces to be monitored;

detect a request to load a new library;

determine whether the new library is associated with any interface having the indicator for the interface in the list of pending interfaces to be monitored; and

monitor the interface associated with the indicator only after it has determined that the library associated with the interface has been loaded.

Assignments (10)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 20, 2006
From: DALCHER, GREGORY WILLIAM; LOWE, JOE C.
To: MCAFEE, INC.
Reel/Frame 018425/0372 →