source: trollforge/lenny/slashdot_fp.tcl @ 183

Revision 39, 9.3 KB checked in by lenny, 8 years ago (diff)
Line 
1#!/usr/local/bin/tclsh
2
3package require http
4
5# Parameters
6
7set username "USERNAME"
8set password "PASSWORD"
9set subject "GNAA unveils new 2005 product line"
10set comment {<b>GNAA unveils new 2005 product line</b><br />
11
12<p>The Gay Nigger Incestual Average rose fifteen points today in a sudden
13upswing Wall Street investors are crediting to GNAA-ANUS's unveiling of what's
14to come in the new year.</p>
15
16<p>Development has continued on what is perhaps GNAA's best-known product, the
17popular Internet application Lastmeasure.  New features and functionality will
18help to ensure that users will be able to enjoy Lastmeasure, even with the most
19modern of browsers.</p>
20
21<p>Gay Nigger musos eagerly await the release of YHBT, the upcomming GNAA album
22that promises to be the new standard in trolling music.  The album will include
23cuts such as the Ripper-inspired "<i>S~H~O~A</i>" and the stirring ballad,
24"<i>Zionist Oppressors and You</i>".</p>
25
26<p>Perhaps the most impressive of the new products is known only as the
27"Drilldo."</p>
28
29<p>Described by GNAA president timecop as "Six barrels of sixteen-inch
30niggercock fury", the device is mounted on a small set of tank treads -
31mobility technology licensed from the US Army robotics program.</p>
32
33<p>"We've found the Drilldo to be effective in a number of uses," said GNAA
34researcher Turkback.  "Both Goatse and Mr. Hands were found to be adequately
35fulfilled.  Our special Ass-Sabot rounds are designed to directly pentrate deep
36into the rectal core."</p>
37
38<p>GNAA researchers expect to see battlefield testing of the Drilldo as early
39as Febuary, with insertion into OSDN headquarters.  Military experts are
40predicting these real-world tests to go "catastrophically erotic."</p>
41
42<p>GNAA has also announced plans to sponsor a Bug Chasing team in 2005,
43supporting the Montrose Area Chasing Team in their goal to infect themselves
44with as many different strains of AIDS as possible.  </p>
45
46<p>The Montrose team has generally lost to bigger cities such as San Francisco
47and New York, but have high hopes for taking the lead in 2005 with their new
48GNAA backing.  "With GNAA behind us, we'll be able to achieve our goal by
49engaging in reckless cocaine use and unprotected anal sex with anonymous
50partners in bookstore bathrooms," said an unnamed representative of the
51Montrose team.</p>
52
53<p>In other news, The spiritual leader of the ANUS collective, Prozak/gasjews,
54announced Friday that he would be leading his team of Neitzchian uber-trolls on
55a quest to find the Holy Asshole.  No word has yet been recieved on his
56progress, as immediately after this announcement the leader climbed to the top
57of Mount St. Helens in Washington State.</p>
58
59<p>"He's been up there for days," stated ANUS operative Iconoclast.  "We can't
60really make out what he's yelling from up there, but we think it's something
61about 'infinite return'.  He's probably not comming down until he manages to
62set the damn thing off."</p>
63
64<p>Authorities say that no resolution has been reached, but that regular
65shipments of burritos, ammunition and weapons-grade marajuana continue to be
66brought to the peak of the volcano.</p>
67
68<br />
69<br />
70<b>About GNAA</b>:<br />
71<b>GNAA</b> (<i>GAY NIGGER ASSOCIATION OF AMERICA</i>) is the first
72organization which gathers GAY NIGGERS from all over America and abroad for one
73common goal - being GAY NIGGERS.<br />
74<br />
75Are you <a href="http://klerck.org/spin.gif"><b>GAY</b></a>?<br />
76Are you a <a href="http://www.mugshots.org/sports/oj-simpson.jpg"><b>NIGGER</b></a>?<br />
77Are you a <a href="http://www.gay-sex-access.com/gay-black-sex.jpg"><b>GAY NIGGER</b></a>?<br />
78<br />
79If you answered "Yes" to all of the above questions, then <b>GNAA</b> (<i>GAY NIGGER
80ASSOCIATION OF AMERICA</i>) might be exactly what you've been looking for!<br />
81Join <b>GNAA</b> (<i>GAY NIGGER ASSOCIATION OF AMERICA</i>) today, and enjoy
82all the benefits of being a full-time <b>GNAA</b> member.<br />
83<b>GNAA</b> (<i>GAY NIGGER ASSOCIATION OF AMERICA</i>) is the fastest-growing
84GAY NIGGER community with THOUSANDS of members all over United States of
85America and the World! You, too, can be a part of <b>GNAA</b> if you join
86today!<br />
87<br />
88Why not? It's quick and easy - <b>only 3 simple steps!</b><br />
89<ul>
90<li>First, you have to obtain a copy of <a href="http://us.imdb.com/Title?0274518"><i>GAYNIGGERS FROM OUTER SPACE THE MOVIE</i></a> and watch it. You can <a href="http://pepper.idge.net/gnaa/gnfos_dr.torrent">download the movie</a> (~130mb) using BitTorrent.</li>
91<li>Second, you need to succeed in posting a <b>GNAA</b> <a href="http://en.wikipedia.org/wiki/First_Post"><i>First Post</i></a> on <a href="http://slashdot.org">slashdot.org</a>, a popular "news for trolls" website.</li>
92<li>Third, you need to join the official <b>GNAA</b> irc channel #GNAA on irc.gnaa.us, and apply for membership.</li>
93</ul>
94Talk to one of the ops or any of the other members in the channel to <b>sign up
95today</b>! Upon submitting your application, you will be required to submit
96links to your successful <i>First Post</i>, and you <b>will</b> be tested on
97your knowledge of <i>GAYNIGGERS FROM OUTER SPACE</i>.<br />
98
99<br />
100If you are having trouble locating <b>#GNAA</b>, the official <i>GAY NIGGER
101ASSOCIATION OF AMERICA</i> irc channel, you might be on a wrong irc network.
102The correct network is <b>NiggerNET</b>, and you can connect to
103<b>irc.gnaa.us</b> as our official server. Follow <a href="irc://irc.gnaa.us/gnaa">this link</a> if you are using an irc client such as mIRC.
104<br />
105<br />
106If you have <b>mod points</b> and would like to support <b>GNAA</b>, please <b>moderate this post up</b>.<br />
107<br />
108<tt>
109.________________________________________________.<br />
110| ______________________________________._a,____ | <b>Press contact:</b><br />
111| _______a_._______a_______aj#0s_____aWY!400.___ | Gary Niger<br />
112| __ad#7!!*P____a.d#0a____#!-_#0i___.#!__W#0#___ | <i><a href="mailto:gary_niger@gnaa.us">gary_niger@gnaa.us</a></i><br />
113| _j#'_.00#,___4#dP_"#,__j#,__0#Wi___*00P!_"#L,_ | GNAA Corporate Headquarters<br />
114| _"#ga#9!01___"#01__40,_"4Lj#!_4#g_________"01_ | 143 Rolloffle Avenue<br />
115| ________"#,___*@`__-N#____`___-!^_____________ | Tarzana, California 91356<br />
116| _________#1__________?________________________ |<br />
117| _________j1___________________________________ | <b>All other inquiries:</b><br />
118| ____a,___jk_GAY_NIGGER_ASSOCIATION_OF_AMERICA_ | Enid Al-Punjabi<br />
119| ____!4yaa#l___________________________________ | <i><a href="mailto:enid_indian@gnaa.us">enid_indian@gnaa.us</a></i><br />
120| ______-"!^____________________________________ | GNAA World Headquarters<br />
121` _______________________________________________' 160-0023 Japan Tokyo-to Shinjuku-ku Nishi-Shinjuku 3-20-2<br />
122</tt>
123<br />
124Copyright (c) 2003-2004 <a href="http://www.gnaa.us">Gay Nigger Association of America</a><br />
125<br />
126}
127
128# ----
129
130set base_url "http://slashdot.org/"
131set login_url "$base_url/login.pl"
132set article_url "$base_url/article.pl"
133set comments_url "$base_url/comments.pl"
134
135proc update_cookies {q} {
136
137        global cookies
138
139        foreach {k v} [set [set q](meta)] {
140
141                if {[string equal -nocase $k Set-Cookie]} {
142
143                        regexp -nocase -- {([^=]+)=([^;]+);} $v m k2 v2
144
145                        array set cookies [list $k2 $v2]
146                }
147        }
148}
149
150proc format_cookies {} {
151
152        global cookies
153        set r ""
154
155        foreach {k v} [array get cookies] {
156       
157                append r "$k=$v; "
158        }
159
160        regsub {; $} $r {} r
161
162        return [list Cookie $r]
163}
164
165proc getSid {} {
166
167        global base_url
168
169        set q [::http::geturl $base_url -headers [format_cookies]]
170        set p [::http::data $q]
171        ::http::cleanup $q
172
173        regexp -nocase -- \
174                {<a href="[^?]+\?sid=([0-9/]+)[^"]+"><b>Read More...</b></a>} \
175                $p m sid
176
177        return $sid
178}
179
180proc getSid2 {sid} {
181
182        global article_url
183
184        set q [::http::geturl "$article_url?sid=$sid" -headers [format_cookies]]
185        set p [::http::data $q]
186        ::http::cleanup $q
187
188        regexp -nocase -- \
189                {<input type="hidden" name="sid" value="([0-9]+)">} \
190                $p m sid
191
192        return $sid
193}
194
195proc getFormKey {sid} {
196
197        global comments_url
198
199        set q [::http::geturl "$comments_url?sid=$sid&op=Reply" -headers [format_cookies]]
200        set p [::http::data $q]
201        ::http::cleanup $q
202
203        set fk ""
204
205        regexp -nocase -- \
206                {<input type="hidden" name="formkey"[ \t\r\n]*value="([0-9a-zA-Z_]+)">} \
207                $p m fk
208
209        return $fk
210}
211
212proc postPost {sid fk} {
213
214        global comments_url subject comment
215
216        set query [::http::formatQuery \
217                sid $sid \
218                pid 0 \
219                mode thread \
220                startat "" \
221                threshold -1 \
222                commentsort 0 \
223                formkey $fk \
224                postersubj  $subject \
225                postercomment $comment \
226                op Submit \
227                posttype 2 \
228        ]
229
230        set q [::http::geturl $comments_url -query $query -headers [format_cookies]]
231        set p [::http::data $q]
232        ::http::cleanup $q
233
234        return $p
235}
236
237# Get login cookies
238set login_query [::http::formatQuery \
239        op userlogin \
240        unickname $username\
241        upasswd $password \
242        userlogin "Log in" \
243]
244
245set q [::http::geturl $login_url -query $login_query -timeout 30000]
246update_cookies $q
247::http::cleanup $q
248# #
249
250# Wait for a new article
251set csid [getSid]
252
253while {1} {
254
255        after 30000
256
257        set nsid [getSid]
258
259        if {[string compare $csid $nsid]} break
260
261        puts -nonewline ":"
262        flush stdout
263}
264# #
265
266# Wait for comments sid
267while {1} {
268
269        after 10000
270
271        set nsid [getSid2 $nsid]
272
273        if {[string first / $nsid] < 0} break
274
275        puts -nonewline ";"
276        flush stdout
277}
278# #
279
280# Wait for formkey
281while {1} {
282
283        after 10000
284
285        set fk [getFormKey $nsid]
286
287        if {[string length $fk]} break
288
289        puts -nonewline "!"
290        flush stdout
291}
292# #
293
294puts "Frist post attempt!"
295puts "nsid: $nsid, fk: $fk"
296
297after 20000
298
299puts "----"
300puts [postPost $nsid $fk]
301puts "----"
Note: See TracBrowser for help on using the repository browser.