IP Library Granted Patent US 8,806,036
Granted Patent B1
US 8,806,036 · App. 11/291,836 · Granted Aug 12, 2014

Rewriter filter

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,806,036
App. No.
11/291,836
Granted
Aug 12, 2014
Kind
B1
Abstract

A network device that rewrites web content may include logic to support the operation of rewriter filters that augment the network device's built-in rewriter. The rewriter filters may be used to correct deficiencies in the built-in rewriter without requiring a new built-in rewriter to be installed.

Claims (65)

1. A network device, comprising:

a processor to implement logic to:

receive an indication that a rewriter engine is unable to rewrite a request into a form such that a destination device can operate on the request;

determine that the request is to be rewritten using a rewriter filter associated with the rewriter engine when the indication is received that the rewriter engine is unable to rewrite the request in a manner such that the destination device can operate on the request, and

call the rewriter filter when it is determined that the request is to be rewritten,

rewrite the request using the rewriter filter to generate a rewritten request that can be operated on by the destination device, and

send the rewritten request to the destination device.

2. The network device of claim 1 , where the request is received from a client.

3. The network device of claim 1 , where the rewriter filter is provided in an encrypted form, where the encrypted form is adapted to prevent the rewriter filter from being called unless the network device is authorized to execute the rewriter filter.

4. The network device of claim 1 , where the rewriter filter is authorized via a license.

5. The network device of claim 1 , where the rewriter filter is further configured to rewrite the request if the network device is authorized to operate the filter.

6. The network device of claim 1 , where the rewriter filter is to operate in a safe mode, where the safe mode prevents the rewriter filter from making system calls that can be used to access the network device.

7. The network device of claim 1 , where the rewriter filter is disabled if the rewriter engine is rewriting the request without use of the rewriter filter.

8. A rewriter filter, comprising:

a processor to implement logic implemented via a general-purpose programming language to:

rewrite a request into a rewritten request when an indication is received that a rewriter engine associated with the rewriter filter is unable to rewrite the request in a manner such that a destination device can operate on the request, where the request is rewritten in a manner such that that the destination device can operate on the rewritten request, and

output the rewritten request for sending to the destination device.

9. The rewriter filter of claim 8 , where the general-purpose programming language is a scripted programming language.

10. A method to facilitate communication, the method comprising:

calling, by a processor, a rewriter filter that operates in cooperation with a rewriter engine between a first device and a second device when an indication is received that the rewriter engine in unable to rewrite a request in a manner such that the second device can operate on the request;

rewriting the request into a rewritten form via the rewriter filter;

making, by the processor, the rewritten request available to the second device; and

receiving, at the processor, a response from the second device, where the response is generated by the second device in response to processing the rewritten request.

11. The method of claim 10 , further comprising:

calling the rewriter filter if the rewriter engine is not properly rewriting the request.

12. The method of claim 10 , further comprising:

disabling the rewriter filter after the rewriter engine has been fixed to properly rewrite the request without the rewriter filter.

13. The method of claim 10 , further comprising:

decrypting the rewriter filter to facilitate rewriting the request.

14. The method of claim 10 , further comprising:

identifying a uniform resource locator (URL) pattern associated with the request; and

associating the rewriter filter with the identified URL pattern to facilitate the rewriting the request.

15. The method of claim 10 , further comprising:

disabling the rewriter filter if the rewriter engine is modified.

16. A method to facilitate communication, the method comprising:

calling, by a processor, a rewriter filter that operates in cooperation with a rewriter engine between a first device and a second device when an indication is received that the rewriter engine in unable to rewrite a request in a manner such that the second device can operate on the request;

rewriting the request into a first rewritten form via the rewriter filter;

making, by the processor, the first rewritten request available to the second device; and

receiving, by the processor, a response from the second device.

17. The method of claim 16 , further comprising:

disabling the rewriter filter after the rewriter engine has been fixed to properly rewrite the response without the rewriter filter.

18. The method of claim 16 , further comprising:

identifying a uniform resource locator (URL) pattern associated with the response; and

associating the rewriter filter with the identified URL pattern to facilitate the rewriting the response.

19. The method of claim 16 , further comprising:

disabling the rewriter filter if the rewriter engine is modified.

20. A rewriter comprising:

a processor to implement logic to:

receive an indication that a rewriter engine is unable to rewrite a request or a response into a form such that a first destination or a second destination can process the request or the response;

determine that the request or the response is to be rewritten using a filter associated with the rewriter engine when the indication is received, and

the filter to:

receive the request or the response if the request or the response is to be rewritten using the filter, and

rewrite the request into a rewritten request that can be processed by the first destination or rewrite the response into a rewritten response that can be processed by the second destination.

21. The rewriter of claim 20 , where the filter is adapted to maintain state information regarding the request, the response, the rewritten request or the rewritten response.

22. The rewriter of claim 20 , where the filter is implemented in a scripted programming language.

23. The rewriter of claim 20 , where the filter is associated with an identifier that identifies an error associated with information exchanged between the first destination and the second destination.

24. The rewriter of claim 20 , where the request or the response is rewritten by the filter until a rewriter engine is modified to properly rewrite the request or the response.

25. The rewriter of claim 20 , where the filter is configured to be selectively disabled.

26. A network device, comprising:

means for controlling a rewriter filter;

means for receiving content from a source device;

means for producing a result by operating on the content, the result to facilitate producing rewritten content that can be operated on by a destination device;

means for calling the rewriter filter when an indication is received that the result cannot be operated on by the destination device;

means for operating on the result via the rewriter filter to produce the rewritten content; and

means for making the rewritten content available to the destination device.

Assignments (16)
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY 14633493 WHICH WAS ENTERED INCORRECTLY AS 14633793 PREVIOUSLY RECORDED ON REEL 71176 FRAME 315. ASSIGNOR(S) HEREBY CONFIRMS THE FIRST LIEN NEWCO SECURITY AGREEMENT. Recorded Nov 10, 2025
From: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 073818/0515 →
FIRST LIEN NEWCO SECURITY AGREEMENT Recorded May 5, 2025
From: PULSE SECURE, LLC; IVANTI, INC.; IVANTI US LLC; IVANTI SECURITY HOLDINGS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 071176/0315 →
SECURITY INTEREST Recorded May 3, 2025
From: PULSE SECURE LLC
To: ALTER DOMUS (US) LLC
Reel/Frame 071165/0027 →
NOTICE OF SUCCESSION OF AGENCY FOR SECURITY INTEREST AT REEL/FRAME 054665/0873 Recorded Apr 29, 2025
From: BANK OF AMERICA, N.A., AS RESIGNING AGENT
To: ALTER DOMUS (US) LLC, AS SUCCESSOR AGENT
Reel/Frame 071123/0386 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; IVANTI, INC.; MOBILEIRON, INC.; IVANTI US LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 054665/0062 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; INVANTI, INC.; MOBILEIRON, INC.; INVANTI US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 054665/0873 →
RELEASE OF SECURITY INTEREST : RECORDED AT REEL/FRAME - 053638-0220 Recorded Dec 1, 2020
From: KKR LOAN ADMINISTRATION SERVICES LLC
To: PULSE SECURE, LLC
Reel/Frame 054559/0368 →
SECURITY INTEREST Recorded Aug 29, 2020
From: PULSE SECURE, LLC
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 053638/0220 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 042380/0859 Recorded Aug 29, 2020
From: CERBERUS BUSINESS FINANCE, LLC, AS AGENT
To: PULSE SECURE, LLC
Reel/Frame 053638/0259 →
RELEASE OF SECURITY INTEREST Recorded Jul 21, 2020
From: JUNIPER NETWORKS, INC.
To: PULSE SECURE, LLC; SMOBILE SYSTEMS, INC.
Reel/Frame 053271/0307 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL 037338, FRAME 0408 Recorded May 1, 2017
From: US BANK NATIONAL ASSOCIATION
To: PULSE SECURE, LLC
Reel/Frame 042381/0568 →
GRANT OF SECURITY INTEREST PATENTS Recorded May 1, 2017
From: PULSE SECURE, LLC
To: CERBERUS BUSINESS FINANCE, LLC, AS COLLATERAL AGENT
Reel/Frame 042380/0859 →
SECURITY INTEREST Recorded Dec 21, 2015
From: PULSE SECURE, LLC
To: U.S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037338/0408 →
SECURITY INTEREST Recorded Dec 30, 2014
From: PULSE SECURE, LLC; SMOBILE SYSTEMS, INC.
To: JUNIPER NETWORKS, INC.
Reel/Frame 034713/0950 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2014
From: JUNIPER NETWORKS, INC.
To: PULSE SECURE, LLC
Reel/Frame 034045/0717 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2005
From: CHICKERING, ROGER A.
To: JUNIPER NETWORKS, INC.
Reel/Frame 017317/0759 →