SharpCifs.Smb.SmbFile.Send C# (CSharp) Method

Send() private method

private Send ( ServerMessageBlock request, ServerMessageBlock response ) : void
request ServerMessageBlock
response ServerMessageBlock
return void
        internal virtual void Send(ServerMessageBlock request, ServerMessageBlock response
            )
        {
            for (; ; )
            {
                ResolveDfs(request);
                try
                {
                    Tree.Send(request, response);
                    break;
                }
                catch (DfsReferral dre)
                {
                    if (dre.ResolveHashes)
                    {
                        throw;
                    }
                    request.Reset();
                }
            }
        }

Usage Example

		/// <exception cref="SharpCifs.Smb.SmbException"></exception>
		/// <exception cref="System.UriFormatException"></exception>
		/// <exception cref="UnknownHostException"></exception>
		internal SmbFileOutputStream(SmbFile file, bool append, int openFlags)
		{
			this._file = file;
			this._append = append;
			this._openFlags = openFlags;
			_access = ((int)(((uint)openFlags) >> 16)) & 0xFFFF;
			if (append)
			{
				try
				{
					_fp = file.Length();
				}
				catch (SmbAuthException sae)
				{
					throw;
				}
				catch (SmbException)
				{
					_fp = 0L;
				}
			}
			if (file is SmbNamedPipe && file.Unc.StartsWith("\\pipe\\"))
			{
				file.Unc = Runtime.Substring(file.Unc, 5);
				file.Send(new TransWaitNamedPipe("\\pipe" + file.Unc), new TransWaitNamedPipeResponse
					());
			}
			file.Open(openFlags, _access | SmbConstants.FileWriteData, SmbFile.AttrNormal, 
				0);
			this._openFlags &= ~(SmbFile.OCreat | SmbFile.OTrunc);
			_writeSize = file.Tree.Session.transport.SndBufSize - 70;
			_useNtSmbs = file.Tree.Session.transport.HasCapability(SmbConstants.CapNtSmbs
				);
			if (_useNtSmbs)
			{
				_reqx = new SmbComWriteAndX();
				_rspx = new SmbComWriteAndXResponse();
			}
			else
			{
				_req = new SmbComWrite();
				_rsp = new SmbComWriteResponse();
			}
		}
All Usage Examples Of SharpCifs.Smb.SmbFile::Send