[hipl-commit] [trunk] Rev 3525: A potential workaround to fix the UPDATE problem reported by Philippe Foubert on hipl-users.

  • From: Miika Komu <miika@xxxxxx>
  • To: hipl-commit@xxxxxxxxxxxxx
  • Date: Wed, 03 Feb 2010 17:40:19 +0200

Committer: Miika Komu <miika@xxxxxx>
Date: Wed Feb 03 17:40:28 2010 +0200
Revision: 3525
Revision-id: miika@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Branch nick: trunk

Log:
  A potential workaround to fix the UPDATE problem reported by Philippe Foubert 
on hipl-users.

Modified:
  M  hipd/update.c

=== modified file 'hipd/update.c'
--- hipd/update.c       2010-01-19 13:06:23 +0000
+++ hipd/update.c       2010-02-03 15:40:28 +0000
@@ -377,10 +377,6 @@
         hip_list_t *item, *tmp;
         hip_common_t *locator_msg = NULL;
 
-       // Update DNS data in hit-to-ip domain name
-        if (hip_get_nsupdate_status())
-                nsupdate(0);
-
         HIP_IFEL(!(locator_msg = hip_msg_alloc()), -ENOMEM,
             "Out of memory while allocation memory for the packet\n");
         HIP_IFE(hip_create_locators(locator_msg, &locators), -1);
@@ -401,6 +397,13 @@
         }
 
 out_err:
+
+       /* Update DNS data in hit-to-ip domain name. This is done after
+          sending UPDATE packets. See the discussion for the reasoning:
+          
http://www.freelists.org/post/hipl-users/HIP-UPDATE-select-error-Interrupted-system-call,2
 */
+        if (hip_get_nsupdate_status())
+                nsupdate(0);
+
         if (hip_locator_status == SO_HIP_SET_LOCATOR_ON)
             hip_recreate_all_precreated_r1_packets();
         if (locator_msg)

Other related posts:

  • » [hipl-commit] [trunk] Rev 3525: A potential workaround to fix the UPDATE problem reported by Philippe Foubert on hipl-users. - Miika Komu