IP Library Granted Patent US 9,953,189
Granted Patent B2
US 9,953,189 · App. 14/446,983 · Granted Apr 24, 2018

Managing configurations of computing terminals

Inventors: Randall R. Cook (Mapleton, UT); Jeremy Hurren (Eagle Mountain, UT); Brian Mann (American Fork, UT); Kevin Goodman (Alpharetta, GA)
Assignee: FSLOGIX, INC.
G06F21/6281G06F2221/2141G06F2221/2149
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 9,953,189
App. No.
14/446,983
Granted
Apr 24, 2018
Kind
B2
Abstract

Disclosed is a system for configuring a terminal by intercepting requests, such as Input/Output (IO) requests or registry requests, evaluating rules based on the intercepted requests during runtime, and performing actions based on the rule evaluations, such as passing the request through, redirecting the request, modifying the request, hiding resources, or performing other actions. The system can be implemented in one or more of the terminal's file system filter drivers and registry filter drivers.

Claims (28)

1. A computing terminal, comprising:

a memory for storing an operating system and a plurality of resources, wherein the operating system comprises computer-implemented instructions for implementing one or more user mode processes in a user mode capable of interacting with one or more kernel mode components in a kernel mode for performing operations relating to the plurality of resources; and

a processor for executing the computer-implemented instructions of the operating system, wherein the operating system is configured to implement a filter driver to hide one or more indications of a presence of a resource of the plurality of resources from a user by performing steps comprising:

receiving, in the kernel mode, an access request to perform an operation relating to a resource;

determining, in the kernel mode, whether the resource is to be hidden from the user, wherein determining whether the resource is to be hidden comprises accessing one or more rules associated with the resource;

if the resource is to be hidden from the user, returning an indication that the resource is not present on the computing terminal, wherein returning the indication comprises returning a message indicating that the resource is not found; and

if the resource is not to be hidden from the user, passing the request to another component of the operating system to perform the operation and thereby allow access to the one or more indications of the presence of the resource.

2. The computing terminal of claim 1 , wherein the request to perform the operation comprises an IO request to open or create a file or to open or create a directory.

3. The computing terminal of claim 2 , wherein the IO request is received from a filter manager component of the operating system.

4. The computing terminal of claim 1 , wherein the request to perform the operation comprises a system call to open or create a registry key.

5. The computing terminal of claim 4 , wherein the system call is received from a configuration manager component of the operating system.

6. The computing terminal of claim 1 , wherein the filter driver is configured to hide all indications of the presence of the resource.

7. The computing terminal of claim 1 , wherein the access request to perform the operation relating to the resource is a request to access an additional resource that is indicative of the presence of the resource.

8. A computing terminal, comprising:

a memory for storing an operating system and a plurality of resources, wherein the operating system comprises computer-implemented instructions for implementing one or more user mode processes in a user mode capable of interacting with one or more kernel mode components in a kernel mode for performing operations relating to the plurality of resources; and

a processor for executing the computer-implemented instructions of the operating system, wherein the operating system is configured to implement a filter driver to hide one or more indications of a presence of a resource of the plurality of resources from a user by performing steps comprising:

receiving, in the kernel mode, an enumeration request;

determining, in the kernel mode, a context for the enumeration request,

determining, in the kernel mode, that the enumeration request relates to the resource, wherein determining that the enumeration request relates to the resource includes using the determined context;

determining, in the kernel mode, whether the resource is to be hidden from the user, wherein determining whether the resource is to be hidden comprises accessing one or more rules associated with the resource;

if the resource is to be hidden from the user, intercepting a result of the enumeration request, modifying the result to remove information pertaining to the resource to be hidden, and returning a modified version of the result; and

if the resource is not to be hidden from the user, passing the enumeration request to another component of the operating system for performance of the enumeration request without modifying a result of the enumeration request.

9. The computing terminal of claim 8 , wherein the enumeration request comprises a directory query.

10. The computing terminal of claim 9 , wherein the directory query is received from a filter manager component of the operating system.

11. The computing terminal of claim 8 , wherein the enumeration request comprises a system call to enumerate a registry key.

12. The computing terminal of claim 11 , wherein the system call is received from a configuration manager component of the operating system.

13. The computing terminal of claim 8 , wherein the filter driver is configured to hide all indications of the presence of the resource.

14. The computing terminal of claim 8 , wherein the enumeration request is a request for enumeration of another resource that is indicative of the presence of the resource.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2020
From: FSLOGIX, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 053437/0578 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2019
From: COOK, RANDALL R.; HURREN, JEREMY; MANN, BRIAN; GOODMAN, KEVIN
To: FSLOGIX, INC.
Reel/Frame 048193/0909 →
RELEASE OF SECURITY INTEREST Recorded Oct 30, 2018
From: SILICON VALLEY BANK
To: FSLOGIX, INC.
Reel/Frame 047351/0070 →
SECURITY INTEREST Recorded Aug 2, 2017
From: FSLOGIX, INC.
To: SILICON VALLEY BANK
Reel/Frame 043174/0966 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2014
From: COOK, RANDALL R.; HURREN, JEREMY; MANN, BRIAN; GOODMAN, KEVIN
To: FSLOGIX, INC.
Reel/Frame 033990/0383 →
Continuity (2)
Provisional Application 61860189 · Jul 30, 2013
Related Publication 20150040181A1 · Feb 5, 2015