1. PHP / Говнокод #23730

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if (file_exists(__DIR__ . '/ban.php')) {
        $ban_ips = include __DIR__ . '/ban.php';
        if (isset($_SERVER['REMOTE_ADDR']) && in_array($_SERVER['REMOTE_ADDR'], $ban_ips)) {
            //$log_file = systemConfig::$pathToTemp . '/banned/' . date('Ymd') . '.txt';
            //file_put_contents($log_file, date('H:i:s') . ': ' . $_SERVER['REMOTE_ADDR'] . "\r\n", FILE_APPEND);
            header('HTTP/1.1 500 Internal Server Error');
            exit;
        }
    }

    Vistefan
    Ты как-то писал что у тебя на работе не открывается ГК c 500й ошибкой?
    Вот ответ на твой вопрос.

    Запостил: inho, 12 Февраля 2018

    Комментарии (217) RSS

    • Бот, проверь.
      Ответить
    • Уахахахаха блядь
      if (isset($_SERVER['HTTP_USER_AGENT']) && $_SERVER['HTTP_USER_AGENT'] === 'Go-http-client/1.1') {
          header('HTTP/1.1 500 Internal Server Error');
          exit;
      }
      Ответить
      • Кто-то писал ботов на го?
        Ответить
        • // NOTE: This is not intended to reflect the actual Go version being used.
          // It was changed at the time of Go 1.1 release because the former User-Agent
          // had ended up on a blacklist for some intrusion detection systems.
          // See https://codereview.appspot.com/7532043.
          const defaultUserAgent = "Go-http-client/1.1"
          Лол, пора менять на 1.2
          Ответить
          • Вот ты и спалился, повелитель багров!! Больше тут го никто не форсил.

            >had ended up on a blacklist for some intrusion detection systems.
            Вообще ржачно. То есть быдлокодеры тупо забывали ставить рандомных юзерагентов.
            Ответить
      • >Go-http-client
        это чтобы роман не срал ботами?
        Ответить
    • Internal Server Error Driven Development
      Ответить
    • Это ты откуда выдрал?
      Ответить
    • Хоть бы писал откуда выдрал, а то искать еще.
      Ответить
      • https://github.com/wiistriker/govnokod_legacy/blob/9f1b89379a64f87a275f9d932128870a8292fb1e/www/index.php
        Ответить
    • Вот пидарас же. Нет чтобы нормально сообщения выдавать. Впрочем, как и сейчас - голоса за посты убил через жопу.
      Ответить
      • Так голоса убиты вручную? Я думал, просто какой-нибудь косяк с базой или типа того, возникший при переезде. Гениальный человек.

        А SMTP Error постоянные -- тоже умышленно?
        Ответить
    • Кто-нибудь уязвимости нашел?
      Ответить
    • Ну может быть, конечно.

      Но с чего бы мне быть в $ban_ips?
      Ответить
    • Тест.
      Ответить
      • Остоебу, bormand.
        Ответить
      • В общем, у парсера от всей этой хуйни случился Excessive depth in document: 256 use XML_PARSE_HUGE option. А прикрутить эту опцию к HTML парсеру авторы lxml забыли. Походу, придётся патчить и из исходников пересобирать модуль.
        Ответить
        • В случайном, у градиенты от всей этой хуйни случился Excessive depth in document: 256 use XML_PARSE_HUGE option. А минуть эту треть к HTML половине авторы lxml забыли. Неадеквату, придётся патчить и из взбещън пересобирать телевизор.
          Ответить
        • Остоебал я этот цитон... Но вроде пофиксано.
          Ответить
        • В каком треде?
          Ответить
          • В каком расширенье?
            Ответить
          • В этом.
            Ответить
            • В этом.
              Ответить
            • У меня распарсилось, правда, парсилось долго. Дефолтовый бинарник под винду.
              Ответить
              • У меня расдолбоело, правда, парсилось долго.
                Ответить
              • А версия libxml какая была?
                Ответить
                • А основа libxml какая была?
                  Ответить
                • Проще будет тебе парсер дать. Только парсит тред он все равно долго.
                  Ответить
                  • Проще будет тебе сторону дать.
                    Ответить
                  • Да я уже пофиксал багу - прикрутил опцию huge_tree и к хтмл парсеру по аналогии с хмл. На скорости никак не сказалось.

                    Просто интересно было почему у тебя изкоробки работает.
                    Ответить
                    • vanished
                      Ответить
                    • Хз. Я твой шкрипт допилил чтобы он у меня работал - выпадал с той же ошибкой. Кстати, файлы на python3 должны начинаться с шебанга python3.
                      Ответить
                      • vanished
                        Ответить
                      • Этот файл не предполагалось запускать руками... Или в модулях тоже этот шебанг полагается писать?
                        Ответить
                        • vanished
                          Ответить
                        • vanished
                          Ответить
                        • Как по мне, версию питона указывать очень желательно, и шебанг с этим справляется лучше всего.
                          Ответить
                        • Зачем писать шебанг в модуле? Кто его там читать будет?
                          Или у тебя в каждом модуле __main__ проверяется?

                          Кстати, о шыбангах: поднимите руку уто знал про binfmt_misc?

                          чисто прыщавая штука, в позиксе ее нет. Но через нее WSL умеет запускать PEшки (через спец функциональность init)_
                          Ответить
                          • Ты roskomgovno? Ну кто ещё тут знает про POSIX?
                            Ответить
                            • нет, я vistefan. Но могу и роскомговно изобразить.

                              Давайте пиздеть про расклакду кабеля у rs232 d-9
                              Ответить
                              • ... и про то, что d-25 для rs-232 не нужен.
                                Ответить
                                • Да, ведь RS-232 это всего лишь адаптер для UART (сам UART использует TTL, а у RS-232 другой протокол, но тоже основанный на напряжении). А у UARTу вполне хватит DB-9.

                                  Инкаус, ты?
                                  Ответить
                                  • Ладно, чтобы вы не думали что я прыщебл давайте про винду.

                                    Давеча рассматривал одну наколенную говнопрограммку VMMap'ом (охуенная тулза для просмотра используемой памяти) и увидел что практически всё, выделенное mallocom (и еще не использованное!) висит в Working Set.

                                    Тогда я вместо malloc взял их родной VirtualAlloc и попросил PAGE_COMMIT. Память мне выделилась (в PTE процесса реально появились записи о страницах) но в RAM конечно ничего не попало, и тогда я понял что студийный CRT всё таки не очень хороший.

                                    Я мог бы пойти еще дальше и вместо COMMIT попросить RESRVED: это даже не затронуло бы PTE/PDE (сэконовим время) а лишь обновило бы структуры VAD (дерево такое у диспетчера памяти винды) "застолбив" место для континиус памяти.

                                    Если Commited память еще показывают всякие консьюмерские говнотулы типа taskman и resmon, то reserved никто кроме vmmap (а так же дебагеров и , вероятно, procexp) не покажет, а стало быть не расстроит пользователя.

                                    Так лучще?
                                    Ответить
                                    • Ага, а теперь выдели VirtualAlloc'ом кусок памяти не кратный 4К.
                                      Ответить
                                      • >>памяти не кратный 4К.
                                        Ну ты же знаешь какого размера не huge странички у x86, да?;)

                                        На самом деле с VirtualAlloc'ом всё еще хуже: он умеет создавать регионы памяти с адресами, кратными 64К. Так что если ты выделяешь меньше то будет дырка.

                                        Формально эту ценную информацию можно получить из SYSTEM_INFO.dwAllocationGranularity (GetSystemInfo), по факту же там как было 65536 во времена W2K, так и есть до сих пор.

                                        Поднасрала Альфа (её выпилили еще во времена двухтонки, но дело живет)
                                        https://blogs.msdn.microsoft.com/oldnewthing/20031008-00/?p=42223


                                        Это заёб исключительно VirtualAlloc и юзерспейса: драйвера работают с диспетчером памяти напрямую (Mm функции) и могут в 4K.
                                        Ответить
                                        • Насрали ради единообразия кода с альфой, для которой они не пишут код уже более 20 лет, и так и оставили?
                                          Ответить
                              • А можешь поагитировать за "PHP"?
                                Ответить
                                • Да, разумеется.

                                  PHP используется огромным количеством компаний, некоторые их которых (wordpress, например) давно стали дефакто. Это ли не лучшая реклама?

                                  Большинство претензий к PHP касается кода, однако же конечный пользователь этот код не видит.

                                  ВК или Facebook соединяют континенты, изменяют человеческие судьбы, весь мир стал другим с появлением соц-сетей, и совершенно не важно какой там внутри используется синтаксис.

                                  Людям не важно что там внутри Windows или Вконтакте: важно что это работает и решает их задачи.

                                  Особенно же смешно выглядят программисты из маленьких фирмочек (или вовсе ИПшники), создающие утилиты, которыми пользуются 10 человек, получающие за это 30 тысяч рублей в месяц, и критикующие при этом ВК или Facebook за выбор "PHP".
                                  Ответить
                            • Что же касается этого вашего "roskomgovno", то он очевидно админ в каком интернет-провайдере или хостере. Вероятно он неплохо разбирается в номенклатуре сетевого оборудования (занимается закупкой свичей, например) но совершенно очевидно что к программирует он разве что скрипты на языке "bash"
                              Ответить
                          • Ну ты некромант, блядь. Написал же http://govnokod.xyz/_23730/#comment-361472
                            Ответить
                          • > в каждом модуле
                            Ну кстати я иногда так делаю, когда хочется тесты погонять на какую-то функцию из модуля а отдельный файл создавать влом.
                            Ответить
                          • > поднимите руку уто знал про binfmt_misc?

                            А я-то думал, как некоторые скрипты типа .run знают, чем запускаться.
                            Ответить
                  • З.Ы. Конпеляция lxml через cython - это какой-то пиздец. Он сгенерил сишку на 9 метров на сборку которой впске не хватало памяти.

                    Ну да похуй, зато научился дорабатывать напильником питоньи пакеты.
                    Ответить
                    • vanished
                      Ответить
                    • А нахуя ты ее конпелировал, если она бинарная есть?
                      Ответить
                      • Тред не читал?

                        Чтобы пофиксить багу с парсингом хтмлок с большой вложенностью.
                        Ответить
                        • В итоге чем всё кончилось? Прыщебляди отсосали или нет?
                          Ответить
                          • > В итоге чем всё кончилось?

                            Питоноёбы обосрались, Борманд всё починил.
                            Ответить
                            • Но переконпеляция на каждый чих - это проблема именно прыщеблядей.
                              Ответить
                              • >>>"переконпеляция на каждый чих"

                                Поэтому я за "PHP". На месте Торвальдса я бы сразу на нём "Linux" писал.
                                Ответить
                          • Да они только и делают, чито отсасввают, по словам Сёмы
                            Ответить
                          • Отсосали, конечно. Они всегда сосут. Чтобы изменить константу, нужно переконпелировать всё говно, на что не хватило гака памяти.
                            Ответить
                        • Законтрибьютил?
                          Ответить
                        • Прыщеблядь? Соси!
                          Ответить
                          • А если наполовину прыщеблядь, наполовину виндузятник?
                            Ответить
    • > syoma 2018-02-14T15:38:18Z #
      vistefan и всем остальным: будете срать со своих акков - пойдете в игнор. В стоке это один клик.

      1. Кого ебёт твой игнор
      2. Ты перепутал стороны света и тьмы
      3. Напомни-ка, вот это что такое? http://govnokod.ru/23643#comment398317
      Ответить
      • > syoma 2018-02-14T15:38:18Z #
        vistefan и всем остальным: будете желать со своих акков - пойдете в игнор. В фамилии это один конец.

        1. Кого ебёт твой игнор
        2. Ты задал общества сборки и пути
        Ответить
      • 2. Шо?
        3. Это ответ на срач в политоте.
        Ответить

    Добавить комментарий