TightURL

TightURL Git Source Tree

Root/bad-behavior/bad-behavior/screener.inc.php

1<?php if (!defined('BB2_CWD')) die("I said no cheating!");
2
3// Bad Behavior browser screener
4
5function bb2_screener_cookie($settings, $package, $cookie_name, $cookie_value)
6{
7    // FIXME: Set the real cookie
8    setcookie($cookie_name, $cookie_value, 0, bb2_relative_path());
9}
10
11function bb2_screener_javascript($settings, $package, $cookie_name, $cookie_value)
12{
13    global $bb2_javascript;
14
15    // FIXME: do something
16    $bb2_javascript = "<script type=\"text/javascript\">
17<!--
18function bb2_addLoadEvent(func) {
19    var oldonload = window.onload;
20    if (typeof window.onload != 'function') {
21        window.onload = func;
22    } else {
23        window.onload = function() {
24            oldonload();
25            func();
26        }
27    }
28}
29
30bb2_addLoadEvent(function() {
31    for ( i=0; i < document.forms.length; i++ ) {
32        if (document.forms[i].method == 'post') {
33            var myElement = document.createElement('input');
34            myElement.setAttribute('type', 'hidden');
35            myElement.name = '$cookie_name';
36            myElement.value = '$cookie_value';
37            document.forms[i].appendChild(myElement);
38        }
39    }
40});
41// --></script>
42        ";
43}
44
45function bb2_screener($settings, $package)
46{
47    $cookie_name = BB2_COOKIE;
48
49    // Set up a simple cookie
50    $screener = array(time(), $package['ip']);
51    if (isset($package['headers_mixed']['X-Forwarded-For'])) {
52        array_push($screener, $package['headers_mixed']['X-Forwarded-For']);
53    }
54    if (isset($package['headers_mixed']['Client-Ip'])) {
55        array_push($screener, $package['headers_mixed']['Client-Ip']);
56    }
57
58    $cookie_value = implode(" ", $screener);
59
60    bb2_screener_cookie($settings, $package, BB2_COOKIE, $cookie_value);
61    bb2_screener_javascript($settings, $package, BB2_COOKIE, $cookie_value);
62}
63?>
64

Archive Download this file

Branches