Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetHeaders()

static unsafe WebHeaderCollection Interop.HttpApi.GetHeaders ( IntPtr memoryBlob,
IntPtr originalAddress )
inlinestaticpackage

Definition at line 785 of file Interop.cs.

786 {
788 byte* ptr = (byte*)(void*)memoryBlob;
789 HTTP_REQUEST* ptr2 = (HTTP_REQUEST*)ptr;
790 long num = ptr - (byte*)(void*)originalAddress;
791 if (ptr2->Headers.UnknownHeaderCount != 0)
792 {
793 HTTP_UNKNOWN_HEADER* ptr3 = (HTTP_UNKNOWN_HEADER*)(num + (byte*)ptr2->Headers.pUnknownHeaders);
794 for (int i = 0; i < ptr2->Headers.UnknownHeaderCount; i++)
795 {
796 if (ptr3->pName != null && ptr3->NameLength > 0)
797 {
798 string name = new string(ptr3->pName + num, 0, ptr3->NameLength);
799 string value = ((ptr3->pRawValue == null || ptr3->RawValueLength <= 0) ? string.Empty : new string(ptr3->pRawValue + num, 0, ptr3->RawValueLength));
801 }
802 ptr3++;
803 }
804 }
805 HTTP_KNOWN_HEADER* ptr4 = &ptr2->Headers.KnownHeaders;
806 for (int i = 0; i < 41; i++)
807 {
808 if (ptr4->pRawValue != null)
809 {
810 string value2 = new string(ptr4->pRawValue + num, 0, ptr4->RawValueLength);
811 webHeaderCollection.Add(HTTP_REQUEST_HEADER_ID.ToString(i), value2);
812 }
813 ptr4++;
814 }
815 return webHeaderCollection;
816 }
void Add(TKey key, TValue value)

References System.Collections.Generic.Dictionary< TKey, TValue >.Add(), Interop.HttpApi.HTTP_REQUEST_HEADER_ID.ToString(), and System.value.