Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3180)

Unified Diff: ports/tor/nacl.patch

Issue 1311703003: Added Tor Base URL: https://chromium.googlesource.com/external/naclports.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ports/tor/manifest.json ('k') | ports/tor/pkg_info » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ports/tor/nacl.patch
diff --git a/ports/tor/nacl.patch b/ports/tor/nacl.patch
new file mode 100644
index 0000000000000000000000000000000000000000..ddfd4e5202f0330aa74b4136a060996581005118
--- /dev/null
+++ b/ports/tor/nacl.patch
@@ -0,0 +1,103 @@
+diff --git a/src/common/compat.c b/src/common/compat.c
+--- a/src/common/compat.c
++++ b/src/common/compat.c
+@@ -1542,6 +1542,11 @@ set_max_file_descriptors(rlim_t limit, int *max_out)
+ * http://archives.seul.org/or/talk/Aug-2006/msg00210.html
+ * For an iPhone, 9999 should work. For Windows and all other unknown
+ * systems we use 15000 as the default. */
++
++#ifdef __native_client__
++#undef HAVE_GETRLIMIT
++#endif
++
+ #ifndef HAVE_GETRLIMIT
+ #if defined(CYGWIN) || defined(__CYGWIN__)
+ const char *platform = "Cygwin";
+@@ -3225,4 +3230,3 @@ tor_sleep_msec(int msec)
+ #endif
+ }
+ #endif
+-
+diff --git a/src/common/util.c b/src/common/util.c
+--- a/src/common/util.c
++++ b/src/common/util.c
+@@ -2191,9 +2191,12 @@ check_private_dir(const char *dirname, cpd_check_t check,
+ "%s (%d). Perhaps you are running Tor as the wrong user?",
+ dirname, process_ownername, (int)running_uid,
+ pw ? pw->pw_name : "<unknown>", (int)st.st_uid);
+-
+ tor_free(process_ownername);
++#ifdef __native_client__
++ printf("\n>> nacl sometimes doesn't set UID properly, ignoring...\n");
++#else
+ return -1;
++#endif
+ }
+ if ( (check & (CPD_GROUP_OK|CPD_GROUP_READ))
+ && (st.st_gid != running_gid) ) {
+@@ -5421,4 +5424,3 @@ tor_weak_random_range(tor_weak_rng_t *rng, int32_t top)
+ } while (result >= top);
+ return result;
+ }
+-
+diff --git a/src/ext/csiphash.c b/src/ext/csiphash.c
+--- a/src/ext/csiphash.c
++++ b/src/ext/csiphash.c
+@@ -56,7 +56,13 @@
+ # if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
+ # include <sys/endian.h>
+ # else
+-# include <endian.h>
++# ifdef _NEWLIB_VERSION // if TOOLCHAIN=newlib
++ // newlib endian.h doesn't contain le64toh()
++ // nacl is little endian thus le64toh is a nop
++# define le64toh(x) (x)
++# else // the usual
++# include <endian.h>
++# endif
+ # endif
+ # if defined(__BYTE_ORDER) && defined(__LITTLE_ENDIAN) && \
+ __BYTE_ORDER == __LITTLE_ENDIAN
+diff --git a/src/or/config.c b/src/or/config.c
+--- a/src/or/config.c
++++ b/src/or/config.c
+@@ -1375,10 +1375,14 @@ options_act(const or_options_t *old_options)
+ /* Write control ports to disk as appropriate */
+ control_ports_write_to_file();
+
++// nacl_io don't support file locking (yet)
++// #TODO(dt) remove following,once file locking is supported
++#ifndef __native_client__
+ if (running_tor && !have_lockfile()) {
+ if (try_locking(options, 1) < 0)
+ return -1;
+ }
++#endif
+
+ if (consider_adding_dir_servers(options, old_options) < 0)
+ return -1;
+@@ -7109,4 +7113,3 @@ init_cookie_authentication(const char *fname, const char *header,
+ tor_free(cookie_file_str);
+ return retval;
+ }
+-
+diff --git a/src/or/main.c b/src/or/main.c
+--- a/src/or/main.c
++++ b/src/or/main.c
+@@ -2402,6 +2402,11 @@ void
+ handle_signals(int is_parent)
+ {
+ #ifndef _WIN32 /* do signal stuff only on Unix */
++#ifdef __native_client__
++// nacl doesn't support signals(no support in libevent)
++(void)is_parent;
++return;
++#endif
+ int i;
+ static const int signals[] = {
+ SIGINT, /* do a controlled slow shutdown */
+@@ -3127,4 +3132,3 @@ tor_main(int argc, char *argv[])
+ tor_cleanup();
+ return result;
+ }
+-
« no previous file with comments | « ports/tor/manifest.json ('k') | ports/tor/pkg_info » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698