* [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
@ 2008-08-15 22:03 Pēteris Kļaviņš
2008-08-16 14:04 ` Jan Engelhardt
0 siblings, 1 reply; 10+ messages in thread
From: Pēteris Kļaviņš @ 2008-08-15 22:03 UTC (permalink / raw)
To: netfilter-devel
This is a request for comments on the proposal that the following
filename changes (indicative at this point) be made in the netfilter
source code tree, together with correcting the corresponding references
to the files in both source code, the build system, and wherever else
necessary.
The changes are proposed in order to avoid file name clashes on
filesystems that do not allow two files to have names that differ only
in the case of their letters:
include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
include/linux/netfilter/xt_DSCP.h => xt_dscp_target.h
include/linux/netfilter/xt_MARK.h => xt_mark_target.h
include/linux/netfilter/xt_RATEEST.h => xt_rateest_target.h
include/linux/netfilter/xt_TCPMSS.h => xt_tcpmss_target.h
include/linux/netfilter_ipv4/ipt_CONNMARK.h => ipt_connmark_target.h
include/linux/netfilter_ipv4/ipt_DSCP.h => ipt_dscp_target.h
include/linux/netfilter_ipv4/ipt_ECN.h => ipt_ecn_target.h
include/linux/netfilter_ipv4/ipt_MARK.h => ipt_mark_target.h
include/linux/netfilter_ipv4/ipt_TCPMSS.h => ipt_tcpmss_target.h
include/linux/netfilter_ipv4/ipt_TOS.h => ipt_tos_target.h
include/linux/netfilter_ipv4/ipt_TTL.h => ipt_ttl_target.h
include/linux/netfilter_ipv6/ip6t_HL.h => ip6t_hl_target.h
include/linux/netfilter_ipv6/ip6t_MARK.h => ip6t_mark_target.h
net/ipv4/netfilter/ipt_ECN.c => ipt_ecn_target.c
net/ipv4/netfilter/ipt_TTL.c => ipt_ttl_target.c
net/ipv6/netfilter/ip6t_HL.c => ip6t_hl_target.c
net/netfilter/xt_CONNMARK.c => xt_connmark_target.c
net/netfilter/xt_DSCP.c => xt_dscp_target.c
net/netfilter/xt_MARK.c => xt_mark_target.c
net/netfilter/xt_RATEEST.c => xt_rateest_target.c
net/netfilter/xt_TCPMSS.c => xt_tcpmss_target.c
This has been discussed before on the git mailing list (see thread
http://article.gmane.org/gmane.comp.version-control.git/38612 ), and I
believe it to be a problem that will start to crop up more often than
not, given the proliferation of open source code onto a variety of
platforms that have this type of filename intolerance.
The reason for posting to this list is to hear your considered opinion
on the impact of these proposed file name changes on the netfilter and
linux kernel development communities. If you prefer I submit complete
patches before discussion, I could try to do that.
--
Peter Klavins
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-15 22:03 [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash Pēteris Kļaviņš
@ 2008-08-16 14:04 ` Jan Engelhardt
2008-08-16 15:32 ` Pēteris Kļaviņš
2008-08-16 19:14 ` Jozsef Kadlecsik
0 siblings, 2 replies; 10+ messages in thread
From: Jan Engelhardt @ 2008-08-16 14:04 UTC (permalink / raw)
To: Pēteris Kļaviņš
Cc: Netfilter Developer Mailing List, kaber
On Friday 2008-08-15 18:03, Pēteris Kļaviņš wrote:
> This is a request for comments on the proposal that the following
> filename changes (indicative at this point) be made in the
> netfilter source code tree, together with correcting the
> corresponding references to the files in both source code, the
> build system, and wherever else necessary.
>
> The changes are proposed in order to avoid file name clashes on
> filesystems that do not allow two files to have names that differ
> only in the case of their letters:
>
> include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
[...]
As I see it, this will already be addressed by merging complementary
code into one source file (e.g. MARK, mark, CONNMARK, connmark
all into a big new xt_mark.c), to reduce (a) amount of files
and (b) build time.
This has been touched before at
http://marc.info/?l=netfilter-devel&m=121148631320895&w=2
I welcome that idea, but have yet been holding off sending patches
on that because these code-moving changes would possibly generate
a lot of .rej noise while I am still having other patches in my
queue.
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-16 14:04 ` Jan Engelhardt
@ 2008-08-16 15:32 ` Pēteris Kļaviņš
2008-08-16 19:14 ` Jozsef Kadlecsik
1 sibling, 0 replies; 10+ messages in thread
From: Pēteris Kļaviņš @ 2008-08-16 15:32 UTC (permalink / raw)
To: netfilter-devel
Jan Engelhardt wrote:
>> include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
> [...]
>
> As I see it, this will already be addressed by merging complementary
> code into one source file (e.g. MARK, mark, CONNMARK, connmark
> all into a big new xt_mark.c), to reduce (a) amount of files
> and (b) build time.
>
> This has been touched before at
> http://marc.info/?l=netfilter-devel&m=121148631320895&w=2
> I welcome that idea, but have yet been holding off sending patches
> on that because these code-moving changes would possibly generate
> a lot of .rej noise while I am still having other patches in my
> queue.
Thanks very much for the heads-up on the pending code simplification, of
course it makes sense to rename files as part of that work.
I'll clone git://git.netfilter.org/iptables.git regularly, watching for
the file name clashes to go away, and I'll only nag on this list if I
think that it's been forgotten, I hope that's OK.
--
Peter Klavins
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-16 14:04 ` Jan Engelhardt
2008-08-16 15:32 ` Pēteris Kļaviņš
@ 2008-08-16 19:14 ` Jozsef Kadlecsik
2008-08-16 19:22 ` Jan Engelhardt
2008-08-18 11:17 ` Patrick McHardy
1 sibling, 2 replies; 10+ messages in thread
From: Jozsef Kadlecsik @ 2008-08-16 19:14 UTC (permalink / raw)
To: Jan Engelhardt
Cc: Pteris Kaviš, Netfilter Developer Mailing List,
Patrick McHardy
[-- Attachment #1: Type: TEXT/PLAIN, Size: 1734 bytes --]
On Sat, 16 Aug 2008, Jan Engelhardt wrote:
> On Friday 2008-08-15 18:03, P˙˙teris K˙˙avi˙˙š wrote:
>
> > This is a request for comments on the proposal that the following
> > filename changes (indicative at this point) be made in the
> > netfilter source code tree, together with correcting the
> > corresponding references to the files in both source code, the
> > build system, and wherever else necessary.
> >
> > The changes are proposed in order to avoid file name clashes on
> > filesystems that do not allow two files to have names that differ
> > only in the case of their letters:
> >
> > include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
> [...]
>
> As I see it, this will already be addressed by merging complementary
> code into one source file (e.g. MARK, mark, CONNMARK, connmark
> all into a big new xt_mark.c), to reduce (a) amount of files
> and (b) build time.
[...]
That is half of the story: we encode the functionality (match/target) in
the case of the (file)name and there are targets which have got no match
counterpart and thus no natural lowercase filename to merge into it. So
the directory tree still will be broken on case-insensitive filesystems.
If as a side effect of some real internal changes netfilter becomes
compatible with case-insensitive filesystems, that's fine. However, I
object changes just for the sake to be compatible with such horrid
filesystems.
Best regards,
Jozsef
the NACK guy of the week
-
E-mail : kadlec@blackhole.kfki.hu, kadlec@mail.kfki.hu
PGP key : http://www.kfki.hu/~kadlec/pgp_public_key.txt
Address : KFKI Research Institute for Particle and Nuclear Physics
H-1525 Budapest 114, POB. 49, Hungary
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-16 19:14 ` Jozsef Kadlecsik
@ 2008-08-16 19:22 ` Jan Engelhardt
2008-08-16 19:52 ` Jozsef Kadlecsik
2008-08-18 11:17 ` Patrick McHardy
1 sibling, 1 reply; 10+ messages in thread
From: Jan Engelhardt @ 2008-08-16 19:22 UTC (permalink / raw)
To: Jozsef Kadlecsik
Cc: Pteris Kaviš, Netfilter Developer Mailing List,
Patrick McHardy
On Saturday 2008-08-16 15:14, Jozsef Kadlecsik wrote:
>On Sat, 16 Aug 2008, Jan Engelhardt wrote:
>> On Friday 2008-08-15 18:03, P˙˙teris K˙˙avi˙˙š wrote:
>>
>> > The changes are proposed in order to avoid file name clashes on
>> > filesystems that do not allow two files to have names that differ
>> > only in the case of their letters:
>> >
>> > include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
>> [...]
>>
>> As I see it, this will already be addressed by merging complementary
>> code into one source file (e.g. MARK, mark, CONNMARK, connmark
>> all into a big new xt_mark.c), to reduce (a) amount of files
>> and (b) build time.
>[...]
>
>That is half of the story: we encode the functionality (match/target) in
>the case of the (file)name and there are targets which have got no match
>counterpart and thus no natural lowercase filename to merge into it. So
>the directory tree still will be broken on case-insensitive filesystems.
We have not decided on filenames yet, just that matches/targets that
are commonly used together should go into a single file for the two
above-mentioned reasons, and lower-casing does not appear in (a) or (b).
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-16 19:22 ` Jan Engelhardt
@ 2008-08-16 19:52 ` Jozsef Kadlecsik
2008-08-16 20:19 ` Pēteris Kļaviņš
0 siblings, 1 reply; 10+ messages in thread
From: Jozsef Kadlecsik @ 2008-08-16 19:52 UTC (permalink / raw)
To: Jan Engelhardt
Cc: Pteris Kaviš, Netfilter Developer Mailing List,
Patrick McHardy
[-- Attachment #1: Type: TEXT/PLAIN, Size: 2064 bytes --]
On Sat, 16 Aug 2008, Jan Engelhardt wrote:
> On Saturday 2008-08-16 15:14, Jozsef Kadlecsik wrote:
> >On Sat, 16 Aug 2008, Jan Engelhardt wrote:
> >> On Friday 2008-08-15 18:03, P˙˙teris K˙˙avi˙˙š wrote:
> >>
> >> > The changes are proposed in order to avoid file name clashes on
> >> > filesystems that do not allow two files to have names that differ
> >> > only in the case of their letters:
> >> >
> >> > include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
> >> [...]
> >>
> >> As I see it, this will already be addressed by merging complementary
> >> code into one source file (e.g. MARK, mark, CONNMARK, connmark
> >> all into a big new xt_mark.c), to reduce (a) amount of files
> >> and (b) build time.
> >[...]
> >
> >That is half of the story: we encode the functionality (match/target) in
> >the case of the (file)name and there are targets which have got no match
> >counterpart and thus no natural lowercase filename to merge into it. So
> >the directory tree still will be broken on case-insensitive filesystems.
>
> We have not decided on filenames yet, just that matches/targets that
> are commonly used together should go into a single file for the two
> above-mentioned reasons, and lower-casing does not appear in (a) or (b).
You wrote: "by merging into ... a big new xt_mark.c". Pteris also
suggested fully lowercased names, e.g. xt_connmark_target.h. Or are you
just pulling my leg by pointing to the possibility to >capitalize< all
the filenames in netfilter, to achieve case-insensitive filenames?
But of course I'm writing about (c):
libipt_SNAT|DNAT|MASQUERADE|REDIRECT|SAME|NETMAP.c
libipt_LOG.c, libxt_NFLOG.c,
...
And you are fully aware that the same case-sensitivity applies to the
source of iptables as well.
Best regards,
Jozsef
-
E-mail : kadlec@blackhole.kfki.hu, kadlec@mail.kfki.hu
PGP key : http://www.kfki.hu/~kadlec/pgp_public_key.txt
Address : KFKI Research Institute for Particle and Nuclear Physics
H-1525 Budapest 114, POB. 49, Hungary
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-16 19:52 ` Jozsef Kadlecsik
@ 2008-08-16 20:19 ` Pēteris Kļaviņš
2008-08-17 22:04 ` Jozsef Kadlecsik
0 siblings, 1 reply; 10+ messages in thread
From: Pēteris Kļaviņš @ 2008-08-16 20:19 UTC (permalink / raw)
To: netfilter-devel
Jozsef Kadlecsik wrote:
> On Sat, 16 Aug 2008, Jan Engelhardt wrote:
>
>> On Saturday 2008-08-16 15:14, Jozsef Kadlecsik wrote:
>>> On Sat, 16 Aug 2008, Jan Engelhardt wrote:
>>>> On Friday 2008-08-15 18:03, P˙˙teris K˙˙avi˙˙š wrote:
>>>>
>>>>> The changes are proposed in order to avoid file name clashes on
>>>>> filesystems that do not allow two files to have names that differ
>>>>> only in the case of their letters:
>>>>>
>>>>> include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
>>>> [...]
>>>>
>>>> As I see it, this will already be addressed by merging complementary
>>>> code into one source file (e.g. MARK, mark, CONNMARK, connmark
>>>> all into a big new xt_mark.c), to reduce (a) amount of files
>>>> and (b) build time.
>>> [...]
>>>
>>> That is half of the story: we encode the functionality (match/target) in
>>> the case of the (file)name and there are targets which have got no match
>>> counterpart and thus no natural lowercase filename to merge into it. So
>>> the directory tree still will be broken on case-insensitive filesystems.
>> We have not decided on filenames yet, just that matches/targets that
>> are commonly used together should go into a single file for the two
>> above-mentioned reasons, and lower-casing does not appear in (a) or (b).
>
> You wrote: "by merging into ... a big new xt_mark.c". Pteris also
> suggested fully lowercased names, e.g. xt_connmark_target.h. Or are you
> just pulling my leg by pointing to the possibility to >capitalize< all
> the filenames in netfilter, to achieve case-insensitive filenames?
My suggested names were taken from within the files themselves. Note
that the standard #ifdef multiple inclusion guards in the existing files
could not follow normal practice and had to be modified in some way,
because by tradition they are simply uppercase transformations of the
filename itself (but that would end up in a clash!), and so the
xt_CONNMARK.h include guard is "_XT_CONNMARK_H_target". By natural
extension, my proposal was to rename the existing uppercase file to
xt_connmark_target.h. However, for the typical case-insensitive
filesystems out there, it is fine for the file to be called
xt_CONNMARK_target.h, and I have no objection to that, so long as that
doesn't clash with another filename differing only in the case of the
letters:
$ ls | grep -i xt_connmark | while read i; do grep _H $i /dev/null; done
xt_CONNMARK.h:#ifndef _XT_CONNMARK_H_target
xt_CONNMARK.h:#define _XT_CONNMARK_H_target
xt_CONNMARK.h:#endif /*_XT_CONNMARK_H_target*/
xt_connmark.h:#ifndef _XT_CONNMARK_H
xt_connmark.h:#define _XT_CONNMARK_H
xt_connmark.h:#endif /*_XT_CONNMARK_H*/
--
Peter Klavins
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-16 20:19 ` Pēteris Kļaviņš
@ 2008-08-17 22:04 ` Jozsef Kadlecsik
2008-08-17 22:18 ` Jan Engelhardt
0 siblings, 1 reply; 10+ messages in thread
From: Jozsef Kadlecsik @ 2008-08-17 22:04 UTC (permalink / raw)
To: Pēteris Kļaviņš; +Cc: netfilter-devel
[-- Attachment #1: Type: TEXT/PLAIN, Size: 2967 bytes --]
On Sat, 16 Aug 2008, Pteris Kaviš wrote:
> Jozsef Kadlecsik wrote:
> > On Sat, 16 Aug 2008, Jan Engelhardt wrote:
> >
> > > On Saturday 2008-08-16 15:14, Jozsef Kadlecsik wrote:
> > > > On Sat, 16 Aug 2008, Jan Engelhardt wrote:
> > > > > On Friday 2008-08-15 18:03, Pteris Kaviš wrote:
> > > > >
> > > > > > The changes are proposed in order to avoid file name clashes on
> > > > > > filesystems that do not allow two files to have names that differ
> > > > > > only in the case of their letters:
> > > > > >
> > > > > > include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
> > > > > [...]
> > > > >
> > > > > As I see it, this will already be addressed by merging complementary
> > > > > code into one source file (e.g. MARK, mark, CONNMARK, connmark
> > > > > all into a big new xt_mark.c), to reduce (a) amount of files
> > > > > and (b) build time.
> > > > [...]
> > > >
> > > > That is half of the story: we encode the functionality (match/target) in
> > > > the case of the (file)name and there are targets which have got no match
> > > > counterpart and thus no natural lowercase filename to merge into it. So
> > > > the directory tree still will be broken on case-insensitive filesystems.
> > > We have not decided on filenames yet, just that matches/targets that
> > > are commonly used together should go into a single file for the two
> > > above-mentioned reasons, and lower-casing does not appear in (a) or (b).
> >
> > You wrote: "by merging into ... a big new xt_mark.c". Pteris also suggested
> > fully lowercased names, e.g. xt_connmark_target.h. Or are you just pulling
> > my leg by pointing to the possibility to >capitalize< all the filenames in
> > netfilter, to achieve case-insensitive filenames?
>
> My suggested names were taken from within the files themselves. Note
> that the standard #ifdef multiple inclusion guards in the existing files
> could not follow normal practice and had to be modified in some way,
> because by tradition they are simply uppercase transformations of the
> filename itself (but that would end up in a clash!), and so the
> xt_CONNMARK.h include guard is "_XT_CONNMARK_H_target". By natural
> extension, my proposal was to rename the existing uppercase file to
> xt_connmark_target.h. However, for the typical case-insensitive
> filesystems out there, it is fine for the file to be called
> xt_CONNMARK_target.h, and I have no objection to that, so long as that
> doesn't clash with another filename differing only in the case of the
> letters:
[...]
I should have looked up the old thread at the first place:
http://marc.info/?l=netfilter-devel&m=109795874701112&w=2
Best regards,
Jozsef
-
E-mail : kadlec@blackhole.kfki.hu, kadlec@mail.kfki.hu
PGP key : http://www.kfki.hu/~kadlec/pgp_public_key.txt
Address : KFKI Research Institute for Particle and Nuclear Physics
H-1525 Budapest 114, POB. 49, Hungary
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-17 22:04 ` Jozsef Kadlecsik
@ 2008-08-17 22:18 ` Jan Engelhardt
0 siblings, 0 replies; 10+ messages in thread
From: Jan Engelhardt @ 2008-08-17 22:18 UTC (permalink / raw)
To: Jozsef Kadlecsik; +Cc: Pēteris Kļaviņš, netfilter-devel
On Sunday 2008-08-17 18:04, Jozsef Kadlecsik wrote:
>
>I should have looked up the old thread at the first place:
>http://marc.info/?l=netfilter-devel&m=109795874701112&w=2
>
Hey that just shows we have been fine for over four years now! :D
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash
2008-08-16 19:14 ` Jozsef Kadlecsik
2008-08-16 19:22 ` Jan Engelhardt
@ 2008-08-18 11:17 ` Patrick McHardy
1 sibling, 0 replies; 10+ messages in thread
From: Patrick McHardy @ 2008-08-18 11:17 UTC (permalink / raw)
To: Jozsef Kadlecsik
Cc: Jan Engelhardt, Pteris Kavi¹,
Netfilter Developer Mailing List
Jozsef Kadlecsik wrote:
> On Sat, 16 Aug 2008, Jan Engelhardt wrote:
>
>> On Friday 2008-08-15 18:03, P˙˙teris K˙˙avi˙˙š wrote:
>>
>>> This is a request for comments on the proposal that the following
>>> filename changes (indicative at this point) be made in the
>>> netfilter source code tree, together with correcting the
>>> corresponding references to the files in both source code, the
>>> build system, and wherever else necessary.
>>>
>>> The changes are proposed in order to avoid file name clashes on
>>> filesystems that do not allow two files to have names that differ
>>> only in the case of their letters:
>>>
>>> include/linux/netfilter/xt_CONNMARK.h => xt_connmark_target.h
>> [...]
>>
>> As I see it, this will already be addressed by merging complementary
>> code into one source file (e.g. MARK, mark, CONNMARK, connmark
>> all into a big new xt_mark.c), to reduce (a) amount of files
>> and (b) build time.
> [...]
>
> That is half of the story: we encode the functionality (match/target) in
> the case of the (file)name and there are targets which have got no match
> counterpart and thus no natural lowercase filename to merge into it. So
> the directory tree still will be broken on case-insensitive filesystems.
>
> If as a side effect of some real internal changes netfilter becomes
> compatible with case-insensitive filesystems, that's fine. However, I
> object changes just for the sake to be compatible with such horrid
> filesystems.
I agree. Without compat files this would also break compilation
of old userspace, so this is not an option anyways.
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2008-08-18 11:17 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-08-15 22:03 [RFC] netfilter: Rename ipt_ECN.h to ipt_ecn_target.h (and similar) to avoid file name clash Pēteris Kļaviņš
2008-08-16 14:04 ` Jan Engelhardt
2008-08-16 15:32 ` Pēteris Kļaviņš
2008-08-16 19:14 ` Jozsef Kadlecsik
2008-08-16 19:22 ` Jan Engelhardt
2008-08-16 19:52 ` Jozsef Kadlecsik
2008-08-16 20:19 ` Pēteris Kļaviņš
2008-08-17 22:04 ` Jozsef Kadlecsik
2008-08-17 22:18 ` Jan Engelhardt
2008-08-18 11:17 ` Patrick McHardy
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.