selenium_tor 1.6.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -5
- data/CHANGELOG.md +12 -0
- data/README.md +8 -10
- data/Rakefile +1 -2
- data/fonts/Arimo-Bold.ttf +0 -0
- data/fonts/Arimo-BoldItalic.ttf +0 -0
- data/fonts/Arimo-Italic.ttf +0 -0
- data/fonts/Arimo-Regular.ttf +0 -0
- data/fonts/Cousine-Bold.ttf +0 -0
- data/fonts/Cousine-BoldItalic.ttf +0 -0
- data/fonts/Cousine-Italic.ttf +0 -0
- data/fonts/Cousine-Regular.ttf +0 -0
- data/fonts/NotoNaskhArabic-Regular.ttf +0 -0
- data/fonts/NotoSansAdlam-Regular.ttf +0 -0
- data/fonts/NotoSansArmenian-Regular.ttf +0 -0
- data/fonts/NotoSansBalinese-Regular.ttf +0 -0
- data/fonts/NotoSansBamum-Regular.ttf +0 -0
- data/fonts/NotoSansBassaVah-Regular.ttf +0 -0
- data/fonts/NotoSansBatak-Regular.ttf +0 -0
- data/fonts/NotoSansBengali-Regular.ttf +0 -0
- data/fonts/NotoSansBuginese-Regular.ttf +0 -0
- data/fonts/NotoSansBuhid-Regular.ttf +0 -0
- data/fonts/NotoSansCanadianAboriginal-Regular.ttf +0 -0
- data/fonts/NotoSansChakma-Regular.ttf +0 -0
- data/fonts/NotoSansCham-Regular.ttf +0 -0
- data/fonts/NotoSansCherokee-Regular.ttf +0 -0
- data/fonts/NotoSansCoptic-Regular.ttf +0 -0
- data/fonts/NotoSansDeseret-Regular.ttf +0 -0
- data/fonts/NotoSansDevanagari-Regular.ttf +0 -0
- data/fonts/NotoSansElbasan-Regular.ttf +0 -0
- data/fonts/NotoSansEthiopic-Regular.ttf +0 -0
- data/fonts/NotoSansGeorgian-Regular.ttf +0 -0
- data/fonts/NotoSansGrantha-Regular.ttf +0 -0
- data/fonts/NotoSansGujarati-Regular.ttf +0 -0
- data/fonts/NotoSansGunjalaGondi-Regular.ttf +0 -0
- data/fonts/NotoSansGurmukhi-Regular.ttf +0 -0
- data/fonts/NotoSansHanifiRohingya-Regular.ttf +0 -0
- data/fonts/NotoSansHanunoo-Regular.ttf +0 -0
- data/fonts/NotoSansHebrew-Regular.ttf +0 -0
- data/fonts/NotoSansJP-Regular.otf +0 -0
- data/fonts/NotoSansJavanese-Regular.ttf +0 -0
- data/fonts/NotoSansKR-Regular.otf +0 -0
- data/fonts/NotoSansKannada-Regular.ttf +0 -0
- data/fonts/NotoSansKayahLi-Regular.ttf +0 -0
- data/fonts/NotoSansKhmer-Regular.ttf +0 -0
- data/fonts/NotoSansKhojki-Regular.ttf +0 -0
- data/fonts/NotoSansKhudawadi-Regular.ttf +0 -0
- data/fonts/NotoSansLao-Regular.ttf +0 -0
- data/fonts/NotoSansLepcha-Regular.ttf +0 -0
- data/fonts/NotoSansLimbu-Regular.ttf +0 -0
- data/fonts/NotoSansLisu-Regular.ttf +0 -0
- data/fonts/NotoSansMahajani-Regular.ttf +0 -0
- data/fonts/NotoSansMalayalam-Regular.ttf +0 -0
- data/fonts/NotoSansMandaic-Regular.ttf +0 -0
- data/fonts/NotoSansMasaramGondi-Regular.ttf +0 -0
- data/fonts/NotoSansMedefaidrin-Regular.ttf +0 -0
- data/fonts/NotoSansMeeteiMayek-Regular.ttf +0 -0
- data/fonts/NotoSansMendeKikakui-Regular.ttf +0 -0
- data/fonts/NotoSansMiao-Regular.ttf +0 -0
- data/fonts/NotoSansModi-Regular.ttf +0 -0
- data/fonts/NotoSansMongolian-Regular.ttf +0 -0
- data/fonts/NotoSansMro-Regular.ttf +0 -0
- data/fonts/NotoSansMultani-Regular.ttf +0 -0
- data/fonts/NotoSansNKo-Regular.ttf +0 -0
- data/fonts/NotoSansNewTaiLue-Regular.ttf +0 -0
- data/fonts/NotoSansNewa-Regular.ttf +0 -0
- data/fonts/NotoSansOlChiki-Regular.ttf +0 -0
- data/fonts/NotoSansOriya-Regular.ttf +0 -0
- data/fonts/NotoSansOsage-Regular.ttf +0 -0
- data/fonts/NotoSansOsmanya-Regular.ttf +0 -0
- data/fonts/NotoSansPahawhHmong-Regular.ttf +0 -0
- data/fonts/NotoSansPauCinHau-Regular.ttf +0 -0
- data/fonts/NotoSansRejang-Regular.ttf +0 -0
- data/fonts/NotoSansRunic-Regular.ttf +0 -0
- data/fonts/NotoSansSC-Regular.otf +0 -0
- data/fonts/NotoSansSamaritan-Regular.ttf +0 -0
- data/fonts/NotoSansSaurashtra-Regular.ttf +0 -0
- data/fonts/NotoSansSharada-Regular.ttf +0 -0
- data/fonts/NotoSansShavian-Regular.ttf +0 -0
- data/fonts/NotoSansSinhala-Regular.ttf +0 -0
- data/fonts/NotoSansSoraSompeng-Regular.ttf +0 -0
- data/fonts/NotoSansSoyombo-Regular.ttf +0 -0
- data/fonts/NotoSansSundanese-Regular.ttf +0 -0
- data/fonts/NotoSansSylotiNagri-Regular.ttf +0 -0
- data/fonts/NotoSansSymbols-Regular.ttf +0 -0
- data/fonts/NotoSansSymbols2-Regular.ttf +0 -0
- data/fonts/NotoSansSyriac-Regular.ttf +0 -0
- data/fonts/NotoSansTC-Regular.otf +0 -0
- data/fonts/NotoSansTagalog-Regular.ttf +0 -0
- data/fonts/NotoSansTagbanwa-Regular.ttf +0 -0
- data/fonts/NotoSansTaiLe-Regular.ttf +0 -0
- data/fonts/NotoSansTaiTham-Regular.ttf +0 -0
- data/fonts/NotoSansTaiViet-Regular.ttf +0 -0
- data/fonts/NotoSansTakri-Regular.ttf +0 -0
- data/fonts/NotoSansTamil-Regular.ttf +0 -0
- data/fonts/NotoSansTelugu-Regular.ttf +0 -0
- data/fonts/NotoSansThaana-Regular.ttf +0 -0
- data/fonts/NotoSansThai-Regular.ttf +0 -0
- data/fonts/NotoSansTifinagh-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghAPT-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghAdrar-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghAhaggar-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghAir-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghAzawagh-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghGhat-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghHawad-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghSIL-Regular.ttf +0 -0
- data/fonts/NotoSansTifinaghTawellemmet-Regular.ttf +0 -0
- data/fonts/NotoSansTirhuta-Regular.ttf +0 -0
- data/fonts/NotoSansVai-Regular.ttf +0 -0
- data/fonts/NotoSansWancho-Regular.ttf +0 -0
- data/fonts/NotoSansWarangCiti-Regular.ttf +0 -0
- data/fonts/NotoSansYi-Regular.ttf +0 -0
- data/fonts/NotoSansZanabazarSquare-Regular.ttf +0 -0
- data/fonts/NotoSerifArmenian-Regular.ttf +0 -0
- data/fonts/NotoSerifBalinese-Regular.ttf +0 -0
- data/fonts/NotoSerifBengali-Regular.ttf +0 -0
- data/fonts/NotoSerifDevanagari-Regular.ttf +0 -0
- data/fonts/NotoSerifDogra-Regular.ttf +0 -0
- data/fonts/NotoSerifEthiopic-Regular.ttf +0 -0
- data/fonts/NotoSerifGeorgian-Regular.ttf +0 -0
- data/fonts/NotoSerifGrantha-Regular.ttf +0 -0
- data/fonts/NotoSerifGujarati-Regular.ttf +0 -0
- data/fonts/NotoSerifGurmukhi-Regular.ttf +0 -0
- data/fonts/NotoSerifHebrew-Regular.ttf +0 -0
- data/fonts/NotoSerifKannada-Regular.ttf +0 -0
- data/fonts/NotoSerifKhmer-Regular.ttf +0 -0
- data/fonts/NotoSerifKhojki-Regular.ttf +0 -0
- data/fonts/NotoSerifLao-Regular.ttf +0 -0
- data/fonts/NotoSerifMalayalam-Regular.ttf +0 -0
- data/fonts/NotoSerifMyanmar-Regular.ttf +0 -0
- data/fonts/NotoSerifNPHmong-Regular.ttf +0 -0
- data/fonts/NotoSerifSinhala-Regular.ttf +0 -0
- data/fonts/NotoSerifTamil-Regular.ttf +0 -0
- data/fonts/NotoSerifTelugu-Regular.ttf +0 -0
- data/fonts/NotoSerifThai-Regular.ttf +0 -0
- data/fonts/NotoSerifTibetan-Regular.ttf +0 -0
- data/fonts/NotoSerifYezidi-Regular.ttf +0 -0
- data/fonts/Pyidaungsu-2.5.3_Regular.ttf +0 -0
- data/fonts/STIXTwoMath-Regular.otf +0 -0
- data/fonts/Tinos-Bold.ttf +0 -0
- data/fonts/Tinos-BoldItalic.ttf +0 -0
- data/fonts/Tinos-Italic.ttf +0 -0
- data/fonts/Tinos-Regular.ttf +0 -0
- data/fonts/TwemojiMozilla.ttf +0 -0
- data/fonts/fonts.conf +183 -0
- data/lib/tor/libxul_checksums.yml +52 -0
- data/lib/tor/options.rb +0 -13
- data/lib/tor/tor_prefs.rb +1 -1
- data/lib/tor/tor_process.rb +39 -10
- data/lib/tor/version.rb +1 -1
- metadata +149 -5
data/fonts/fonts.conf
ADDED
@@ -0,0 +1,183 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
3
|
+
<!--
|
4
|
+
**DO NOT EDIT THIS FILE!**
|
5
|
+
This file sets Tor Browser's bundled fonts as the only available system fonts
|
6
|
+
and standardizes rendering settings.
|
7
|
+
Any changes might deanonymize you, or expose you to fingerprinting vectors.
|
8
|
+
-->
|
9
|
+
<!--
|
10
|
+
Derived from fonts.conf.in of Fontconfig.
|
11
|
+
|
12
|
+
Copyright © 2000,2001,2002,2003,2004,2006,2007 Keith Packard
|
13
|
+
Copyright © 2005 Patrick Lam
|
14
|
+
Copyright © 2009 Roozbeh Pournader
|
15
|
+
Copyright © 2008,2009 Red Hat, Inc.
|
16
|
+
Copyright © 2008 Danilo Šegan
|
17
|
+
Copyright © 2012 Google, Inc.
|
18
|
+
|
19
|
+
|
20
|
+
Permission to use, copy, modify, distribute, and sell this software and its
|
21
|
+
documentation for any purpose is hereby granted without fee, provided that
|
22
|
+
the above copyright notice appear in all copies and that both that
|
23
|
+
copyright notice and this permission notice appear in supporting
|
24
|
+
documentation, and that the name of the author(s) not be used in
|
25
|
+
advertising or publicity pertaining to distribution of the software without
|
26
|
+
specific, written prior permission. The authors make no
|
27
|
+
representations about the suitability of this software for any purpose. It
|
28
|
+
is provided "as is" without express or implied warranty.
|
29
|
+
|
30
|
+
THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
31
|
+
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
32
|
+
EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
33
|
+
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
34
|
+
DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
35
|
+
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
36
|
+
PERFORMANCE OF THIS SOFTWARE.
|
37
|
+
-->
|
38
|
+
<fontconfig>
|
39
|
+
|
40
|
+
<!-- Font directory list -->
|
41
|
+
|
42
|
+
<dir prefix="cwd">fonts</dir>
|
43
|
+
|
44
|
+
<!--
|
45
|
+
Accept deprecated 'mono' alias, replacing it with 'monospace'
|
46
|
+
-->
|
47
|
+
<match target="pattern">
|
48
|
+
<test qual="any" name="family">
|
49
|
+
<string>mono</string>
|
50
|
+
</test>
|
51
|
+
<edit name="family" mode="assign" binding="same">
|
52
|
+
<string>monospace</string>
|
53
|
+
</edit>
|
54
|
+
</match>
|
55
|
+
|
56
|
+
<!--
|
57
|
+
Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
|
58
|
+
-->
|
59
|
+
<match target="pattern">
|
60
|
+
<test qual="any" name="family">
|
61
|
+
<string>sans serif</string>
|
62
|
+
</test>
|
63
|
+
<edit name="family" mode="assign" binding="same">
|
64
|
+
<string>sans-serif</string>
|
65
|
+
</edit>
|
66
|
+
</match>
|
67
|
+
|
68
|
+
<!--
|
69
|
+
Accept deprecated 'sans' alias, replacing it with 'sans-serif'
|
70
|
+
-->
|
71
|
+
<match target="pattern">
|
72
|
+
<test qual="any" name="family">
|
73
|
+
<string>sans</string>
|
74
|
+
</test>
|
75
|
+
<edit name="family" mode="assign" binding="same">
|
76
|
+
<string>sans-serif</string>
|
77
|
+
</edit>
|
78
|
+
</match>
|
79
|
+
|
80
|
+
<!--
|
81
|
+
Set our default generic families.
|
82
|
+
-->
|
83
|
+
<match target="pattern">
|
84
|
+
<test qual="any" name="family">
|
85
|
+
<string>sans-serif</string>
|
86
|
+
</test>
|
87
|
+
<edit name="family" mode="assign" binding="same">
|
88
|
+
<string>Arimo</string>
|
89
|
+
</edit>
|
90
|
+
</match>
|
91
|
+
<match target="pattern">
|
92
|
+
<test qual="any" name="family">
|
93
|
+
<string>serif</string>
|
94
|
+
</test>
|
95
|
+
<edit name="family" mode="assign" binding="same">
|
96
|
+
<string>Tinos</string>
|
97
|
+
</edit>
|
98
|
+
</match>
|
99
|
+
<match target="pattern">
|
100
|
+
<test qual="any" name="family">
|
101
|
+
<string>monospace</string>
|
102
|
+
</test>
|
103
|
+
<edit name="family" mode="assign" binding="same">
|
104
|
+
<string>Cousine</string>
|
105
|
+
</edit>
|
106
|
+
</match>
|
107
|
+
|
108
|
+
<!--
|
109
|
+
tor-browser#41799, tor-browser-build#41237: Add some aliases for
|
110
|
+
compatibility.
|
111
|
+
-->
|
112
|
+
<match target="pattern">
|
113
|
+
<test qual="any" name="family">
|
114
|
+
<string>Arial</string>
|
115
|
+
</test>
|
116
|
+
<edit name="family" mode="assign" binding="same">
|
117
|
+
<string>Arimo</string>
|
118
|
+
</edit>
|
119
|
+
</match>
|
120
|
+
<match target="pattern">
|
121
|
+
<test qual="any" name="family">
|
122
|
+
<string>Times New Roman</string>
|
123
|
+
</test>
|
124
|
+
<edit name="family" mode="assign" binding="same">
|
125
|
+
<string>Tinos</string>
|
126
|
+
</edit>
|
127
|
+
</match>
|
128
|
+
<match target="pattern">
|
129
|
+
<test qual="any" name="family">
|
130
|
+
<string>Courier New</string>
|
131
|
+
</test>
|
132
|
+
<edit name="family" mode="assign" binding="same">
|
133
|
+
<string>Cousine</string>
|
134
|
+
</edit>
|
135
|
+
</match>
|
136
|
+
<match target="pattern">
|
137
|
+
<test qual="any" name="family">
|
138
|
+
<string>Helvetica</string>
|
139
|
+
</test>
|
140
|
+
<edit name="family" mode="assign" binding="same">
|
141
|
+
<string>Arimo</string>
|
142
|
+
</edit>
|
143
|
+
</match>
|
144
|
+
<match target="pattern">
|
145
|
+
<test qual="any" name="family">
|
146
|
+
<string>Times</string>
|
147
|
+
</test>
|
148
|
+
<edit name="family" mode="assign" binding="same">
|
149
|
+
<string>Tinos</string>
|
150
|
+
</edit>
|
151
|
+
</match>
|
152
|
+
<match target="pattern">
|
153
|
+
<test qual="any" name="family">
|
154
|
+
<string>Courier</string>
|
155
|
+
</test>
|
156
|
+
<edit name="family" mode="assign" binding="same">
|
157
|
+
<string>Cousine</string>
|
158
|
+
</edit>
|
159
|
+
</match>
|
160
|
+
|
161
|
+
<!-- Font cache directory list -->
|
162
|
+
|
163
|
+
<cachedir prefix="xdg">fontconfig</cachedir>
|
164
|
+
|
165
|
+
<config>
|
166
|
+
<!--
|
167
|
+
Rescan configuration every 30 seconds when FcFontSetList is called
|
168
|
+
-->
|
169
|
+
<rescan>
|
170
|
+
<int>30</int>
|
171
|
+
</rescan>
|
172
|
+
</config>
|
173
|
+
|
174
|
+
<!-- Standardize rendering settings. -->
|
175
|
+
<match target="pattern">
|
176
|
+
<edit name="antialias" mode="assign"><bool>true</bool></edit>
|
177
|
+
<edit name="autohint" mode="assign"><bool>false</bool></edit>
|
178
|
+
<edit name="hinting" mode="assign"><bool>true</bool></edit>
|
179
|
+
<edit name="hintstyle" mode="assign"><const>hintfull</const></edit>
|
180
|
+
<edit name="lcdfilter" mode="assign"><const>lcddefault</const></edit>
|
181
|
+
<edit name="rgba" mode="assign"><const>none</const></edit>
|
182
|
+
</match>
|
183
|
+
</fontconfig>
|
@@ -1,8 +1,60 @@
|
|
1
1
|
---
|
2
|
+
14.5.2:
|
3
|
+
unpatched_libxul: 0e4d960cb427df67a25ab50aa934272e7ac7ee3487c709e48d97e2611e2ae930
|
4
|
+
patched_libxul: 20579db140991d77db1a3ffa3e248752dd689bf4156056402cbe1fd6287430c1
|
5
|
+
patch_checksum: d6db59104c809ee3c9232e093e85b34abc02069ccf63beb2102f371492fcd42d
|
6
|
+
14.5.1:
|
7
|
+
unpatched_libxul: d3fb74cad36cb0b944b6db87d9377e81b54b0ba1dc9ffecef3ffbf95ab5f6c56
|
8
|
+
patched_libxul: 0092fe0b27e0bc4be47b1f925509064494effea370023bc91e39f254dc52d341
|
9
|
+
patch_checksum: 3746698dfe5ed5d0f56d28fa9655aff2c908252bed51f584e4822d8581e6a24f
|
10
|
+
!!str 14.5:
|
11
|
+
unpatched_libxul: 8518f1b2b6b76b2d17fd32189b16e25898a4ae3bf6981613feecdec290363232
|
12
|
+
patched_libxul: f58a11c36cc91fefab1cf92de822d70b0f3d17e38b32c4fa37ba8287529b40c3
|
13
|
+
patch_checksum: 852b152872338a3d0c097607f7f2aa0b41729136bfe661bcc8427dc61789c630
|
14
|
+
14.5a6:
|
15
|
+
unpatched_libxul: 7cdfdf7fa84ea5a31607595114d33d77d27eb1fea814835735c0bc0f6484a5b7
|
16
|
+
patched_libxul: 622f8635cf4cc82cc8c4c2db03bae44123d79c50ee910795b1f1dbe4351c9ca3
|
17
|
+
patch_checksum: 44682be0e6b8d885f769fc30daa4f2fdbe64367935f5f88ef6ded29a397101c5
|
18
|
+
14.5a5:
|
19
|
+
unpatched_libxul: d96ab04398a1d2636be475ecc3cca747a496213c78d778304d2953b48342af3e
|
20
|
+
patched_libxul: 5c3e72fc6d477735013d7079828aa99cc47c662c58a7ab48fec600f159987c38
|
21
|
+
patch_checksum: 31aeb887eadaff88c19bcd989f6e2530f2ac931a4169e314853116ff568e0250
|
22
|
+
14.5a4:
|
23
|
+
unpatched_libxul: 86b62b1794005a400fd204d130ae0dbd7e69db67e66d0db9cc374aee5a0eafdb
|
24
|
+
patched_libxul: 38a7ffff8cb094b7987b413ed5406699b2b137cee5d260f0da7d9b9289a36818
|
25
|
+
patch_checksum: e018a62d07829f4bdfc8ebf6ff2555b6705ea938c5cfdb3667b05fd118e25efe
|
26
|
+
14.5a3:
|
27
|
+
unpatched_libxul: 2c865e239e20aeb785c830a922aa197cbd87337669b05ea0c0d43dc4b101efe7
|
28
|
+
patched_libxul: c9a0a33e747268269e269e2a01618e3f8db0c11d080a3867014e11b08b5d2be5
|
29
|
+
patch_checksum: 7977048cde11319a9e5a337ace40abc30e63e7be7808b438105cd90b2397beaf
|
30
|
+
14.5a2:
|
31
|
+
unpatched_libxul: 764f91909cac9c90208aaa70001a52cba43ec02d8b0dab69809e542f39a3c0a2
|
32
|
+
patched_libxul: 3fc4c32bde0bd9f1e1ac2d22a936d9912db0cf5f5510227906dca8abb3d4648b
|
33
|
+
patch_checksum: 24cdd9a7755093222faff66fa79bc9c7580503c760d2fae6e0835e3c33b0dade
|
2
34
|
14.5a1:
|
3
35
|
unpatched_libxul: 4586056dfd6584effa61f974e802b5b2103965326716423c2f76043e68571149
|
4
36
|
patched_libxul: b4463dffe43a112e509764c5e32b100bc2749112dc852244ed8817b72e631642
|
5
37
|
patch_checksum: a0397d3e9a86339c497bcedf3b8c4bed767284e9299e791e54266d42c2872b7d
|
38
|
+
14.0.9:
|
39
|
+
unpatched_libxul: b52659cb3a202ef69acd8ba37360467daf17d7b90afdf1419f7dbefb872979cc
|
40
|
+
patched_libxul: af9c6c3822664f2084b404d9fd34d2e6a2d3f7d2d71f25cf9dde9e97018302fa
|
41
|
+
patch_checksum: 88188dfbd38bd84fa5bd5f82634fc009543ea3e16ba756ea02ffb11dd7875de6
|
42
|
+
14.0.7:
|
43
|
+
unpatched_libxul: 649f05fd66e6e84fbde94907571d5bc34b59f06974cb2ebb60d1847c3c0eb1cc
|
44
|
+
patched_libxul: 15d8aaf658bc08b0990525ca4b45539a43e8249541f102bb19cb9050420b6047
|
45
|
+
patch_checksum: b30c3a09eb0a77c23f3c691c8c1a369ca8b1fefd209391e93a077779e60298a1
|
46
|
+
14.0.6:
|
47
|
+
unpatched_libxul: a421a0cd73815c323ab6c2c5c676e5177425ae65830290a147ec6efbd5e25388
|
48
|
+
patched_libxul: e7a21cef56b25bc4b1364f953505cf8f74147fc5b48c73d204c17ab10696dae0
|
49
|
+
patch_checksum: 2a9d08a8d21f7ab07df7d2d4ba24c0cbde9b05cebb3f38bfa5953e22c06482c9
|
50
|
+
14.0.5:
|
51
|
+
unpatched_libxul: 77d68b6ab27058addd192ba1cb23afb16eccc6bee3d96e1f2f72e1f80c6a09e6
|
52
|
+
patched_libxul: a5786dc865dc673f3290d55d3da324e0209f427678544f5c37e667755b2437ec
|
53
|
+
patch_checksum: be36849ddf1fe51922a3c192d2e97232d93ad62e1bfb2f00e98e2dcbc26a06e3
|
54
|
+
14.0.4:
|
55
|
+
unpatched_libxul: 994b21b5417e704be58107cc6308de6e1c922f0cf60b9df2aac0e4f0090f373f
|
56
|
+
patched_libxul: ae03c3e7217b85c0f28b4d971b695f0d042723447c84a8676a372f32e7b76252
|
57
|
+
patch_checksum: d9f32d00ff1050774f1a90d3055f69ebac113261c082fab621244547c6ef41f5
|
6
58
|
14.0.3:
|
7
59
|
unpatched_libxul: 2ddc3df2e8feb52c3bcd638249aac7d584d9c65888d67e18ad5fecceb4d5010a
|
8
60
|
patched_libxul: 9864cdfd750e504f06bd9eeca427f0a20d83d0bb5cd8e8232ae4a3ee4b2812b1
|
data/lib/tor/options.rb
CHANGED
@@ -29,7 +29,6 @@ module Selenium
|
|
29
29
|
opts[:tor_opts] = opts.delete(:system_tor).opts if opts[:system_tor] # DEPRECATED 2.0
|
30
30
|
@tor_opts = opts[:tor_opts] ? opts.delete(:tor_opts) : {} # must be deleted before call to super
|
31
31
|
do_start_tor_browser_script_stuff # stuff the start-tor-browser script in TBB does
|
32
|
-
copy_fonts # so we don't have to change dir before executing TB binary - issues #2 and #9
|
33
32
|
super(log_level: log_level, **tor_options(opts.delete(:prefs)).merge(opts))
|
34
33
|
end
|
35
34
|
|
@@ -44,18 +43,6 @@ module Selenium
|
|
44
43
|
ENV['XAUTHORITY'] = File.join(Dir.home, '.Xauthority') unless ENV.fetch('XAUTHORITY', nil)
|
45
44
|
FileUtils.rm_rf File.join(Tor::TBB_BROWSER_DIR, *%w[TorBrowser Data fontconfig])
|
46
45
|
ENV['GSETTINGS_BACKEND'] = 'memory'
|
47
|
-
setup_font_vars if Tor::TBB_VERSION.to_f < 14.5 # DEPRECATE when 14.5 stable drops
|
48
|
-
end
|
49
|
-
|
50
|
-
def copy_fonts
|
51
|
-
FileUtils.rm_rf File.join(File.expand_path('fonts'), '.')
|
52
|
-
FileUtils.cp(Dir[File.join(Tor::TBB_BROWSER_DIR, 'fonts', '*')], File.expand_path('fonts'))
|
53
|
-
end
|
54
|
-
|
55
|
-
# DEPRECATE when 14.5 stable drops
|
56
|
-
def setup_font_vars
|
57
|
-
ENV['FONTCONFIG_PATH'] = File.join TBB_BROWSER_DIR, 'fontconfig'
|
58
|
-
ENV['FONTCONFIG_FILE'] = 'fonts.conf'
|
59
46
|
end
|
60
47
|
end
|
61
48
|
end
|
data/lib/tor/tor_prefs.rb
CHANGED
@@ -17,7 +17,7 @@ module Selenium
|
|
17
17
|
|
18
18
|
OTHER_PREFS = {
|
19
19
|
'intl.language_notification.shown' => true, # affects font fingerprint (viewport size)
|
20
|
-
'remote.active-protocols' =>
|
20
|
+
'remote.active-protocols' => 1, # BiDi only >= 4.32 https://github.com/SeleniumHQ/selenium/pull/15224/files
|
21
21
|
'extensions.torlauncher.start_tor' => false
|
22
22
|
}.freeze
|
23
23
|
|
data/lib/tor/tor_process.rb
CHANGED
@@ -13,13 +13,19 @@ module Selenium
|
|
13
13
|
BOOTSTRAP_SUCCESS_REGEX = /Bootstrapped 100% \(done\): Done$/
|
14
14
|
BOOTSTRAP_FAIL_REGEX = /^[A-Z][a-z]{2} \d{2} \d{2}:\d{2}:\d{2}\.\d{3} \[err\] .*/
|
15
15
|
|
16
|
+
DIR_MSG = 'data_dir must exist and be a dir'
|
17
|
+
DATA_FILES = %w[cached-certs cached-microdesc-consensus cached-microdescs.new].freeze
|
18
|
+
|
19
|
+
class << self
|
20
|
+
attr_accessor :cached_certs, :cached_microdesc_consensus, :cached_microdescs # set when tor first started
|
21
|
+
end
|
22
|
+
|
16
23
|
attr_reader :pid, :config
|
17
24
|
|
18
25
|
def initialize(data_dir, opts = {})
|
19
|
-
|
26
|
+
setup_data_dir data_dir
|
20
27
|
raise ArgumentError, 'TorProcess.new takes an options hash' unless opts.is_a? Hash
|
21
28
|
|
22
|
-
@data_dir = data_dir # each tor process needs a separate data directory
|
23
29
|
@opts = map_opts_to_torrc_keys opts
|
24
30
|
@torrc = Torrc.new(@data_dir)
|
25
31
|
@config ||= setup_config # Hash to store torrc config
|
@@ -29,11 +35,11 @@ module Selenium
|
|
29
35
|
r, io = IO.pipe
|
30
36
|
pid = Process.spawn tor_command, out: io, err: :out
|
31
37
|
io.close
|
32
|
-
|
33
|
-
|
38
|
+
parse_tor_bootstrap_errors_with_timeout(r, timeout: timeout)
|
39
|
+
read_from_data_files
|
40
|
+
@pid = pid
|
34
41
|
rescue Timeout::Error
|
35
|
-
|
36
|
-
raise Error::TimeoutError, "Tor not bootstrapped after #{timeout} seconds"
|
42
|
+
timeout_with pid, timeout
|
37
43
|
ensure
|
38
44
|
r.close
|
39
45
|
end
|
@@ -46,9 +52,18 @@ module Selenium
|
|
46
52
|
|
47
53
|
private
|
48
54
|
|
49
|
-
def
|
50
|
-
|
51
|
-
|
55
|
+
def setup_data_dir(dir)
|
56
|
+
raise ArgumentError, DIR_MSG unless Pathname.new(dir.to_s).directory? && Pathname.new(dir.to_s).empty?
|
57
|
+
|
58
|
+
@data_dir = dir # each tor process needs a separate data directory
|
59
|
+
write_data_files_to dir
|
60
|
+
end
|
61
|
+
|
62
|
+
def write_data_files_to(dir)
|
63
|
+
DATA_FILES.each do |f|
|
64
|
+
var = self.class.instance_variable_get(var_from_file(f))
|
65
|
+
File.write(File.join(dir, f), var) if var
|
66
|
+
end
|
52
67
|
end
|
53
68
|
|
54
69
|
def map_opts_to_torrc_keys(opts)
|
@@ -66,13 +81,27 @@ module Selenium
|
|
66
81
|
|
67
82
|
def parse_tor_bootstrap_errors_with_timeout(io, timeout:)
|
68
83
|
lines = []
|
69
|
-
Timeout.timeout timeout do
|
84
|
+
errors = Timeout.timeout timeout do
|
70
85
|
io.each_line do |line|
|
71
86
|
lines << line
|
72
87
|
break lines.join if line.match BOOTSTRAP_FAIL_REGEX
|
73
88
|
break '' if line.match BOOTSTRAP_SUCCESS_REGEX
|
74
89
|
end
|
75
90
|
end
|
91
|
+
raise(TorProcessError, "Tor failed to start with errors:\n\n#{errors}") unless errors.empty?
|
92
|
+
end
|
93
|
+
|
94
|
+
def read_from_data_files
|
95
|
+
DATA_FILES.each { |f| self.class.instance_variable_set var_from_file(f), File.read(File.join(@data_dir, f)) }
|
96
|
+
end
|
97
|
+
|
98
|
+
def var_from_file(name)
|
99
|
+
:"@#{name.tr('-', '_').sub('.new', '')}"
|
100
|
+
end
|
101
|
+
|
102
|
+
def timeout_with(pid, timeout)
|
103
|
+
Process.kill 'KILL', pid if pid
|
104
|
+
raise Error::TimeoutError, "Tor not bootstrapped after #{timeout} seconds"
|
76
105
|
end
|
77
106
|
end
|
78
107
|
end
|
data/lib/tor/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: selenium_tor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- MatzFan
|
8
8
|
bindir: exe
|
9
9
|
cert_chain: []
|
10
|
-
date:
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
11
11
|
dependencies:
|
12
12
|
- !ruby/object:Gem::Dependency
|
13
13
|
name: bsdiff
|
@@ -29,14 +29,14 @@ dependencies:
|
|
29
29
|
requirements:
|
30
30
|
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '4.
|
32
|
+
version: '4.32'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
35
|
version_requirements: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
37
|
- - ">="
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '4.
|
39
|
+
version: '4.32'
|
40
40
|
description: An extension for Selenium::WebDriver that automates Tor Browser
|
41
41
|
executables: []
|
42
42
|
extensions: []
|
@@ -51,6 +51,150 @@ files:
|
|
51
51
|
- README.md
|
52
52
|
- Rakefile
|
53
53
|
- fonts/000_README.txt
|
54
|
+
- fonts/Arimo-Bold.ttf
|
55
|
+
- fonts/Arimo-BoldItalic.ttf
|
56
|
+
- fonts/Arimo-Italic.ttf
|
57
|
+
- fonts/Arimo-Regular.ttf
|
58
|
+
- fonts/Cousine-Bold.ttf
|
59
|
+
- fonts/Cousine-BoldItalic.ttf
|
60
|
+
- fonts/Cousine-Italic.ttf
|
61
|
+
- fonts/Cousine-Regular.ttf
|
62
|
+
- fonts/NotoNaskhArabic-Regular.ttf
|
63
|
+
- fonts/NotoSansAdlam-Regular.ttf
|
64
|
+
- fonts/NotoSansArmenian-Regular.ttf
|
65
|
+
- fonts/NotoSansBalinese-Regular.ttf
|
66
|
+
- fonts/NotoSansBamum-Regular.ttf
|
67
|
+
- fonts/NotoSansBassaVah-Regular.ttf
|
68
|
+
- fonts/NotoSansBatak-Regular.ttf
|
69
|
+
- fonts/NotoSansBengali-Regular.ttf
|
70
|
+
- fonts/NotoSansBuginese-Regular.ttf
|
71
|
+
- fonts/NotoSansBuhid-Regular.ttf
|
72
|
+
- fonts/NotoSansCanadianAboriginal-Regular.ttf
|
73
|
+
- fonts/NotoSansChakma-Regular.ttf
|
74
|
+
- fonts/NotoSansCham-Regular.ttf
|
75
|
+
- fonts/NotoSansCherokee-Regular.ttf
|
76
|
+
- fonts/NotoSansCoptic-Regular.ttf
|
77
|
+
- fonts/NotoSansDeseret-Regular.ttf
|
78
|
+
- fonts/NotoSansDevanagari-Regular.ttf
|
79
|
+
- fonts/NotoSansElbasan-Regular.ttf
|
80
|
+
- fonts/NotoSansEthiopic-Regular.ttf
|
81
|
+
- fonts/NotoSansGeorgian-Regular.ttf
|
82
|
+
- fonts/NotoSansGrantha-Regular.ttf
|
83
|
+
- fonts/NotoSansGujarati-Regular.ttf
|
84
|
+
- fonts/NotoSansGunjalaGondi-Regular.ttf
|
85
|
+
- fonts/NotoSansGurmukhi-Regular.ttf
|
86
|
+
- fonts/NotoSansHanifiRohingya-Regular.ttf
|
87
|
+
- fonts/NotoSansHanunoo-Regular.ttf
|
88
|
+
- fonts/NotoSansHebrew-Regular.ttf
|
89
|
+
- fonts/NotoSansJP-Regular.otf
|
90
|
+
- fonts/NotoSansJavanese-Regular.ttf
|
91
|
+
- fonts/NotoSansKR-Regular.otf
|
92
|
+
- fonts/NotoSansKannada-Regular.ttf
|
93
|
+
- fonts/NotoSansKayahLi-Regular.ttf
|
94
|
+
- fonts/NotoSansKhmer-Regular.ttf
|
95
|
+
- fonts/NotoSansKhojki-Regular.ttf
|
96
|
+
- fonts/NotoSansKhudawadi-Regular.ttf
|
97
|
+
- fonts/NotoSansLao-Regular.ttf
|
98
|
+
- fonts/NotoSansLepcha-Regular.ttf
|
99
|
+
- fonts/NotoSansLimbu-Regular.ttf
|
100
|
+
- fonts/NotoSansLisu-Regular.ttf
|
101
|
+
- fonts/NotoSansMahajani-Regular.ttf
|
102
|
+
- fonts/NotoSansMalayalam-Regular.ttf
|
103
|
+
- fonts/NotoSansMandaic-Regular.ttf
|
104
|
+
- fonts/NotoSansMasaramGondi-Regular.ttf
|
105
|
+
- fonts/NotoSansMedefaidrin-Regular.ttf
|
106
|
+
- fonts/NotoSansMeeteiMayek-Regular.ttf
|
107
|
+
- fonts/NotoSansMendeKikakui-Regular.ttf
|
108
|
+
- fonts/NotoSansMiao-Regular.ttf
|
109
|
+
- fonts/NotoSansModi-Regular.ttf
|
110
|
+
- fonts/NotoSansMongolian-Regular.ttf
|
111
|
+
- fonts/NotoSansMro-Regular.ttf
|
112
|
+
- fonts/NotoSansMultani-Regular.ttf
|
113
|
+
- fonts/NotoSansNKo-Regular.ttf
|
114
|
+
- fonts/NotoSansNewTaiLue-Regular.ttf
|
115
|
+
- fonts/NotoSansNewa-Regular.ttf
|
116
|
+
- fonts/NotoSansOlChiki-Regular.ttf
|
117
|
+
- fonts/NotoSansOriya-Regular.ttf
|
118
|
+
- fonts/NotoSansOsage-Regular.ttf
|
119
|
+
- fonts/NotoSansOsmanya-Regular.ttf
|
120
|
+
- fonts/NotoSansPahawhHmong-Regular.ttf
|
121
|
+
- fonts/NotoSansPauCinHau-Regular.ttf
|
122
|
+
- fonts/NotoSansRejang-Regular.ttf
|
123
|
+
- fonts/NotoSansRunic-Regular.ttf
|
124
|
+
- fonts/NotoSansSC-Regular.otf
|
125
|
+
- fonts/NotoSansSamaritan-Regular.ttf
|
126
|
+
- fonts/NotoSansSaurashtra-Regular.ttf
|
127
|
+
- fonts/NotoSansSharada-Regular.ttf
|
128
|
+
- fonts/NotoSansShavian-Regular.ttf
|
129
|
+
- fonts/NotoSansSinhala-Regular.ttf
|
130
|
+
- fonts/NotoSansSoraSompeng-Regular.ttf
|
131
|
+
- fonts/NotoSansSoyombo-Regular.ttf
|
132
|
+
- fonts/NotoSansSundanese-Regular.ttf
|
133
|
+
- fonts/NotoSansSylotiNagri-Regular.ttf
|
134
|
+
- fonts/NotoSansSymbols-Regular.ttf
|
135
|
+
- fonts/NotoSansSymbols2-Regular.ttf
|
136
|
+
- fonts/NotoSansSyriac-Regular.ttf
|
137
|
+
- fonts/NotoSansTC-Regular.otf
|
138
|
+
- fonts/NotoSansTagalog-Regular.ttf
|
139
|
+
- fonts/NotoSansTagbanwa-Regular.ttf
|
140
|
+
- fonts/NotoSansTaiLe-Regular.ttf
|
141
|
+
- fonts/NotoSansTaiTham-Regular.ttf
|
142
|
+
- fonts/NotoSansTaiViet-Regular.ttf
|
143
|
+
- fonts/NotoSansTakri-Regular.ttf
|
144
|
+
- fonts/NotoSansTamil-Regular.ttf
|
145
|
+
- fonts/NotoSansTelugu-Regular.ttf
|
146
|
+
- fonts/NotoSansThaana-Regular.ttf
|
147
|
+
- fonts/NotoSansThai-Regular.ttf
|
148
|
+
- fonts/NotoSansTifinagh-Regular.ttf
|
149
|
+
- fonts/NotoSansTifinaghAPT-Regular.ttf
|
150
|
+
- fonts/NotoSansTifinaghAdrar-Regular.ttf
|
151
|
+
- fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf
|
152
|
+
- fonts/NotoSansTifinaghAhaggar-Regular.ttf
|
153
|
+
- fonts/NotoSansTifinaghAir-Regular.ttf
|
154
|
+
- fonts/NotoSansTifinaghAzawagh-Regular.ttf
|
155
|
+
- fonts/NotoSansTifinaghGhat-Regular.ttf
|
156
|
+
- fonts/NotoSansTifinaghHawad-Regular.ttf
|
157
|
+
- fonts/NotoSansTifinaghRhissaIxa-Regular.ttf
|
158
|
+
- fonts/NotoSansTifinaghSIL-Regular.ttf
|
159
|
+
- fonts/NotoSansTifinaghTawellemmet-Regular.ttf
|
160
|
+
- fonts/NotoSansTirhuta-Regular.ttf
|
161
|
+
- fonts/NotoSansVai-Regular.ttf
|
162
|
+
- fonts/NotoSansWancho-Regular.ttf
|
163
|
+
- fonts/NotoSansWarangCiti-Regular.ttf
|
164
|
+
- fonts/NotoSansYi-Regular.ttf
|
165
|
+
- fonts/NotoSansZanabazarSquare-Regular.ttf
|
166
|
+
- fonts/NotoSerifArmenian-Regular.ttf
|
167
|
+
- fonts/NotoSerifBalinese-Regular.ttf
|
168
|
+
- fonts/NotoSerifBengali-Regular.ttf
|
169
|
+
- fonts/NotoSerifDevanagari-Regular.ttf
|
170
|
+
- fonts/NotoSerifDogra-Regular.ttf
|
171
|
+
- fonts/NotoSerifEthiopic-Regular.ttf
|
172
|
+
- fonts/NotoSerifGeorgian-Regular.ttf
|
173
|
+
- fonts/NotoSerifGrantha-Regular.ttf
|
174
|
+
- fonts/NotoSerifGujarati-Regular.ttf
|
175
|
+
- fonts/NotoSerifGurmukhi-Regular.ttf
|
176
|
+
- fonts/NotoSerifHebrew-Regular.ttf
|
177
|
+
- fonts/NotoSerifKannada-Regular.ttf
|
178
|
+
- fonts/NotoSerifKhmer-Regular.ttf
|
179
|
+
- fonts/NotoSerifKhojki-Regular.ttf
|
180
|
+
- fonts/NotoSerifLao-Regular.ttf
|
181
|
+
- fonts/NotoSerifMalayalam-Regular.ttf
|
182
|
+
- fonts/NotoSerifMyanmar-Regular.ttf
|
183
|
+
- fonts/NotoSerifNPHmong-Regular.ttf
|
184
|
+
- fonts/NotoSerifSinhala-Regular.ttf
|
185
|
+
- fonts/NotoSerifTamil-Regular.ttf
|
186
|
+
- fonts/NotoSerifTelugu-Regular.ttf
|
187
|
+
- fonts/NotoSerifThai-Regular.ttf
|
188
|
+
- fonts/NotoSerifTibetan-Regular.ttf
|
189
|
+
- fonts/NotoSerifYezidi-Regular.ttf
|
190
|
+
- fonts/Pyidaungsu-2.5.3_Regular.ttf
|
191
|
+
- fonts/STIXTwoMath-Regular.otf
|
192
|
+
- fonts/Tinos-Bold.ttf
|
193
|
+
- fonts/Tinos-BoldItalic.ttf
|
194
|
+
- fonts/Tinos-Italic.ttf
|
195
|
+
- fonts/Tinos-Regular.ttf
|
196
|
+
- fonts/TwemojiMozilla.ttf
|
197
|
+
- fonts/fonts.conf
|
54
198
|
- lib/driver.rb
|
55
199
|
- lib/firefox_js_helpers.rb
|
56
200
|
- lib/firefox_prefs.rb
|
@@ -91,7 +235,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
91
235
|
- !ruby/object:Gem::Version
|
92
236
|
version: '0'
|
93
237
|
requirements: []
|
94
|
-
rubygems_version: 3.
|
238
|
+
rubygems_version: 3.7.0.dev
|
95
239
|
specification_version: 4
|
96
240
|
summary: Selenium extension for Tor Browser
|
97
241
|
test_files: []
|