IP Library Granted Patent US 8,347,401
Granted Patent B2
US 8,347,401 · App. 11/976,399 · Granted Jan 1, 2013

Method and system for ensuring a sharing violation free environment for a trusted software agent

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,347,401
App. No.
11/976,399
Granted
Jan 1, 2013
Kind
B2
Abstract

A method and system is provided by which a trusted software agent can perform in a sharing violation free environment, which reduces complexity and eliminates interference with applications. A method for handling sharing violations in a computer system comprises intercepting a request by an application for access to a file, capturing a sharing violation raised by the operating system due to the said request, determining whether the sharing violation is due to the trusted agent, and if so holding the request by the application for access to the file until the trusted agent no longer holds the file, and then reprocessing the request by the application for access to the file. The application is not aware that the sharing violation due to the trusted agent occurred, or that the request was pending and reprocessed as at the end of the process it receives a file handle as if a sharing violation did not occur.

Claims (62)

1. A method for handling sharing violations in a computer system comprising:

intercepting a request by an application directed to a file in a file system of an operating system for access to the file;

capturing a sharing violation issued by the operating system in response to the request;

determining whether the sharing violation was due to a trusted agent, the determination based at least in part on whether a count of the trusted agent's file access requests triggered by the application is greater than zero, wherein the trusted agent is a software agent configured to monitor file operations performed on the computer system;

storing the application's file access request in a queue if the sharing violation was due to the trusted agent; and

reprocessing the request by the application for access to the file when the trusted agent releases the file.

2. The method of claim 1 , further comprising signaling the trusted agent that the sharing violation due to the trusted agent has occurred.

3. The method of claim 1 , further comprising determining that the trusted agent no longer has access to the file when the count equals zero.

4. The method of claim 3 , wherein the act of reprocessing the request by the application for access to the file comprises:

removing the request by the application for access to the file from the queue; and

resending the request by the application for access to the file.

5. The method of claim 1 , wherein the act of determining whether the sharing violation was due to the trusted agent comprises:

making the determination that the count is greater than zero prior to capturing the sharing violation issued by the operating system and, based on the determination, adding the request by the application for access to the file to a list;

making a second determination, after capturing the sharing violation issued by the operating system, of whether the count of requests for access by the trusted agent to the file is greater than zero; and

determining that the sharing violation is due to the trusted agent when the request is in the list or the count is greater than zero after the second determination is made.

6. The method of claim 5 , further comprising signaling the trusted agent that the sharing violation due to the trusted agent has occurred.

7. The method of claim 5 , further comprising determining that the trusted agent no longer has access to the file when the count equals zero.

8. The method of claim 7 , wherein the act of reprocessing the request by the application for access to the file comprises:

removing the request by the application for access to the file from the queue and from the list; and

resending the request by the application for access to the file.

9. A system for handling sharing violations in a computer system comprising:

a processor operable to execute computer program instructions;

a memory operable to store computer program instructions executable by the processor; and

computer program instructions stored in the memory and executable to cause the processor to:

intercept a request by an application directed to a file in a file system of an operating system for access to the file;

capture a sharing violation issued by the operating system in response to the request;

determine whether the sharing violation was due to a trusted agent, the determination based at least in part on whether a count of the trusted agent's file access requests triggered by the application is greater than zero, wherein the trusted agent is a software agent configured to monitor file operations performed on the computer system;

store the application's file access request in a queue if the sharing violation was due to the trusted agent; and

reprocess the request by the application for access to the file when the trusted agent releases the file.

10. The system of claim 9 , further comprising instructions to cause the processor to signal the trusted agent that the sharing violation due to the trusted agent has occurred.

11. The system of claim 9 , further comprising instructions to cause the processor to determine that the trusted agent no longer has access to the file when the count equals zero.

12. The system of claim 11 , wherein the instructions to cause the processor to reprocess the request by the application for access to the file comprise instructions to cause the processor to:

remove the request by the application for access to the file from the queue; and

resend the request by the application for access to the file.

13. The system of claim 9 , wherein the instructions to cause the processor to determine whether the sharing violation was due to the trusted agent comprise instructions to cause the processor to:

make the determination that the count is greater than zero prior to executing the instructions to cause the processor to capture the sharing violation issued by the operating system and, based on the determination, add the request by the application for access to the file to a list;

make a second determination, after completing the capture of the sharing violation issued by the operating system, of whether the count of requests for access by the trusted agent to the file is greater than zero; and

determine that the sharing violation due to the trusted agent occurs when the request is in the list or the count is greater than zero when the second determination is made.

14. The system of claim 13 , further comprising instructions to cause the processor to signal the trusted agent that the sharing violation due to the trusted agent has occurred.

15. The system of claim 13 , further comprising instructions to cause the processor to determine that the trusted agent no longer has access to the file when the count equals zero.

16. The system of claim 15 , wherein the instructions to cause the processor to reprocess the request by the application for access to the file comprise instructions to cause the processor to:

remove the request by the application for access to the file from the queue; and

resend the request by the application for access to the file.

17. A computer program product for handling sharing violations in a computer system comprising:

a non-transitory computer readable storage medium;

computer program instructions, recorded on the computer readable storage medium and executable by a processor, to cause the processor to:

intercept a request by an application directed to a file in a file system of an operating system for access to the file;

capture a sharing violation issued by the operating system in response to the request;

determine whether the sharing violation was due to a trusted agent, the determination based at least in part on whether a count of the trusted agent's file access requests triggered by the application is greater than zero, wherein the trusted agent is a software agent configured to monitor file operations performed on the computer system;

determine that a count of the trusted agent's file access requests triggered by the application is greater than zero;

store the application's file access request in a queue if the sharing violation was due to the trusted agent; and

reprocess the request by the application for access to the file when the trusted agent releases the file.

18. The computer program product of claim 17 , further comprising instructions to cause the processor to signal the trusted agent that the sharing violation due to the trusted agent has occurred.

19. The computer program product of claim 17 , further comprising instructions to cause the processor to determine that the trusted agent no longer has access to the file when the count equals zero.

20. The computer program product of claim 19 , wherein the instructions to cause the processor to reprocess the request by the application for access to the file comprise instructions to cause the processor to:

remove the request by the application for access to the file from the queue; and

resend the request by the application for access to the file.

21. The computer program product of claim 17 , wherein the instructions to cause the processor to determine whether the sharing violation was due to the trusted agent comprise instructions to cause the processor to:

make the determination that the count is greater than zero, prior to capturing the sharing violation issued by the operating system and, based on the determination, adding the request by the application for access to the file to a list;

make a second determination, after capturing the sharing violation issued by the operating system, of whether the count of requests for access by the trusted agent to the file is greater than zero; and

determine that the sharing violation is due to the trusted agent when the request is in the list or the count is greater than zero when the second determination is made.

22. The computer program product of claim 21 , further comprising instructions to cause the processor to signal the trusted agent that the sharing violation due to the trusted agent has occurred.

Assignments (9)
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 →