[tor-bugs] #30184 [Core Tor/Tor]: release-0.2.9 doesn't compile on old rhel

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Apr 16 06:04:50 UTC 2019


#30184: release-0.2.9 doesn't compile on old rhel
-------------------------------------------------+-------------------------
 Reporter:  arma                                 |          Owner:  (none)
     Type:  defect                               |         Status:
                                                 |  needs_revision
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  0.2.9.x-final
Component:  Core Tor/Tor                         |        Version:  Tor:
                                                 |  unspecified
 Severity:  Normal                               |     Resolution:
 Keywords:  no-mainline-merge, regression,       |  Actual Points:  0.1
  consider-backport-after-0404-alpha, fast-fix   |
Parent ID:                                       |         Points:  0.1
 Reviewer:                                       |        Sponsor:
                                                 |  SponsorQ
-------------------------------------------------+-------------------------
Changes (by teor):

 * status:  new => needs_revision
 * version:   => Tor: unspecified
 * points:   => 0.1
 * sponsor:   => SponsorQ
 * actualpoints:   => 0.1
 * keywords:  regression =>
     no-mainline-merge, regression, consider-backport-after-0404-alpha,
     fast-fix


Comment:

 Marking as SponsorQ, because this bug was introduced by a SponsorQ ticket.

 Marking for backport in the current batch, because it's a trivial
 compilation fix that is already in 0.3.4 and later.

 Replying to [ticket:30184 arma]:
 > On rhel6, building release-0.2.9 (git commit ca008906), I get
 > {{{
 >   CC     src/or/src_or_libtor_testing_a-rephist.o
 > src/or/rephist.c:91: error: redefinition of typedef ‘bw_array_t’
 > src/or/rephist.h:120: note: previous declaration of ‘bw_array_t’ was
 here
 > make[1]: *** [src/or/src_or_libtor_testing_a-rephist.o] Error 1
 > }}}
 >
 > Looks like when we backported some stuff, we didn't backport all of the
 subsequent fixes on the stuff.

 We merged 1da9741bca to master, but I removed the equivalent commit from
 0.2.9, because the CI failed:
 https://trac.torproject.org/projects/tor/ticket/23512#comment:38

 But the extern declaration is slightly different in 0.2.9 and 0.3.4, due
 to merge commit 813019cc57:
 {{{
 ++extern struct bw_array_t *write_array;
 ++#endif
 ++
 ++#ifdef REPHIST_PRIVATE
  +typedef struct bw_array_t bw_array_t;
 - extern bw_array_t *write_array;
 }}}

 I tried cherry-picking 1da9741bca, then adding the `struct` in a separate
 commit. (It was added to 0.3.4 in the merge commit.)

 Here is the pull request:
 * 0.2.9: https://github.com/torproject/tor/pull/957

 But that failed with:
 {{{
 src/test/test_relay.c:22:27: error: must use 'struct' tag to refer to type
       'bw_array_t'
 uint64_t find_largest_max(bw_array_t *b);
                           ^
                           struct
 src/test/test_relay.c:23:17: error: must use 'struct' tag to refer to type
       'bw_array_t'
 void commit_max(bw_array_t *b);
                 ^
                 struct
 src/test/test_relay.c:24:18: error: must use 'struct' tag to refer to type
       'bw_array_t'
 void advance_obs(bw_array_t *b);
                  ^
                  struct
 }}}

 So maybe I should backport the struct tags as well?

 > (My bwauth still runs on 0.2.9, since I'm under the impression that's
 the last version that works well with bwauths. That's how I noticed.)

 I'm not sure if that's true.
 You should ask the other torflow operators what they're running?

 (I wish I could tell you, but we didn't think of the tor version when we
 were doing the headers for sbws 1.0 or 1.1. We'll add it in #30196.)

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/30184#comment:4>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list