3.3.4.9 Server Application Registers a Share

The calling application provides a share in a SHARE_INFO_503_I structure ([MS-SRVS] section 2.2.4.27) to register a share. The server MUST validate the SHARE_INFO_503_I structure as specified in [MS-SRVS] section 3.1.4.7. If any member in the structure is invalid, the server MUST return STATUS_INVALID_PARAMETER to the calling application. The server MUST look up the Share in the Server.ShareTable, where shi503_servername matches Share.ServerName and shi503_netname matches Share.Name. If a matching Share is found, the server MUST fail the call with an implementation-dependent error. Otherwise, the server MUST create a new Share with the following values set, insert it into Server.ShareTable, and return STATUS_SUCCESS.

  • Share.Name MUST be set to shi503_netname.

  • Share.Type MUST be set to shi503_type.

  • Share.Remark MUST be set to shi503_remark.

  • Share.LocalPath MUST be set to shi503_path.

  • Share.ServerName MUST be set to shi503_servername.

  • Share.FileSecurity MUST be set to shi503_security_descriptor.

  • Share.MaxUses MUST be set to shi503_max_uses.

  • Share.CurrentUses MUST be set to zero.