]> git.openfabrics.org - ~shefty/ibacm.git/commitdiff
refresh
authorSean Hefty <sean.hefty@intel.com>
Tue, 7 Dec 2010 00:41:45 +0000 (16:41 -0800)
committerSean Hefty <sean.hefty@intel.com>
Tue, 7 Dec 2010 00:41:45 +0000 (16:41 -0800)
meta
patches/acme_dest
patches/refresh-temp [deleted file]

diff --git a/meta b/meta
index 2c83f51c78856c7cd5352543daff7075fd3a2d35..6f504eadf7e4ca4a4c09145e41c8f856f89bbcf5 100644 (file)
--- a/meta
+++ b/meta
@@ -1,6 +1,6 @@
 Version: 1
-Previous: 2aea356d92dc415819f3dc1ee5288da7d76e3d1e
-Head: fc86a72e41f810badcff25a5dc1f418193021e69
+Previous: 956016634d5c8432c9bd6a02f551abbdac7e6fc8
+Head: 833a9b2ec1eff481ec64332b58f20ddaa7c25830
 Applied:
   logging: 549692c49922dce3911d97dcc6d0a2fc583ab5f7
   acm_snoop: dd5542fbaa1c5a92367d0552ef3525d5ea0a4638
@@ -14,8 +14,7 @@ Applied:
   no_addr: 775cf275e0feddd7b884ded8cdc341a919e4f9a6
   log_port: 92f81cd1f299db9d83aa21d794cfdfc4c4b5794f
   nodelay: 3dc208def66463660ee185a0346722561e7c2448
-  acme_dest: 5abf3d39146129086c274db504862505766af9b1
-  refresh-temp: fc86a72e41f810badcff25a5dc1f418193021e69
+  acme_dest: 833a9b2ec1eff481ec64332b58f20ddaa7c25830
 Unapplied:
   acme_verbose: 45cba0846874c93ef7af156bf0afe59f43d82ea6
   1.0.4: 9f452b8e59adb21b90fbdda980d25a54d4360d37
index d72f74107ee145d6d44652500820bad2f1006a84..e332dd2dabb8a6f71bcdd19bc1d5faf88d374f7d 100644 (file)
@@ -1,5 +1,5 @@
 Bottom: 6b1a8889e0c9bde043dfd2126fed3c613bff07a0
-Top:    6b1a8889e0c9bde043dfd2126fed3c613bff07a0
+Top:    f60ed9288e7252a96dc54138944bb578264abc39
 Author: Sean Hefty <sean.hefty@intel.com>
 Date:   2010-12-06 16:13:22 -0800
 
@@ -14,4 +14,173 @@ Signed-off-by: Sean Hefty <sean.hefty@intel.com>
 
 ---
 
-
+diff --git a/man/ib_acme.1 b/man/ib_acme.1
+index 52000a3..56c49f0 100644
+--- a/man/ib_acme.1
++++ b/man/ib_acme.1
+@@ -4,7 +4,7 @@ ib_acme \- test and configuration utility for the IB ACM
+ .SH SYNOPSIS\r
+ .sp\r
+ .nf\r
+-\fIib_acme\fR [-f addr_format] -s src_addr -d dest_addr [-v]\r
++\fIib_acme\fR [-f addr_format] [-s src_addr] -d dest_addr [-v]\r
+ .fi\r
+ .nf\r
+ \fIib_acme\fR [-G] [-O]\r
+diff --git a/src/acme.c b/src/acme.c
+index 3ee2073..07294bf 100644
+--- a/src/acme.c
++++ b/src/acme.c
+@@ -68,7 +68,7 @@ static void show_usage(char *program)
+       printf("usage 1: %s\n", program);
+       printf("   [-f addr_format] - i(p), n(ame), or l(id)\n");
+       printf("                      default: 'i'\n");
+-      printf("   -s src_addr      - format defined by -f option\n");
++      printf("   [-s src_addr]    - format defined by -f option\n");
+       printf("   -d dest_addr     - format defined by -f option\n");
+       printf("   [-v]             - verify ACM response against SA query response\n");
+       printf("   [-c]             - read ACM cached data only\n")
+@@ -434,13 +434,19 @@ static int resolve_ip(struct ibv_path_record *path)
+ {
+       struct ibv_path_data *paths;
+       struct sockaddr_in src, dest;
++      struct sockaddr *saddr;
+       int ret, count;
+-      src.sin_family = AF_INET;
+-      ret = inet_pton(AF_INET, src_addr, &src.sin_addr);
+-      if (ret <= 0) {
+-              printf("inet_pton error on source address (%s): 0x%x\n", src_addr, ret);
+-              return ret;
++      if (src_addr) {
++              src.sin_family = AF_INET;
++              ret = inet_pton(AF_INET, src_addr, &src.sin_addr);
++              if (ret <= 0) {
++                      printf("inet_pton error on source address (%s): 0x%x\n", src_addr, ret);
++                      return ret;
++              }
++              saddr = (struct sockaddr *) &src;
++      } else {
++              saddr = NULL;
+       }
+       dest.sin_family = AF_INET;
+@@ -450,7 +456,7 @@ static int resolve_ip(struct ibv_path_record *path)
+               return ret;
+       }
+-      ret = ib_acm_resolve_ip((struct sockaddr *) &src, (struct sockaddr *) &dest,
++      ret = ib_acm_resolve_ip(saddr, (struct sockaddr *) &dest,
+               &paths, &count, get_resolve_flags());
+       if (ret) {
+               printf("ib_acm_resolve_ip failed: 0x%x\n", ret);
+@@ -601,13 +607,13 @@ int CDECL_FUNC main(int argc, char **argv)
+               }
+       }
+-      if ((src_addr && !dest_addr) || (dest_addr && !src_addr) ||
+-              (!src_addr && !dest_addr && !make_addr && !make_opts)) {
++      if ((src_addr && !dest_addr) ||
++          (!src_addr && !dest_addr && !make_addr && !make_opts)) {
+               show_usage(argv[0]);
+               exit(1);
+       }
+-      if (src_addr)
++      if (dst_addr)
+               ret = resolve(argv[0]);
+       if (!ret && make_addr)
+diff --git a/src/libacm.c b/src/libacm.c
+index 59a181b..620e565 100644
+--- a/src/libacm.c
++++ b/src/libacm.c
+@@ -131,7 +131,7 @@ static int acm_format_resp(struct acm_resolve_msg *msg,
+                       (*count)++;
+                       break;
+               default:
+-                      goto err;
++                      break;
+               }
+       }
+@@ -142,45 +142,54 @@ err:
+       return -1;
+ }
++static int acm_format_ep_addr(struct acm_ep_addr_data *data, uint8_t *addr,
++      uint8_t type, uint32_t flags)
++{
++      data->type   = type;
++      data->flags  = flags;
++
++      switch (type) {
++      case ACM_EP_INFO_NAME:
++              strncpy((char *) data->info.name,  (char *) addr,  ACM_MAX_ADDRESS);
++              break;
++      case ACM_EP_INFO_ADDRESS_IP:
++              memcpy(data->info.addr, &((struct sockaddr_in *) addr)->sin_addr, 4);
++              break;
++      case ACM_EP_INFO_ADDRESS_IP6:
++              memcpy(data->info.addr, &((struct sockaddr_in6 *) addr)->sin6_addr, 16);
++              break;
++      default:
++              return -1;
++      }
++
++      return 0;
++}
+ static int acm_resolve(uint8_t *src, uint8_t *dest, uint8_t type,
+       struct ibv_path_data **paths, int *count, uint32_t flags)
+ {
+       struct acm_msg msg;
+       struct acm_resolve_msg *resolve_msg = (struct acm_resolve_msg *) &msg;
+       struct acm_ep_addr_data *src_data, *dest_data;
+-      int ret;
++      int ret, cnt = 0;
+       lock_acquire(&lock);
+       memset(&msg, 0, sizeof msg);
+       msg.hdr.version = ACM_VERSION;
+       msg.hdr.opcode = ACM_OP_RESOLVE;
+-      msg.hdr.length = ACM_MSG_HDR_LENGTH + (2 * ACM_MSG_EP_LENGTH);
+-      src_data  = &resolve_msg->data[0];
+-      dest_data = &resolve_msg->data[1];
+-
+-      src_data->type   = type;
+-      src_data->flags  = ACM_EP_FLAG_SOURCE;
+-      dest_data->type  = type;
+-      dest_data->flags = ACM_EP_FLAG_DEST | flags;
++      if (src) {
++              ret = acm_format_ep_addr(&resolve_msg->data[cnt++], src, type,
++                      ACM_EP_FLAG_SOURCE);
++              if (ret)
++                      goto out;
++      }
+-      switch (type) {
+-      case ACM_EP_INFO_NAME:
+-              strncpy((char *) src_data->info.name,  (char *) src,  ACM_MAX_ADDRESS);
+-              strncpy((char *) dest_data->info.name, (char *) dest, ACM_MAX_ADDRESS);
+-              break;
+-      case ACM_EP_INFO_ADDRESS_IP:
+-              memcpy(src_data->info.addr,  &((struct sockaddr_in *) src)->sin_addr,  4);
+-              memcpy(dest_data->info.addr, &((struct sockaddr_in *) dest)->sin_addr, 4);
+-              break;
+-      case ACM_EP_INFO_ADDRESS_IP6:
+-              memcpy(src_data->info.addr,  &((struct sockaddr_in6 *) src)->sin6_addr,  16);
+-              memcpy(dest_data->info.addr, &((struct sockaddr_in6 *) dest)->sin6_addr, 16);
+-              break;
+-      default:
+-              ret = -1;
++      ret = acm_format_ep_addr(&resolve_msg->data[cnt++], dest, type,
++              ACM_EP_FLAG_DEST | flags);
++      if (ret)
+               goto out;
+-      }
++
++      msg.hdr.length = ACM_MSG_HDR_LENGTH + (cnt * ACM_MSG_EP_LENGTH);
+       
+       ret = send(sock, (char *) &msg, msg.hdr.length, 0);
+       if (ret != msg.hdr.length)
diff --git a/patches/refresh-temp b/patches/refresh-temp
deleted file mode 100644 (file)
index a040f1a..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-Bottom: 6b1a8889e0c9bde043dfd2126fed3c613bff07a0
-Top:    f60ed9288e7252a96dc54138944bb578264abc39
-Author: Sean Hefty <sean.hefty@intel.com>
-Date:   2010-12-06 16:41:45 -0800
-
-Refresh of acme_dest
-
----
-
-diff --git a/man/ib_acme.1 b/man/ib_acme.1
-index 52000a3..56c49f0 100644
---- a/man/ib_acme.1
-+++ b/man/ib_acme.1
-@@ -4,7 +4,7 @@ ib_acme \- test and configuration utility for the IB ACM
- .SH SYNOPSIS\r
- .sp\r
- .nf\r
--\fIib_acme\fR [-f addr_format] -s src_addr -d dest_addr [-v]\r
-+\fIib_acme\fR [-f addr_format] [-s src_addr] -d dest_addr [-v]\r
- .fi\r
- .nf\r
- \fIib_acme\fR [-G] [-O]\r
-diff --git a/src/acme.c b/src/acme.c
-index 3ee2073..07294bf 100644
---- a/src/acme.c
-+++ b/src/acme.c
-@@ -68,7 +68,7 @@ static void show_usage(char *program)
-       printf("usage 1: %s\n", program);
-       printf("   [-f addr_format] - i(p), n(ame), or l(id)\n");
-       printf("                      default: 'i'\n");
--      printf("   -s src_addr      - format defined by -f option\n");
-+      printf("   [-s src_addr]    - format defined by -f option\n");
-       printf("   -d dest_addr     - format defined by -f option\n");
-       printf("   [-v]             - verify ACM response against SA query response\n");
-       printf("   [-c]             - read ACM cached data only\n")
-@@ -434,13 +434,19 @@ static int resolve_ip(struct ibv_path_record *path)
- {
-       struct ibv_path_data *paths;
-       struct sockaddr_in src, dest;
-+      struct sockaddr *saddr;
-       int ret, count;
--      src.sin_family = AF_INET;
--      ret = inet_pton(AF_INET, src_addr, &src.sin_addr);
--      if (ret <= 0) {
--              printf("inet_pton error on source address (%s): 0x%x\n", src_addr, ret);
--              return ret;
-+      if (src_addr) {
-+              src.sin_family = AF_INET;
-+              ret = inet_pton(AF_INET, src_addr, &src.sin_addr);
-+              if (ret <= 0) {
-+                      printf("inet_pton error on source address (%s): 0x%x\n", src_addr, ret);
-+                      return ret;
-+              }
-+              saddr = (struct sockaddr *) &src;
-+      } else {
-+              saddr = NULL;
-       }
-       dest.sin_family = AF_INET;
-@@ -450,7 +456,7 @@ static int resolve_ip(struct ibv_path_record *path)
-               return ret;
-       }
--      ret = ib_acm_resolve_ip((struct sockaddr *) &src, (struct sockaddr *) &dest,
-+      ret = ib_acm_resolve_ip(saddr, (struct sockaddr *) &dest,
-               &paths, &count, get_resolve_flags());
-       if (ret) {
-               printf("ib_acm_resolve_ip failed: 0x%x\n", ret);
-@@ -601,13 +607,13 @@ int CDECL_FUNC main(int argc, char **argv)
-               }
-       }
--      if ((src_addr && !dest_addr) || (dest_addr && !src_addr) ||
--              (!src_addr && !dest_addr && !make_addr && !make_opts)) {
-+      if ((src_addr && !dest_addr) ||
-+          (!src_addr && !dest_addr && !make_addr && !make_opts)) {
-               show_usage(argv[0]);
-               exit(1);
-       }
--      if (src_addr)
-+      if (dst_addr)
-               ret = resolve(argv[0]);
-       if (!ret && make_addr)
-diff --git a/src/libacm.c b/src/libacm.c
-index 59a181b..620e565 100644
---- a/src/libacm.c
-+++ b/src/libacm.c
-@@ -131,7 +131,7 @@ static int acm_format_resp(struct acm_resolve_msg *msg,
-                       (*count)++;
-                       break;
-               default:
--                      goto err;
-+                      break;
-               }
-       }
-@@ -142,45 +142,54 @@ err:
-       return -1;
- }
-+static int acm_format_ep_addr(struct acm_ep_addr_data *data, uint8_t *addr,
-+      uint8_t type, uint32_t flags)
-+{
-+      data->type   = type;
-+      data->flags  = flags;
-+
-+      switch (type) {
-+      case ACM_EP_INFO_NAME:
-+              strncpy((char *) data->info.name,  (char *) addr,  ACM_MAX_ADDRESS);
-+              break;
-+      case ACM_EP_INFO_ADDRESS_IP:
-+              memcpy(data->info.addr, &((struct sockaddr_in *) addr)->sin_addr, 4);
-+              break;
-+      case ACM_EP_INFO_ADDRESS_IP6:
-+              memcpy(data->info.addr, &((struct sockaddr_in6 *) addr)->sin6_addr, 16);
-+              break;
-+      default:
-+              return -1;
-+      }
-+
-+      return 0;
-+}
- static int acm_resolve(uint8_t *src, uint8_t *dest, uint8_t type,
-       struct ibv_path_data **paths, int *count, uint32_t flags)
- {
-       struct acm_msg msg;
-       struct acm_resolve_msg *resolve_msg = (struct acm_resolve_msg *) &msg;
-       struct acm_ep_addr_data *src_data, *dest_data;
--      int ret;
-+      int ret, cnt = 0;
-       lock_acquire(&lock);
-       memset(&msg, 0, sizeof msg);
-       msg.hdr.version = ACM_VERSION;
-       msg.hdr.opcode = ACM_OP_RESOLVE;
--      msg.hdr.length = ACM_MSG_HDR_LENGTH + (2 * ACM_MSG_EP_LENGTH);
--      src_data  = &resolve_msg->data[0];
--      dest_data = &resolve_msg->data[1];
--
--      src_data->type   = type;
--      src_data->flags  = ACM_EP_FLAG_SOURCE;
--      dest_data->type  = type;
--      dest_data->flags = ACM_EP_FLAG_DEST | flags;
-+      if (src) {
-+              ret = acm_format_ep_addr(&resolve_msg->data[cnt++], src, type,
-+                      ACM_EP_FLAG_SOURCE);
-+              if (ret)
-+                      goto out;
-+      }
--      switch (type) {
--      case ACM_EP_INFO_NAME:
--              strncpy((char *) src_data->info.name,  (char *) src,  ACM_MAX_ADDRESS);
--              strncpy((char *) dest_data->info.name, (char *) dest, ACM_MAX_ADDRESS);
--              break;
--      case ACM_EP_INFO_ADDRESS_IP:
--              memcpy(src_data->info.addr,  &((struct sockaddr_in *) src)->sin_addr,  4);
--              memcpy(dest_data->info.addr, &((struct sockaddr_in *) dest)->sin_addr, 4);
--              break;
--      case ACM_EP_INFO_ADDRESS_IP6:
--              memcpy(src_data->info.addr,  &((struct sockaddr_in6 *) src)->sin6_addr,  16);
--              memcpy(dest_data->info.addr, &((struct sockaddr_in6 *) dest)->sin6_addr, 16);
--              break;
--      default:
--              ret = -1;
-+      ret = acm_format_ep_addr(&resolve_msg->data[cnt++], dest, type,
-+              ACM_EP_FLAG_DEST | flags);
-+      if (ret)
-               goto out;
--      }
-+
-+      msg.hdr.length = ACM_MSG_HDR_LENGTH + (cnt * ACM_MSG_EP_LENGTH);
-       
-       ret = send(sock, (char *) &msg, msg.hdr.length, 0);
-       if (ret != msg.hdr.length)