コード例 #1
0
ファイル: RpcProgram.cs プロジェクト: alexcmd/DiscUtils
        protected XdrDataWriter StartCallMessage(MemoryStream ms, RpcCredentials credentials, uint procedure)
        {
            XdrDataWriter writer = new XdrDataWriter(ms);

            writer.Write(_client.NextTransactionId());
            writer.Write((int)RpcMessageType.Call);

            RpcCallHeader hdr = new RpcCallHeader();
            hdr.RpcVersion = RpcVersion;
            hdr.Program = (uint)Identifier;
            hdr.Version = (uint)Version;
            hdr.Proc = procedure;
            hdr.Credentials = new RpcAuthentication(credentials ?? new RpcNullCredentials());
            hdr.Verifier = RpcAuthentication.Null();
            hdr.Write(writer); 

            return writer;
        }
コード例 #2
0
 internal override void Write(XdrDataWriter writer)
 {
     writer.Write((int)0);
     writer.Write(_machineName);
     writer.Write(_uid);
     writer.Write(_gid);
     if (_gids == null)
     {
         writer.Write((int)0);
     }
     else
     {
         writer.Write(_gids.Length);
         for (int i = 0; i < _gids.Length; ++i)
         {
             writer.Write(_gids[i]);
         }
     }
 }
コード例 #3
0
        public override void Write(XdrDataWriter writer)
        {
            writer.Write((int)Status);

            writer.Write(DirAttributes != null);
            if (DirAttributes != null)
            {
                DirAttributes.Write(writer);
            }

            if (Status == Nfs3Status.Ok)
            {
                writer.Write(CookieVerifier);

                foreach (var entry in DirEntries)
                {
                    writer.Write(true);
                    entry.Write(writer);
                }

                writer.Write(false);
                writer.Write(Eof);
            }
        }
コード例 #4
0
 public void Write(XdrDataWriter writer)
 {
     writer.Write((int)_flavour);
     writer.WriteBuffer(_body);
 }
コード例 #5
0
 ////public TimeSpan ToTimeSpan()
 ////{
 ////    return new TimeSpan(_seconds * TicksPerSec + (_nseconds / TicksPerNanoSec));
 ////}
 public void Write(XdrDataWriter writer)
 {
     writer.Write(_seconds);
     writer.Write(_nseconds);
 }
コード例 #6
0
        ////public TimeSpan ToTimeSpan()
        ////{
        ////    return new TimeSpan(_seconds * TicksPerSec + (_nseconds / TicksPerNanoSec));
        ////}

        public void Write(XdrDataWriter writer)
        {
            writer.Write(_seconds);
            writer.Write(_nseconds);
        }
コード例 #7
0
 public void Write(XdrDataWriter writer)
 {
     writer.Write(Low);
     writer.Write(High);
 }
コード例 #8
0
 public void Write(XdrDataWriter writer)
 {
     writer.Write((int)_flavour);
     writer.WriteBuffer(_body);
 }
コード例 #9
0
 internal void Write(XdrDataWriter writer)
 {
     writer.Write((int)Type);
     writer.Write((int)Mode);
     writer.Write(LinkCount);
     writer.Write(Uid);
     writer.Write(Gid);
     writer.Write(Size);
     writer.Write(BytesUsed);
     writer.Write(RdevMajor);
     writer.Write(RdevMinor);
     writer.Write(FileSystemId);
     writer.Write(FileId);
     AccessTime.Write(writer);
     ModifyTime.Write(writer);
     ChangeTime.Write(writer);
 }
コード例 #10
0
 public void Write(XdrDataWriter writer)
 {
     writer.Write(TransactionId);
     writer.Write((int)RpcMessageType.Reply);
     ReplyHeader.Write(writer);
 }
コード例 #11
0
 internal void Write(XdrDataWriter writer)
 {
     writer.Write(_seconds);
     writer.Write(_nseconds);
 }
コード例 #12
0
ファイル: PortMap2Port.cs プロジェクト: Lukas0610/ndiscutils
 public void Write(XdrDataWriter writer)
 {
     writer.Write(Port);
 }
コード例 #13
0
 public override void Write(XdrDataWriter writer)
 {
     writer.Write((int)Status);
     CacheConsistency.Write(writer);
 }
コード例 #14
0
 internal void Write(XdrDataWriter writer)
 {
     writer.Write(Size);
     ModifyTime.Write(writer);
     ChangeTime.Write(writer);
 }