none
how do you create a symlink in SMB2? RRS feed

  • Question

  • Hi all,

    The SMB2 spec is quite clear on how to traverse over a symlink, but I can't find any mention of how a client would create a symlink. To create a hard link you would do a SMB2_SET_INFO with the FileLinkInformation, but neither MS-SMB2 nor MS-FSCC appear to document an information level that would let you create a symlink.

    Am I missing something somewhere? Is there a way to create symlinks?
    Saturday, June 14, 2008 4:25 AM

Answers

  •  

    Hi, James,

     

     After reviewing your question regarding creating symlink in SMB2 client, we believe that the following excerption from  the future release of [MS-SMB2] document will help you clarify your question.

     

    Symbolic Link: A symbolic link is a reparse point that points to another file system object. The object being pointed to is called the target. Symbolic links are transparent to users; the links appear as normal files or directories, and can be acted upon by the user or application in exactly the same manner. Symbolic links can be created using the FSCTL_SET_REPARSE_POINT request as specified in [MS-FSCC] section 2.3.41. They can be deleted using the FSCTL_DELETE_REPARSE_POINT request as specified in section 2.3.7 of [MS-FSCC]. Symbolic links are available in NTFS starting with Windows Vista and Windows Server 2008. Implementing symbolic links is optional for a server.  

     

    Please let us know if this helps or if you need further assistance.

     

    Thanks

    Hongwei Sun-MSFT


    hongwei
    • Marked as answer by KeithHa Thursday, September 4, 2008 9:34 PM
    Tuesday, June 24, 2008 6:49 PM

All replies

  • Thank you for your posting. We will review your question and post the answer as soon as our investigation is complete.

     

    Saturday, June 14, 2008 3:32 PM
  •  

    Hi, James,

     

     After reviewing your question regarding creating symlink in SMB2 client, we believe that the following excerption from  the future release of [MS-SMB2] document will help you clarify your question.

     

    Symbolic Link: A symbolic link is a reparse point that points to another file system object. The object being pointed to is called the target. Symbolic links are transparent to users; the links appear as normal files or directories, and can be acted upon by the user or application in exactly the same manner. Symbolic links can be created using the FSCTL_SET_REPARSE_POINT request as specified in [MS-FSCC] section 2.3.41. They can be deleted using the FSCTL_DELETE_REPARSE_POINT request as specified in section 2.3.7 of [MS-FSCC]. Symbolic links are available in NTFS starting with Windows Vista and Windows Server 2008. Implementing symbolic links is optional for a server.  

     

    Please let us know if this helps or if you need further assistance.

     

    Thanks

    Hongwei Sun-MSFT


    hongwei
    • Marked as answer by KeithHa Thursday, September 4, 2008 9:34 PM
    Tuesday, June 24, 2008 6:49 PM
  • Hi Hongwei,

    Thanks for clarifying WRT FSCTL_SET_REPARSE_POINT. I didn't read section 2.2.31 SMB2 IOCTL Request or [MS-SMB2] properly, where is says that any of the [MS-FSCC] FSCTL codes are valid.

    James
    James Peach
    Wednesday, June 25, 2008 4:50 AM