Symbolic-link identifying

US9542403B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9542403-B2
Application numberUS-201414548733-A
CountryUS
Kind codeB2
Filing dateNov 20, 2014
Priority dateNov 2, 2010
Publication dateJan 10, 2017
Grant dateJan 10, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Identifying symbolic links in network file systems is provided. An absolute path may be determined at a network file server. This may include determining a complete client path from an initial client path and combining the complete client path with a server export path. Once the absolute path is determined, it may be traversed using a file descriptor of each file in the absolute path to identify a symbolic link.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method of identifying a symbolic link in a path, comprising: determining, at a network file server, an absolute path having no symbolic links; and traversing, at the network file server, the determined absolute path using a file descriptor of each file in the absolute path to identify a first symbolic link that was inserted in the absolute path after the absolute path was determined, including starting at a root file or directory of the absolute path and sequentially attempting to open each file or directory in the absolute path, wherein opening each file is performed using an open operation with a first parameter that causes the open operation to open a file or directory that is adjacent a most recently returned file descriptor in the absolute path, and a second parameter that causes the open operation to determine whether the adjacent file or directory is a symbolic link, wherein the open operation is a specialized open operation that starts from a directory identified by the first parameter as opposed to a general-purpose open operation that starts from a current working directory. 2. The computer-implemented method of claim 1 , further comprising: determining an initial client path; resolving any symbolic links in the initial client path to determine a complete client path; and combining, at the network file server, the complete client path with a server export path to determine the absolute path. 3. The computer-implemented method of claim 2 , wherein resolving any symbolic links in the initial client path to determine the complete client path includes using realpath( ). 4. The computer-implemented method of claim 2 , wherein resolving any symbolic links in the initial client path to determine the complete client path is performed by a client of the network file server. 5. The computer-implemented method of claim 2 , wherein resolving any symbolic links in the initial client path to determine the complete client path is performed by a server of the network file server. 6. The computer-implemented method of claim 2 , wherein combining the complete client path with the server export path to determine the absolute path includes concatenating the complete client path with the server export path. 7. The computer-implemented method of claim 1 , wherein traversing the absolute path using a file descriptor of each file in the absolute path to identify a symbolic link includes obtaining a file descriptor for the server export path. 8. The computer-implemented method of claim 7 , further comprising starting at the file descriptor for the server export path and sequentially attempting to open each file or directory in the absolute path. 9. The computer-implemented method of claim 1 , wherein the open operation is an openat( ) operation. 10. The computer-implemented method of claim 9 , further comprising receiving, at the network file server, a file access request from which the absolute path is at least partially determined. 11. The computer-implemented method of claim 10 , further comprising denying the file access request where it is determined during performance of the openat( ) operation that the adjacent file or directory is a symbolic link. 12. The computer-implemented method of claim 1 , further comprising receiving, at the network file server and from a network file client, a file access request to access a computer file, the file access request including an initial path to the computer file. 13. The computer-implemented method of claim 12 , wherein determining, at a network file server, an absolute path includes determining, at the network file server, an absolute path based on the initial path. 14. The computer-implemented method of claim 13 , further comprising denying, at the network file server, the file access request when the first symbolic link is identified in the absolute path. 15. A computer program product for executing a network file server on a computer, said computer program product including a plurality of computer executable instructions stored on a non-transitory computer-readable medium, wherein said instructions are executed by the computer to: determine a complete client path from an initial client path; combine the complete client path with a server export path to generate an absolute path having no symbolic links; and traverse the determined absolute path using a file descriptor of each file in the absolute path to identify a first symbolic link that was inserted in the absolute path after the absolute path was determined, including starting at a root file or directory of the absolute path and sequentially attempting to open each file or directory in the absolute path, wherein opening each file is performed using an open operation with a first parameter that causes the open operation to open a file or directory that is adjacent a most recently returned file descriptor in the absolute path, and a second parameter that causes the open operation to determine whether the adjacent file or directory is a symbolic link, wherein the open operation is a specialized open operation that starts from a directory identified by the first parameter as opposed to a general-purpose open operation that starts from a current working directory. 16. The computer program product of claim 15 , wherein determining the complete client path from the initial client path is performed by one of: a network file system client; the computer executing the network file server. 17. The computer program product of claim 15 , wherein determining the complete client path from the initial client path includes using realpath( ) with the initial client path as input. 18. The computer program product of claim 15 , wherein combining the complete client path with the server export path to generate the absolute path includes concatenating the complete client path with the server export path. 19. A network file system, comprising: a processor; a memory; and a network file server program including a plurality of instructions stored in the memory that are executed by the processor to: receive a file access request from a client of the network file system; concatenate a complete client path determined from the file access request with a server export path to determine an absolute path having no symbolic links; traverse the determined absolute path using a file descriptor of each file in the absolute path to identify a first symbolic link that was inserted in the absolute path after the absolute path was determined; obtain a file descriptor for the server export path; starting at the file descriptor for the server export path, sequentially attempt to open each file or directory in the absolute path; and open each file using an open operation with a first parameter that causes the open operation to open a file or directory that is adjacent a most recently returned file descriptor in the absolute path, and a second parameter that causes the open operation to determine whether the adjacent file or directory is a symbolic link, wherein the open operation is a specialized open operation that starts from a directory identified by the first parameter as opposed to a general-purpose open operation that starts from a current working directory. 20. The system of claim 19 , wherein the plurality of instructions further includes instructions that are executed by the processor to deny the file access request where a first symbolic link is identified.

Assignees

Inventors

Classifications

  • G06F16/13Primary

    File access structures, e.g. distributed indices (arrangements of input from, or output to, record carriers G06F3/06) · CPC title

  • Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking · CPC title

  • Provision of network file services by network file servers, e.g. by using NFS, CIFS (network file access protocols H04L67/1097) · CPC title

  • Physics · mapped topic

  • Physics · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9542403B2 cover?
Identifying symbolic links in network file systems is provided. An absolute path may be determined at a network file server. This may include determining a complete client path from an initial client path and combining the complete client path with a server export path. Once the absolute path is determined, it may be traversed using a file descriptor of each file in the absolute path to identif…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F16/13. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 10 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).