wok-6.x annotate busybox/stuff/busybox-1.30-diet.u @ rev 20652

Up busybox (1.30.0)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sun Jan 13 10:40:16 2019 +0100 (2019-01-13)
parents
children ffd273a61556
rev   line source
pascal@20652 1 --- busybox-1.30/include/platform.h
pascal@20652 2 +++ busybox-1.30/include/platform.h
pascal@20652 3 @@ -533,6 +533,21 @@
pascal@20652 4 # undef HAVE_PRINTF_PERCENTM
pascal@20652 5 #endif
pascal@20652 6
pascal@20652 7 +#if defined(__dietlibc__)
pascal@20652 8 +# define __aligned_u64 __u64 __attribute__((aligned(8)))
pascal@20652 9 +# define LOOP_SET_STATUS64 0x4C04
pascal@20652 10 +# define LOOP_GET_STATUS64 0x4C05
pascal@20652 11 +# define MAXSYMLINKS 20
pascal@20652 12 +# define S_TYPEISMQ(x) 0
pascal@20652 13 +# define S_TYPEISSEM(x) 0
pascal@20652 14 +# define S_TYPEISSHM(x) 0
pascal@20652 15 +# define O_CLOEXEC 0
pascal@20652 16 +# undef HAVE_STRVERSCMP
pascal@20652 17 +# undef HAVE_DPRINTF
pascal@20652 18 +# undef HAVE_STRCASESTR
pascal@20652 19 +# define ttyname_r(a,b,c) (strlcpy(b, ttyname(a), c) == 0)
pascal@20652 20 +#endif
pascal@20652 21 +
pascal@20652 22 /*
pascal@20652 23 * Now, define prototypes for all the functions defined in platform.c
pascal@20652 24 * These must come after all the HAVE_* macros are defined (or not)
pascal@20652 25 --- busybox-1.30/networking/ping.c
pascal@20652 26 +++ busybox-1.30/networking/ping.c
pascal@20652 27 @@ -123,6 +124,84 @@
pascal@20652 28 #include "libbb.h"
pascal@20652 29 #include "common_bufsiz.h"
pascal@20652 30
pascal@20652 31 +#ifdef __dietlibc__
pascal@20652 32 +/* Dietlibc is missing the BSD definition 'struct icmp' */
pascal@20652 33 +/*
pascal@20652 34 + * Internal of an ICMP Router Advertisement
pascal@20652 35 + */
pascal@20652 36 +struct icmp_ra_addr
pascal@20652 37 +{
pascal@20652 38 + uint32_t ira_addr;
pascal@20652 39 + uint32_t ira_preference;
pascal@20652 40 +};
pascal@20652 41 +
pascal@20652 42 +struct icmp
pascal@20652 43 +{
pascal@20652 44 + uint8_t icmp_type; /* type of message, see below */
pascal@20652 45 + uint8_t icmp_code; /* type sub code */
pascal@20652 46 + uint16_t icmp_cksum; /* ones complement checksum of struct */
pascal@20652 47 + union
pascal@20652 48 + {
pascal@20652 49 + uint8_t ih_pptr; /* ICMP_PARAMPROB */
pascal@20652 50 + struct in_addr ih_gwaddr; /* gateway address */
pascal@20652 51 + struct ih_idseq /* echo datagram */
pascal@20652 52 + {
pascal@20652 53 + uint16_t icd_id;
pascal@20652 54 + uint16_t icd_seq;
pascal@20652 55 + } ih_idseq;
pascal@20652 56 + uint32_t ih_void;
pascal@20652 57 +
pascal@20652 58 + /* ICMP_UNREACH_NEEDFRAG -- Path MTU Discovery (RFC1191) */
pascal@20652 59 + struct ih_pmtu
pascal@20652 60 + {
pascal@20652 61 + uint16_t ipm_void;
pascal@20652 62 + uint16_t ipm_nextmtu;
pascal@20652 63 + } ih_pmtu;
pascal@20652 64 +
pascal@20652 65 + struct ih_rtradv
pascal@20652 66 + {
pascal@20652 67 + uint8_t irt_num_addrs;
pascal@20652 68 + uint8_t irt_wpa;
pascal@20652 69 + uint16_t irt_lifetime;
pascal@20652 70 + } ih_rtradv;
pascal@20652 71 + } icmp_hun;
pascal@20652 72 +#define icmp_pptr icmp_hun.ih_pptr
pascal@20652 73 +#define icmp_gwaddr icmp_hun.ih_gwaddr
pascal@20652 74 +#define icmp_id icmp_hun.ih_idseq.icd_id
pascal@20652 75 +#define icmp_seq icmp_hun.ih_idseq.icd_seq
pascal@20652 76 +#define icmp_void icmp_hun.ih_void
pascal@20652 77 +#define icmp_pmvoid icmp_hun.ih_pmtu.ipm_void
pascal@20652 78 +#define icmp_nextmtu icmp_hun.ih_pmtu.ipm_nextmtu
pascal@20652 79 +#define icmp_num_addrs icmp_hun.ih_rtradv.irt_num_addrs
pascal@20652 80 +#define icmp_wpa icmp_hun.ih_rtradv.irt_wpa
pascal@20652 81 +#define icmp_lifetime icmp_hun.ih_rtradv.irt_lifetime
pascal@20652 82 + union
pascal@20652 83 + {
pascal@20652 84 + struct
pascal@20652 85 + {
pascal@20652 86 + uint32_t its_otime;
pascal@20652 87 + uint32_t its_rtime;
pascal@20652 88 + uint32_t its_ttime;
pascal@20652 89 + } id_ts;
pascal@20652 90 + struct
pascal@20652 91 + {
pascal@20652 92 + struct ip idi_ip;
pascal@20652 93 + /* options and then 64 bits of data */
pascal@20652 94 + } id_ip;
pascal@20652 95 + struct icmp_ra_addr id_radv;
pascal@20652 96 + uint32_t id_mask;
pascal@20652 97 + uint8_t id_data[1];
pascal@20652 98 + } icmp_dun;
pascal@20652 99 +#define icmp_otime icmp_dun.id_ts.its_otime
pascal@20652 100 +#define icmp_rtime icmp_dun.id_ts.its_rtime
pascal@20652 101 +#define icmp_ttime icmp_dun.id_ts.its_ttime
pascal@20652 102 +#define icmp_ip icmp_dun.id_ip.idi_ip
pascal@20652 103 +#define icmp_radv icmp_dun.id_radv
pascal@20652 104 +#define icmp_mask icmp_dun.id_mask
pascal@20652 105 +#define icmp_data icmp_dun.id_data
pascal@20652 106 +};
pascal@20652 107 +#endif /* __dietlibc__ */
pascal@20652 108 +
pascal@20652 109 #ifdef __BIONIC__
pascal@20652 110 /* should be in netinet/ip_icmp.h */
pascal@20652 111 # define ICMP_DEST_UNREACH 3 /* Destination Unreachable */