X-Git-Url: http://www.lcore.org/git/lcore.git/blobdiff_plain/4782a5c5afee47721cc617daa40dd29828342c2b..5ba06ea7bd30494fe55f81a3bc07c8d1eb3702e0:/unixstuff.inc

diff --git a/unixstuff.inc b/unixstuff.inc
index 76a7f52..89c96f2 100755
--- a/unixstuff.inc
+++ b/unixstuff.inc
@@ -8,6 +8,21 @@
       linux.dup(original,result);
     end;
     {$define gettimeofdaysec := gettimeofday}
+    const
+      IPPROTO_UDP=17;
+      IPPROTO_ICMP=1;
+    function ntohs(invalue:word):word;inline;
+    var
+      invaluebytes : array[0..1] of byte absolute invalue;
+      resultbytes : array[0..1] of byte absolute result;
+    begin
+      {$ifdef endian_little}
+	resultbytes[0] := invaluebytes[1];
+	resultbytes[1] := invaluebytes[0];
+      {$else}
+	result := invalue;
+      {$endif}
+    end;  
   {$else}
     
     {$define sigprocmask := fpsigprocmask}
@@ -26,16 +41,38 @@
     {$define dup2        := fpdup2}
     {$ifndef ver1_9_2}
       {$define flock     := fpflock}
-      {$ifndef ver1_9_4}
-        procedure Execl(Todo:string);inline;
-	var
-	  p : ppchar;
-	begin
-	  p := unixutil.StringToPPChar(Todo,1);
-	  if (p=nil) or (p^=nil) then exit;
-	  fpexecv(p^,p);
-	end;
-      {$endif}
+      {$ifndef ver1_9_4}
+        procedure Execl(Todo:string);inline;
+	var
+	  p : ppchar;
+	begin
+	  p := unixutil.StringToPPChar(Todo,1);
+	  if (p=nil) or (p^=nil) then exit;
+	  fpexecv(p^,p);
+	end;
+      {$endif}
+    {$endif}
+    {$ifdef ver2_0}
+      const
+        IPPROTO_UDP=17;
+        IPPROTO_ICMP=1;
+    {$endif}
+    {$ifdef ver1_9}
+      const
+        IPPROTO_UDP=17;
+        IPPROTO_ICMP=1;
+      function ntohs(invalue:word):word;inline;
+      var
+        invaluebytes : array[0..1] of byte absolute invalue;
+	resultbytes : array[0..1] of byte absolute result;
+      begin
+        {$ifdef endian_little}
+	  resultbytes[0] := invaluebytes[1];
+	  resultbytes[1] := invaluebytes[0];
+	{$else}
+	  result := invalue;
+	{$endif}
+      end;
     {$endif}
     procedure gettimeofday(var tv:ttimeval);inline;
     begin