mirror of
https://github.com/RGBCube/serenity
synced 2025-07-28 12:57:36 +00:00
Ports: Add OpenSSH port
This commit is contained in:
parent
bf809226de
commit
0f52144477
12 changed files with 1417 additions and 0 deletions
209
Ports/openssh/patches/remove_inet_aton_redef.patch
Normal file
209
Ports/openssh/patches/remove_inet_aton_redef.patch
Normal file
|
@ -0,0 +1,209 @@
|
|||
bf47ca1400b0548fdabff37c797c6afe89c2ce60 Remove inet_aton redefinition
|
||||
diff --git a/openbsd-compat/inet_aton.c b/openbsd-compat/inet_aton.c
|
||||
index 093a1720..8b0a0c5d 100644
|
||||
--- a/openbsd-compat/inet_aton.c
|
||||
+++ b/openbsd-compat/inet_aton.c
|
||||
@@ -53,7 +53,7 @@
|
||||
|
||||
#include "includes.h"
|
||||
|
||||
-#if !defined(HAVE_INET_ATON)
|
||||
+#if !defined(__serenity__)
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/param.h>
|
||||
@@ -84,96 +84,96 @@ inet_addr(const char *cp)
|
||||
* This replaces inet_addr, the return value from which
|
||||
* cannot distinguish between failure and a local broadcast address.
|
||||
*/
|
||||
-int
|
||||
-inet_aton(const char *cp, struct in_addr *addr)
|
||||
-{
|
||||
- u_int32_t val;
|
||||
- int base, n;
|
||||
- char c;
|
||||
- u_int parts[4];
|
||||
- u_int *pp = parts;
|
||||
+// int
|
||||
+// inet_aton(const char *cp, struct in_addr *addr)
|
||||
+// {
|
||||
+// u_int32_t val;
|
||||
+// int base, n;
|
||||
+// char c;
|
||||
+// u_int parts[4];
|
||||
+// u_int *pp = parts;
|
||||
|
||||
- c = *cp;
|
||||
- for (;;) {
|
||||
- /*
|
||||
- * Collect number up to ``.''.
|
||||
- * Values are specified as for C:
|
||||
- * 0x=hex, 0=octal, isdigit=decimal.
|
||||
- */
|
||||
- if (!isdigit(c))
|
||||
- return (0);
|
||||
- val = 0; base = 10;
|
||||
- if (c == '0') {
|
||||
- c = *++cp;
|
||||
- if (c == 'x' || c == 'X')
|
||||
- base = 16, c = *++cp;
|
||||
- else
|
||||
- base = 8;
|
||||
- }
|
||||
- for (;;) {
|
||||
- if (isascii(c) && isdigit(c)) {
|
||||
- val = (val * base) + (c - '0');
|
||||
- c = *++cp;
|
||||
- } else if (base == 16 && isascii(c) && isxdigit(c)) {
|
||||
- val = (val << 4) |
|
||||
- (c + 10 - (islower(c) ? 'a' : 'A'));
|
||||
- c = *++cp;
|
||||
- } else
|
||||
- break;
|
||||
- }
|
||||
- if (c == '.') {
|
||||
- /*
|
||||
- * Internet format:
|
||||
- * a.b.c.d
|
||||
- * a.b.c (with c treated as 16 bits)
|
||||
- * a.b (with b treated as 24 bits)
|
||||
- */
|
||||
- if (pp >= parts + 3)
|
||||
- return (0);
|
||||
- *pp++ = val;
|
||||
- c = *++cp;
|
||||
- } else
|
||||
- break;
|
||||
- }
|
||||
- /*
|
||||
- * Check for trailing characters.
|
||||
- */
|
||||
- if (c != '\0' && (!isascii(c) || !isspace(c)))
|
||||
- return (0);
|
||||
- /*
|
||||
- * Concoct the address according to
|
||||
- * the number of parts specified.
|
||||
- */
|
||||
- n = pp - parts + 1;
|
||||
- switch (n) {
|
||||
+// c = *cp;
|
||||
+// for (;;) {
|
||||
+// /*
|
||||
+// * Collect number up to ``.''.
|
||||
+// * Values are specified as for C:
|
||||
+// * 0x=hex, 0=octal, isdigit=decimal.
|
||||
+// */
|
||||
+// if (!isdigit(c))
|
||||
+// return (0);
|
||||
+// val = 0; base = 10;
|
||||
+// if (c == '0') {
|
||||
+// c = *++cp;
|
||||
+// if (c == 'x' || c == 'X')
|
||||
+// base = 16, c = *++cp;
|
||||
+// else
|
||||
+// base = 8;
|
||||
+// }
|
||||
+// for (;;) {
|
||||
+// if (isascii(c) && isdigit(c)) {
|
||||
+// val = (val * base) + (c - '0');
|
||||
+// c = *++cp;
|
||||
+// } else if (base == 16 && isascii(c) && isxdigit(c)) {
|
||||
+// val = (val << 4) |
|
||||
+// (c + 10 - (islower(c) ? 'a' : 'A'));
|
||||
+// c = *++cp;
|
||||
+// } else
|
||||
+// break;
|
||||
+// }
|
||||
+// if (c == '.') {
|
||||
+// /*
|
||||
+// * Internet format:
|
||||
+// * a.b.c.d
|
||||
+// * a.b.c (with c treated as 16 bits)
|
||||
+// * a.b (with b treated as 24 bits)
|
||||
+// */
|
||||
+// if (pp >= parts + 3)
|
||||
+// return (0);
|
||||
+// *pp++ = val;
|
||||
+// c = *++cp;
|
||||
+// } else
|
||||
+// break;
|
||||
+// }
|
||||
+// /*
|
||||
+// * Check for trailing characters.
|
||||
+// */
|
||||
+// if (c != '\0' && (!isascii(c) || !isspace(c)))
|
||||
+// return (0);
|
||||
+// /*
|
||||
+// * Concoct the address according to
|
||||
+// * the number of parts specified.
|
||||
+// */
|
||||
+// n = pp - parts + 1;
|
||||
+// switch (n) {
|
||||
|
||||
- case 0:
|
||||
- return (0); /* initial nondigit */
|
||||
+// case 0:
|
||||
+// return (0); /* initial nondigit */
|
||||
|
||||
- case 1: /* a -- 32 bits */
|
||||
- break;
|
||||
+// case 1: /* a -- 32 bits */
|
||||
+// break;
|
||||
|
||||
- case 2: /* a.b -- 8.24 bits */
|
||||
- if ((val > 0xffffff) || (parts[0] > 0xff))
|
||||
- return (0);
|
||||
- val |= parts[0] << 24;
|
||||
- break;
|
||||
+// case 2: /* a.b -- 8.24 bits */
|
||||
+// if ((val > 0xffffff) || (parts[0] > 0xff))
|
||||
+// return (0);
|
||||
+// val |= parts[0] << 24;
|
||||
+// break;
|
||||
|
||||
- case 3: /* a.b.c -- 8.8.16 bits */
|
||||
- if ((val > 0xffff) || (parts[0] > 0xff) || (parts[1] > 0xff))
|
||||
- return (0);
|
||||
- val |= (parts[0] << 24) | (parts[1] << 16);
|
||||
- break;
|
||||
+// case 3: /* a.b.c -- 8.8.16 bits */
|
||||
+// if ((val > 0xffff) || (parts[0] > 0xff) || (parts[1] > 0xff))
|
||||
+// return (0);
|
||||
+// val |= (parts[0] << 24) | (parts[1] << 16);
|
||||
+// break;
|
||||
|
||||
- case 4: /* a.b.c.d -- 8.8.8.8 bits */
|
||||
- if ((val > 0xff) || (parts[0] > 0xff) || (parts[1] > 0xff) || (parts[2] > 0xff))
|
||||
- return (0);
|
||||
- val |= (parts[0] << 24) | (parts[1] << 16) | (parts[2] << 8);
|
||||
- break;
|
||||
- }
|
||||
- if (addr)
|
||||
- addr->s_addr = htonl(val);
|
||||
- return (1);
|
||||
-}
|
||||
+// case 4: /* a.b.c.d -- 8.8.8.8 bits */
|
||||
+// if ((val > 0xff) || (parts[0] > 0xff) || (parts[1] > 0xff) || (parts[2] > 0xff))
|
||||
+// return (0);
|
||||
+// val |= (parts[0] << 24) | (parts[1] << 16) | (parts[2] << 8);
|
||||
+// break;
|
||||
+// }
|
||||
+// if (addr)
|
||||
+// addr->s_addr = htonl(val);
|
||||
+// return (1);
|
||||
+// }
|
||||
|
||||
#endif /* !defined(HAVE_INET_ATON) */
|
||||
diff --git a/openbsd-compat/openbsd-compat.h b/openbsd-compat/openbsd-compat.h
|
||||
index e5fd6f5b..cb9e1aa0 100644
|
||||
--- a/openbsd-compat/openbsd-compat.h
|
||||
+++ b/openbsd-compat/openbsd-compat.h
|
||||
@@ -153,7 +153,7 @@ char *inet_ntoa(struct in_addr in);
|
||||
const char *inet_ntop(int af, const void *src, char *dst, socklen_t size);
|
||||
#endif
|
||||
|
||||
-#ifndef HAVE_INET_ATON
|
||||
+#if !defined(HAVE_INET_ATON) && !defined(__serenity__)
|
||||
int inet_aton(const char *cp, struct in_addr *addr);
|
||||
#endif
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue