Dziś jest piątek, 25 lipca 2008 roku (z kalendarza...)

Flyspray zastrajkował

Icon

14.04.2008, 20:52

Projekty

Komentarze (9)

Powrót

Flyspray to chyba najlepszy bugtracker napisany w PHP. Używałem go od dawna i zawsze spełniał swoje zadanie, jednak najnowsza wersja zachowywała się... dziwnie. Nie było żadnych przeciwwskazań, by nie użyć tego jako oficjalnego błędospisu w Invenzzii, wobec czego zainstalowany został tam na serwerze. Bardzo szybko zaczęły się jaja polegające na problemach z dostępem, chociaż początkowo myślałem, że to coś Dreamhost sknocił.

Rzecz wyglądała banalnie: gdy wpisywałem adres bez "www", nic się nie ładowało. Dodając "www", czasem już dało się wejść i nawet popracować. Oczywiście nie mogło tak być dłużej, tym bardziej że się sami użytkownicy zaczęli dopytywać, co jest grane. Sprawdziłem dokładnie serwer wzdłuż i wszerz - wszystko po staremu. Nie było absolutnie nic, poza nazwą, co odróżniałoby tę jedną subdomenę od innych, działających. eXtreme wtedy zanurkował w kod, korzystając z informacji użytkowników z forum. Okazało się, że:

  • Najnowsza wersja ustawia kupę ciasteczek o nazwach pokroju NoMicrosoft, UseLinux, GetFirefox itd. :). Analiza wykazała, że one same nie były przyczyną kłopotów (i całe szczęscie, bo za taką propagadnę w publicznie dostępnym produkcie, to ja dziękuję. Jeśli już robić takie blokady, to przynajmniej tak, by nie blokowały wychwalanych produktów, tj. Linuksa, Firefoksa itd.)
  • Flyspray za pomocą ciastka zapisuje również ID aktualnie przeglądanego projektu.

Fragmenty kodu wyglądają następująco:

 // jaki projekt wybrano
 if (($project_id = Cookie::val('flyspray_project')) == '') {
 $project_id = $fs->prefs['default_project'];
 }
 $project_id = Req::val('project', Req::val('project_id', $project_id));
 // propaganda
$names = array( 'GetFirefox',
 'UseLinux',
 'NoMicrosoft',
 'ThinkB4Replying',
 'FreeSoftware',
 'ReadTheFAQ',
 'RTFM',
 'VisitAU',
 'SubliminalAdvertising',
);
 
foreach ($names as $val)
{
  session_name($val);
  session_start();
 
  if (isset($_SESSION['SESSNAME']))
  {
    $sessname = $_SESSION['SESSNAME'];
    break;
  }
 
  $_SESSION = array();
  session_destroy();
  setcookie(session_name(), '', time()-60, '/');
}
 
if (empty($sessname))
{
  $rand_key = array_rand($names);
  $sessname = $names[$rand_key];
  session_name($sessname);
  session_start();
  $_SESSION['SESSNAME'] = $sessname;
}

Całość przypomina wymyślny system zabezpieczenia sesji, tyle... że niedziałający. Parę losowych poprawek i wszystko się odblokowało, lecz najgorsze jest to, że nie wiemy, DLACZEGO. Pozostaje ponadto pytanie, czy w ten sposób nie wyłączyliśmy zabezpieczeń przed kradzieżą sesji, co w przyszłości mogłoby być dość przykre w skutkach. Jeżeli tak właśnie jest, konieczne jest napisanie własnego systemu zabezpieczeń.

Flyspray spłatał nam niemiłego psikusa. Problemu nie usuwa nawet nowe wydanie, a na forum projektu ani widu, ani słychu o podobnych zachowaniach. Cóż, wychodząc z założenia, że nie ma dwóch identycznych komputerów, mogliśmy akurat trafić na ten super-felerny przypadek.

Powrót

Komentarze

Napisał Nowaker w poniedziałek, 14 kwietnia 2008 o 21:07

Coś Ci się Zyx popsuło we wpisie, bo tekst wyłazi jakoś poza...

Napisał scanner w poniedziałek, 14 kwietnia 2008 o 22:29

Się Ci wziął i zepsuł wpis - popraw, bo paskudnie wygląda taki rozjechany notek :)

Napisał mitrandir77 w poniedziałek, 14 kwietnia 2008 o 22:39

przesadzili....
Czy tylko u mnie czy wszystkim rosypuje się tutaj uklad strony?

Napisał Gamec w wtorek, 15 kwietnia 2008 o 07:03

Rozsypał się layout trochę :) (przynajmniej pod FF).

Napisał anonim w wtorek, 15 kwietnia 2008 o 10:01

jakiś tak spieprzyles i sie caly layout bloa pojechał.. Fx 3 beta 5 / Windows Vista jak coś :)

Napisał Cypherq w wtorek, 15 kwietnia 2008 o 11:24

No z tym newsem też nie wszystko chyba jest w porządku ;)

Napisał kapitan_hak w wtorek, 15 kwietnia 2008 o 12:26

Ja jestem zdecydowanym zwolennikiem Linuksa i nie rozumiem dlaczego w FlySprayu chcieli blokować Winde. Potem się wszyscy dziwią że nikt nie lubi Linuksa. Brak słów.

Napisał nickers w wtorek, 15 kwietnia 2008 o 12:29

Można prosić o porawienie formatowania? :) Z chęcią bym się przyjrzał kodowi, ale jak narazie to jest nieczytelny i wygląda na uszkodzony.

Napisał Zyx w wtorek, 15 kwietnia 2008 o 14:13

Poprawione - fatum jakieś. Najpierw Flyspray, później po raz pierwszy w historii aktualizacja Arch Linuksa rozwaliła prawie system, a teraz jeszcze się okazało, że się coś w parserze składni Zyxist.com pochrzaniło. Kurde, muszę przejrzeć historyczne wpisy, bo tam parę ikonek zmieniałem i jak też się wśród nich trafił wpis z kodem, to będzie więcej takich kaszanek.

Strona 1 z 1 :: 1

Skomentuj

NickInformacja
E-mailTylko do użytku wewnętrznego.
WWWNie zapomnij o http://
LayoutNapisz tu, czy widzisz dzienny czy nocny layout.
WpisFormatowanie wiki
Internauto, pamiętaj! Wolność to nie samowola - dbaj o kulturę wypowiedzi oraz dyskusji w sieci.

Na Zyxist.com panuje swoboda wyrażania opinii oraz krytyki pod dowolnym adresem. Jedyny warunek: musi być ona kulturalna i rzeczowa. Na chamstwo, prostactwo lub jawne obrażanie kogokolwiek nie ma tu miejsca i takie komentarze są bardzo szybko usuwane. Jeśli zamierzasz polemizować z treścią wpisu, wpierw uważnie ją przeczytaj.

© Tomasz "Zyx" Jędrzejewski 2005 - 2008 | Wykonanych zapytań: 2 | Serwer wirtualny zapewnia