Rev 2 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2 | Rev 115 | ||
---|---|---|---|
Line 993... | Line 993... | ||
993 | 993 | ||
Line 994... | Line 994... | ||
994 | push eax ; save address of IP data |
994 | push eax ; save address of IP data |
995 | 995 | ||
996 | ; Get the address of the callers data |
996 | ; Get the address of the callers data |
997 | mov edi,[0x3010] |
997 | mov edi,[0x3010] |
998 | add edi,0x10 |
998 | add edi,TASKDATA.mem_start |
Line 999... | Line 999... | ||
999 | add edx,[edi] |
999 | add edx,[edi] |
Line 1056... | Line 1056... | ||
1056 | mov ebx, ecx ; need the length later |
1056 | mov ebx, ecx ; need the length later |
1057 | pop eax ; get callers ptr to data to send |
1057 | pop eax ; get callers ptr to data to send |
Line 1058... | Line 1058... | ||
1058 | 1058 | ||
1059 | ; Get the address of the callers data |
1059 | ; Get the address of the callers data |
1060 | mov edi,[0x3010] |
1060 | mov edi,[0x3010] |
1061 | add edi,0x10 |
1061 | add edi,TASKDATA.mem_start |
1062 | add eax,[edi] |
1062 | add eax,[edi] |
Line 1063... | Line 1063... | ||
1063 | mov esi, eax |
1063 | mov esi, eax |
1064 | 1064 | ||
Line 1115... | Line 1115... | ||
1115 | mov [eax + 21], cl ; Remote Port ( LS 16 bits ) |
1115 | mov [eax + 21], cl ; Remote Port ( LS 16 bits ) |
1116 | mov [eax + 16], edx ; Remote IP ( in Internet order ) |
1116 | mov [eax + 16], edx ; Remote IP ( in Internet order ) |
1117 | mov [eax + 24], dword 0 ; recieved data count |
1117 | mov [eax + 24], dword 0 ; recieved data count |
Line 1118... | Line 1118... | ||
1118 | 1118 | ||
1119 | mov esi, [0x3010] |
1119 | mov esi, [0x3010] |
1120 | mov ebx, [esi+0x4] |
1120 | mov ebx, [esi+TASKDATA.pid] |
1121 | mov [eax + 4], ebx ; save the process ID |
1121 | mov [eax + 4], ebx ; save the process ID |
Line 1122... | Line 1122... | ||
1122 | pop eax ; Get the socket number back, so we can return it |
1122 | pop eax ; Get the socket number back, so we can return it |
1123 | 1123 | ||
Line 1174... | Line 1174... | ||
1174 | 1174 | ||
1175 | sot_001: |
1175 | sot_001: |
Line 1176... | Line 1176... | ||
1176 | mov [eax + 28], ebx ; Indicate the state of the TCB |
1176 | mov [eax + 28], ebx ; Indicate the state of the TCB |
1177 | 1177 | ||
1178 | mov esi, [0x3010] |
1178 | mov esi, [0x3010] |
Line 1179... | Line 1179... | ||
1179 | mov ecx, [esi+0x4] |
1179 | mov ecx, [esi+TASKDATA.pid] |
1180 | mov [eax + 4], ecx ; save the process ID |
1180 | mov [eax + 4], ecx ; save the process ID |
Line 1546... | Line 1546... | ||
1546 | mov ebx, ecx ; need the length later |
1546 | mov ebx, ecx ; need the length later |
1547 | pop eax ; get callers ptr to data to send |
1547 | pop eax ; get callers ptr to data to send |
Line 1548... | Line 1548... | ||
1548 | 1548 | ||
1549 | ; Get the address of the callers data |
1549 | ; Get the address of the callers data |
1550 | mov edi,[0x3010] |
1550 | mov edi,[0x3010] |
1551 | add edi,0x10 |
1551 | add edi,TASKDATA.mem_start |
1552 | add eax,[edi] |
1552 | add eax,[edi] |
Line 1553... | Line 1553... | ||
1553 | mov esi, eax |
1553 | mov esi, eax |
1554 | 1554 | ||
Line 1669... | Line 1669... | ||
1669 | 1669 | ||
Line 1670... | Line 1670... | ||
1670 | mov bl, 0x10 ; ACK |
1670 | mov bl, 0x10 ; ACK |
1671 | 1671 | ||
1672 | ; Get the address of the callers data |
1672 | ; Get the address of the callers data |
1673 | mov edi,[0x3010] |
1673 | mov edi,[0x3010] |
1674 | add edi,0x10 |
1674 | add edi,TASKDATA.mem_start |
Line 1675... | Line 1675... | ||
1675 | add edx,[edi] |
1675 | add edx,[edi] |
1676 | mov esi, edx |
1676 | mov esi, edx |