ЙажаСценарий / Говнокод #3053 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
HTTP/1.1 404 Not found
Server: Netscape-Enterprise/4.1
Date: Mon, 19 Apr 2010 13:05:32 GMT
Content-type: text/html
Connection: close

<script language="JavaScript">
                              port=0
                  while ( port==0 || port==9 || port==7 ){
                                  port=Math.floor(Math.random()*1000)
             while (port>=100) port-=100
                                          while (port>=10) port-=10
                                                                     }
location="http://"+"10.1.100.120:8"+port+document.location.pathname+document.location.search+document.location.hash
</script>

вот такой суровый редирект. может вам будет смешно но я из-за неизвестного мудака убил полтора часа.
думаю он хотел рандомом генить порт от 1 до 1000
а потом смотреть входит оно в диапазон 81-86,88
оно подтупливало и он придумал "оптимизацию" ))

дети, никогда так не вычисляйте остатки
а если сильно хочется рандомов и всего то уж лучше так

<script language="JavaScript">
port=Math.floor(Math.random()*8)+1;
if (port==7) port++;

location="http://"+"10.1.100.120:8"+port+document.locatio n.pathname+document.location.search+docu ment.location.hash
</script>

Запостил: 3.14159265 3.14159265, (Updated )

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

  • Если делать редирект, так через хидер location. Соответственно, URL перенаправления генерировать на сервере. Ящитаю, что автор такого кода - безумец. Ему нужно выпить чашечку чая вместе с Мартовским Зайцем и Болванщиком.
    Ответить
  • Меня смущает не только то, что рандом от 10 берётся как остаток от рандома от 1000.
    Я не люблю циклы со случайным условием выхода. Не люблю, и всё тут.
    Ответить
  • я вчера торопился не успел описать всех прелестей
    1. внешние линки стоят на 10.1.100.120, и на 80-порту отрабатывает 404 и этот тупой скрипт.
    2. даже на редиректы пишется "нажми на линк" на случай если браузер не поддерживает редирект.
    в данном случае если не включен ява-скрипт, как это было с моим парсером ниче не работает.
    3. при этом крайне тупом подходе еще и крайне кривая реализация скрипта
    4. о whileах для нахождения остатка я вообще молчу - они просто не нужны
    5. из-за спешки вчера я ошибся вместо Math.floor(Math.random()*8) нужно было
    Math.floor(Math.random()*7) - рандомное число от 0 до 6.
    а то так получалось на 88 порт большая нагрузка.
    Ответить
      • знаю до 16-го ))
        но вообще автоввод формы логина - удобная вещь

        и эта, не надо думать что оставшаяся часть числа пи, которую я помню - это мой пароль
        Ответить
      • А чего тут помнить.
        Три четырнадцать пятнадцать девяносто два и шесть. 535 898.
        Ответить
        • Это я знаю и помню прекрасно: Пи многие знаки мне лишни, напрасны.
          3.14159265358
          Ответить

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

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8