summaryrefslogtreecommitdiff
path: root/meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch
diff options
context:
space:
mode:
authorChong Lu <Chong.Lu@windriver.com>2013-12-10 16:58:01 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-12-10 11:29:54 +0000
commite5d81f757de4bd1bfd37a96300edd50b77b0d21c (patch)
treedc38d964ea9976412de63a559d5ca2bbac55771d /meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch
parenta01febdeacd08c7ab7983ad7555368a17b937907 (diff)
downloadopenembedded-core-e5d81f757de4bd1bfd37a96300edd50b77b0d21c.tar.gz
openembedded-core-e5d81f757de4bd1bfd37a96300edd50b77b0d21c.tar.bz2
openembedded-core-e5d81f757de4bd1bfd37a96300edd50b77b0d21c.zip
meta/*: remove unnecessary patches
The following patches are found, but not used by any recipe, so we should remove them. meta/recipes-connectivity/avahi/files/fix_for_automake_1.11.2.patch meta/recipes-connectivity/dhcp/dhcp/fix-client-path.patch meta/recipes-connectivity/libnss-mdns/files/alignment-fix.patch meta/recipes-core/dbus/dbus-1.6.10/test-run-path.patch meta/recipes-core/gettext/gettext-0.16.1/fixchicken.patch meta/recipes-core/gettext/gettext-0.16.1/getline.m4.patch meta/recipes-core/systemd/systemd/use-rootlibdir.patch meta/recipes-core/util-linux/util-linux/remove-lscpu.patch meta/recipes-core/util-linux/util-linux/remove_sigsetmark.patch meta/recipes-core/util-linux/util-linux/uclibc-compile.patch meta/recipes-devtools/autoconf/autoconf/autoconf-x.patch meta/recipes-devtools/btrfs-tools/btrfs-tools/btrfs-progs-fix-parallel-build.patch meta/recipes-devtools/btrfs-tools/btrfs-tools/btrfs-progs-fix-parallel-build2.patch meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch meta/recipes-devtools/elfutils/elfutils-0.155/elfutils-robustify.patch meta/recipes-devtools/gdb/gdb/libiberty-cross.patch meta/recipes-devtools/perl/perl-5.14.3/asm-pageh-fix.patch meta/recipes-devtools/python/python-native/sys_platform_is_now_always_linux2.patch meta/recipes-devtools/python/python-pygobject/generate-constants.patch meta/recipes-devtools/qemu/files/3f08ffb4a4741d147634761dc053ed386243a0de.patch meta/recipes-devtools/qemu/files/enable-i386-linux-user.patch meta/recipes-devtools/qemu/files/init-info.patch meta/recipes-devtools/rpm/rpm/rpm_fix_for_automake-1.12.patch meta/recipes-devtools/tcf-agent/tcf-agent/fix_tcf-agent.init.patch meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch meta/recipes-extended/libarchive/libarchive/0003-Patch-from-upstream-rev-2516.patch meta/recipes-extended/procps/procps-3.2.8/pagesz-not-constant.patch meta/recipes-gnome/gtk+/gtk+-2.24.22/no-demos.patch meta/recipes-gnome/libglade/libglade-2.6.4/no-deprecation.patch meta/recipes-graphics/mesa/mesa/0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch meta/recipes-graphics/xorg-lib/libxxf86dga/libxxf86dga-1.1.3_fix_for_x32.patch meta/recipes-kernel/kmod/kmod/fix-undefined-O_CLOEXEC.patch meta/recipes-kernel/linux-libc-headers/linux-libc-headers/connector-msg-size-fix.patch meta/recipes-kernel/linux/linux-yocto/tools-perf-no-scripting.patch meta/recipes-support/gnutls/gnutls/gnutls-texinfo-euro.patch meta/recipes-support/nspr/nspr/fix-build-on-aarch64.patch [YOCTO #5180] Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch')
-rw-r--r--meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch296
1 files changed, 0 insertions, 296 deletions
diff --git a/meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch b/meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch
deleted file mode 100644
index 37325ee0ae..0000000000
--- a/meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch
+++ /dev/null
@@ -1,296 +0,0 @@
-arping: Break libsysfs dependency
-
-Port Fedora 17's iputils-20071127-infiniband.patch, which inlines sysfs
-access previously done by libsysfs (which is in /usr, and thus not
-usable by /bin/arping).
-
-Upstream-Status: Inappropriate [not author]
-Signed-off-by: Andy Ross <andy.ross@windriver.com>
----
- Makefile | 2 +-
- arping.c | 152 ++++++++++++++++++++++++++++++++++++++++++++------------------
- 2 files changed, 109 insertions(+), 45 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index d9a5ca5..943f048 100644
---- a/Makefile
-+++ b/Makefile
-@@ -27,7 +27,7 @@ all: $(TARGETS)
-
-
- tftpd: tftpd.o tftpsubs.o
--arping: arping.o -lsysfs
-+arping: arping.o
- ping: ping.o ping_common.o
- ping6: ping6.o ping_common.o -lresolv -lcrypto
- ping.o ping6.o ping_common.o: ping_common.h
-diff --git a/arping.c b/arping.c
-index 13484de..6379354 100644
---- a/arping.c
-+++ b/arping.c
-@@ -32,8 +32,6 @@
- #include <netinet/in.h>
- #include <arpa/inet.h>
-
--#include <sysfs/libsysfs.h>
--
- #include "SNAPSHOT.h"
-
- static void usage(void) __attribute__((noreturn));
-@@ -52,14 +50,22 @@ int unicasting;
- int s;
- int broadcast_only;
-
--struct sockaddr_storage me;
--struct sockaddr_storage he;
-+struct sockaddr_ll *me=NULL;
-+struct sockaddr_ll *he=NULL;
-
- struct timeval start, last;
-
- int sent, brd_sent;
- int received, brd_recv, req_recv;
-
-+#define SYSFS_MNT_PATH "/sys"
-+#define SYSFS_CLASS "class"
-+#define SYSFS_NET "net"
-+#define SYSFS_BROADCAST "broadcast"
-+#define SYSFS_PATH_ENV "SYSFS_PATH"
-+#define SYSFS_PATH_LEN 256
-+#define SOCKADDR_LEN (2 * sizeof(struct sockaddr_ll))
-+
- #define MS_TDIFF(tv1,tv2) ( ((tv1).tv_sec-(tv2).tv_sec)*1000 + \
- ((tv1).tv_usec-(tv2).tv_usec)/1000 )
-
-@@ -166,6 +172,10 @@ void finish(void)
- printf("\n");
- fflush(stdout);
- }
-+
-+ free(me);
-+ free(he);
-+
- if (dad)
- exit(!!received);
- if (unsolicited)
-@@ -189,8 +199,7 @@ void catcher(void)
- finish();
-
- if ( count!=0 && (last.tv_sec==0 || MS_TDIFF(tv,last) > 500 ) ) {
-- send_pack(s, src, dst,
-- (struct sockaddr_ll *)&me, (struct sockaddr_ll *)&he);
-+ send_pack(s, src, dst, me, he);
- if (count >= 0)
- count--;
- if (count == 0 && unsolicited)
-@@ -239,7 +248,7 @@ int recv_pack(unsigned char *buf, int len, struct sockaddr_ll *FROM)
- return 0;
- if (ah->ar_pln != 4)
- return 0;
-- if (ah->ar_hln != ((struct sockaddr_ll *)&me)->sll_halen)
-+ if (ah->ar_hln != me->sll_halen)
- return 0;
- if (len < sizeof(*ah) + 2*(4 + ah->ar_hln))
- return 0;
-@@ -250,7 +259,7 @@ int recv_pack(unsigned char *buf, int len, struct sockaddr_ll *FROM)
- return 0;
- if (src.s_addr != dst_ip.s_addr)
- return 0;
-- if (memcmp(p+ah->ar_hln+4, ((struct sockaddr_ll *)&me)->sll_addr, ah->ar_hln))
-+ if (memcmp(p+ah->ar_hln+4, me->sll_addr, ah->ar_hln))
- return 0;
- } else {
- /* DAD packet was:
-@@ -268,7 +277,7 @@ int recv_pack(unsigned char *buf, int len, struct sockaddr_ll *FROM)
- */
- if (src_ip.s_addr != dst.s_addr)
- return 0;
-- if (memcmp(p, ((struct sockaddr_ll *)&me)->sll_addr, ((struct sockaddr_ll *)&me)->sll_halen) == 0)
-+ if (memcmp(p, me->sll_addr, me->sll_halen) == 0)
- return 0;
- if (src.s_addr && src.s_addr != dst_ip.s_addr)
- return 0;
-@@ -284,7 +293,7 @@ int recv_pack(unsigned char *buf, int len, struct sockaddr_ll *FROM)
- printf("for %s ", inet_ntoa(dst_ip));
- s_printed = 1;
- }
-- if (memcmp(p+ah->ar_hln+4, ((struct sockaddr_ll *)&me)->sll_addr, ah->ar_hln)) {
-+ if (memcmp(p+ah->ar_hln+4, me->sll_addr, ah->ar_hln)) {
- if (!s_printed)
- printf("for ");
- printf("[");
-@@ -310,40 +319,67 @@ int recv_pack(unsigned char *buf, int len, struct sockaddr_ll *FROM)
- if (quit_on_reply)
- finish();
- if(!broadcast_only) {
-- memcpy(((struct sockaddr_ll *)&he)->sll_addr, p, ((struct sockaddr_ll *)&me)->sll_halen);
-+ memcpy(he->sll_addr, p, me->sll_halen);
- unicasting=1;
- }
- return 1;
- }
-
--void set_device_broadcast(char *device, unsigned char *ba, size_t balen)
-+int get_sysfs_mnt_path(char *mnt_path, size_t len)
- {
-- struct sysfs_class_device *dev;
-- struct sysfs_attribute *brdcast;
-- unsigned char *p;
-- int ch;
-+ const char *sysfs_path_env;
-+ int pth_len=0;
-
-- dev = sysfs_open_class_device("net", device);
-- if (!dev) {
-- perror("sysfs_open_class_device(net)");
-- exit(2);
-- }
-+ if (len == 0 || mnt_path == NULL)
-+ return -1;
-
-- brdcast = sysfs_get_classdev_attr(dev, "broadcast");
-- if (!brdcast) {
-- perror("sysfs_get_classdev_attr(broadcast)");
-- exit(2);
-- }
-+ /* possible overrride of real mount path */
-+ sysfs_path_env = getenv(SYSFS_PATH_ENV);
-+ memset(mnt_path, 0, len);
-+ strncpy(mnt_path,
-+ sysfs_path_env != NULL ? sysfs_path_env : SYSFS_MNT_PATH,
-+ len-1);
-
-- if (sysfs_read_attribute(brdcast)) {
-- perror("sysfs_read_attribute");
-- exit(2);
-- }
-+ if ((pth_len = strlen(mnt_path)) > 0 && mnt_path[pth_len-1] == '/')
-+ mnt_path[pth_len-1] = '\0';
-+
-+ return 0;
-+}
-+
-+int make_sysfs_broadcast_path(char *broadcast_path, size_t len)
-+{
-+ char mnt_path[SYSFS_PATH_LEN];
-+
-+ if (get_sysfs_mnt_path(mnt_path, len) != 0)
-+ return -1;
-
-- for (p = ba, ch = 0; p < ba + balen; p++, ch += 3)
-- *p = strtoul(brdcast->value + ch, NULL, 16);
-+ snprintf(broadcast_path, len,
-+ "%s/" SYSFS_CLASS "/" SYSFS_NET "/%s/" SYSFS_BROADCAST,
-+ mnt_path, device);
-
-- return;
-+ return 0;
-+}
-+
-+char * read_sysfs_broadcast(char *brdcast_path)
-+{
-+ int fd;
-+ int len_to_read;
-+ char *brdcast = NULL;
-+
-+ if ((fd = open(brdcast_path, O_RDONLY)) > -1) {
-+ len_to_read = lseek(fd, 0L, SEEK_END);
-+ if ((brdcast = malloc(len_to_read+1)) != NULL) {
-+ lseek(fd, 0L, SEEK_SET);
-+ memset(brdcast, 0, len_to_read+1);
-+ if (read(fd, brdcast, len_to_read) == -1) {
-+ free(brdcast);
-+ brdcast = NULL;
-+ }
-+ }
-+ close(fd);
-+ }
-+
-+ return brdcast;
- }
-
- int
-@@ -361,6 +397,17 @@ main(int argc, char **argv)
- exit(-1);
- }
-
-+ me = malloc(SOCKADDR_LEN);
-+ if (!me) {
-+ fprintf(stderr, "arping: could not allocate memory\n");
-+ exit(1);
-+ }
-+ he = malloc(SOCKADDR_LEN);
-+ if (!he) {
-+ fprintf(stderr, "arping: could not allocate memory\n");
-+ exit(1);
-+ }
-+
- while ((ch = getopt(argc, argv, "h?bfDUAqc:w:s:I:V")) != EOF) {
- switch(ch) {
- case 'b':
-@@ -509,34 +556,51 @@ main(int argc, char **argv)
- close(probe_fd);
- };
-
-- ((struct sockaddr_ll *)&me)->sll_family = AF_PACKET;
-- ((struct sockaddr_ll *)&me)->sll_ifindex = ifindex;
-- ((struct sockaddr_ll *)&me)->sll_protocol = htons(ETH_P_ARP);
-- if (bind(s, (struct sockaddr*)&me, sizeof(me)) == -1) {
-+ me->sll_family = AF_PACKET;
-+ me->sll_ifindex = ifindex;
-+ me->sll_protocol = htons(ETH_P_ARP);
-+ if (bind(s, (struct sockaddr*)me, SOCKADDR_LEN) == -1) {
- perror("bind");
- exit(2);
- }
-
- if (1) {
-- socklen_t alen = sizeof(me);
-- if (getsockname(s, (struct sockaddr*)&me, &alen) == -1) {
-+ socklen_t alen = SOCKADDR_LEN;
-+ if (getsockname(s, (struct sockaddr*)me, &alen) == -1) {
- perror("getsockname");
- exit(2);
- }
- }
-- if (((struct sockaddr_ll *)&me)->sll_halen == 0) {
-+ if (me->sll_halen == 0) {
- if (!quiet)
- printf("Interface \"%s\" is not ARPable (no ll address)\n", device);
- exit(dad?0:2);
- }
-
-- he = me;
-+ memcpy(he, me, SOCKADDR_LEN);
-
- #if 1
-- set_device_broadcast(device, ((struct sockaddr_ll *)&he)->sll_addr,
-- ((struct sockaddr_ll *)&he)->sll_halen);
-+ char brdcast_path[SYSFS_PATH_LEN];
-+ char *brdcast_val=NULL;
-+ char *next_ch;
-+
-+ if (make_sysfs_broadcast_path(brdcast_path, sizeof brdcast_path) != 0) {
-+ perror("sysfs attribute broadcast");
-+ exit(2);
-+ }
-+
-+ if ((brdcast_val = read_sysfs_broadcast(brdcast_path)) == NULL) {
-+ perror("sysfs read broadcast value");
-+ exit(2);
-+ }
-+
-+ for (ch=0; ch<he->sll_halen; ch++) {
-+ he->sll_addr[ch] = strtol(brdcast_val + (ch*3), &next_ch, 16);
-+ }
-+
-+ free(brdcast_val);
- #else
-- memset(((struct sockaddr_ll *)&he)->sll_addr, -1, ((struct sockaddr_ll *)&he)->sll_halen);
-+ memset(he->sll_addr, -1, he->sll_halen);
- #endif
-
- if (!quiet) {
---
-1.7.10.4
-