コード例 #1
0
ファイル: Lsarpc.cs プロジェクト: zxz2020/Emby
            /// <exception cref="SharpCifs.Dcerpc.Ndr.NdrException"></exception>
            public override void Decode(NdrBuffer src)
            {
                src.Align(4);
                NumSids = src.Dec_ndr_long();
                int sidsp = src.Dec_ndr_long();

                if (sidsp != 0)
                {
                    src = src.Deferred;
                    int sidss = src.Dec_ndr_long();
                    int sidsi = src.Index;
                    src.Advance(4 * sidss);
                    if (Sids == null)
                    {
                        if (sidss < 0 || sidss > unchecked (0xFFFF))
                        {
                            throw new NdrException(NdrException.InvalidConformance);
                        }
                        Sids = new LsarSidPtr[sidss];
                    }
                    src = src.Derive(sidsi);
                    for (int i = 0; i < sidss; i++)
                    {
                        if (Sids[i] == null)
                        {
                            Sids[i] = new LsarSidPtr();
                        }
                        Sids[i].Decode(src);
                    }
                }
            }
コード例 #2
0
ファイル: Lsarpc.cs プロジェクト: Cyber-Forensic/Potato
			/// <exception cref="SharpCifs.Dcerpc.Ndr.NdrException"></exception>
			public override void Decode(NdrBuffer src)
			{
				src.Align(4);
				NumSids = src.Dec_ndr_long();
				int sidsp = src.Dec_ndr_long();
				if (sidsp != 0)
				{
					src = src.Deferred;
					int sidss = src.Dec_ndr_long();
					int sidsi = src.Index;
					src.Advance(4 * sidss);
					if (Sids == null)
					{
						if (sidss < 0 || sidss > unchecked(0xFFFF))
						{
							throw new NdrException(NdrException.InvalidConformance);
						}
						Sids = new LsarSidPtr[sidss];
					}
					src = src.Derive(sidsi);
					for (int i = 0; i < sidss; i++)
					{
						if (Sids[i] == null)
						{
							Sids[i] = new LsarSidPtr();
						}
						Sids[i].Decode(src);
					}
				}
			}