summaryrefslogtreecommitdiff
path: root/lang/modula-3-lib/files/patch-aw
diff options
context:
space:
mode:
Diffstat (limited to 'lang/modula-3-lib/files/patch-aw')
-rw-r--r--lang/modula-3-lib/files/patch-aw44
1 files changed, 44 insertions, 0 deletions
diff --git a/lang/modula-3-lib/files/patch-aw b/lang/modula-3-lib/files/patch-aw
new file mode 100644
index 000000000000..59c8ba9c509b
--- /dev/null
+++ b/lang/modula-3-lib/files/patch-aw
@@ -0,0 +1,44 @@
+Fix some things in the Uin interface for FreeBSD. Most important is the
+change to "struct_sockaddr_in".
+
+Index: m3/m3core/src/unix/freebsd-2/Uin.i3
+===================================================================
+RCS file: /home/jdp/m3-cvs/m3/m3core/src/unix/freebsd-2/Uin.i3,v
+retrieving revision 1.1.1.1
+diff -u -r1.1.1.1 Uin.i3
+--- Uin.i3 1996/09/24 05:22:00 1.1.1.1
++++ Uin.i3 1996/09/24 05:32:41
+@@ -8,7 +8,7 @@
+
+ INTERFACE Uin;
+
+-FROM Ctypes IMPORT short, char;
++FROM Ctypes IMPORT char;
+ FROM Utypes IMPORT u_char, u_short, u_long;
+ IMPORT Word;
+
+@@ -25,9 +25,12 @@
+ IPPROTO_PUP = 12; (* pup *)
+ IPPROTO_UDP = 17; (* user datagram protocol *)
+ IPPROTO_IDP = 22; (* xns idp *)
+- IPPROTO_HELLO = 63; (* "hello" routing protocol *)
+- IPPROTO_ND = 77; (* UNOFFICIAL net disk proto *)
++ IPPROTO_TP = 29; (* tp-4 w/ class negotiation *)
++ IPPROTO_RSVP = 46; (* resource reservation *)
++ IPPROTO_EON = 80; (* ISO cnlp *)
++ IPPROTO_ENCAP = 98; (* encapsulation header *)
+
++ IPPROTO_DIVERT = 254; (* divert pseudo-protocol *)
+ IPPROTO_RAW = 255; (* raw IP packet *)
+ IPPROTO_MAX = 256;
+
+@@ -128,7 +131,8 @@
+ (* Socket address, internet style. *)
+ TYPE
+ struct_sockaddr_in = RECORD
+- sin_family: short;
++ sin_len: u_char;
++ sin_family: u_char;
+ sin_port: u_short;
+ sin_addr: struct_in_addr;
+ sin_zero: ARRAY [0..7] OF char;