ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Startpagina | Info | Gemeenschap | Ontwikkeling | mijnReactOS | Contacteer Ons

  1. Startpagina
  2. Gemeenschap
  3. Ontwikkeling
  4. mijnReactOS

  1. Overzicht
  2. Mensen van ReactOS
  3. Forums
  4. Wiki
  5. Mailing lists
  6. IRC Kanalen
  7. Nieuwsbrieven
  8. Blogs
  9. Gebruiker FAQ

Community > ReactOS Newsletter Archive > ReactOS Newsletter: Newsletter 79

Newsletter 79

by Z98 on 2010-12-24
translated by Peter Budts on 2011-01-19

Het ReactOS team wil iedereen een Vrolijk Kerstfeest en een Gelukkig Nieuwjaar wensen.

top

Coverity Redux


Het ReactOS team liet onlangs een nieuwe Coverity scan los op de broncode. Hoewel een aantal nieuwe problemen ontdekt werden dankzij de verbeteringen in Coverity's analyse programma, viel de meerderheid van de problemen in twee categorieën: valse positieven omwille van de manier waarop de bibliotheek voor Portable Structured Exception Handling (PSEH) geïmplementeerd en gebruikt wordt, en waarschuwingen over third party code die niet door dit project ontwikkeld werd. Door in te stellen dat het PSEH gebruik genegeerd wordt zal hopelijk het aantal van deze valse positieven in toekomstige scans verminderen. Problemen die ontdekt zijn in de third party code is echter een totaal andere zaak. Sommige projecten waarvan we importeren stellen hun code ook bloot aan Coverity scans dus in die gevallen is het hun verantwoordelijkheid om de gevonden problemen op te lossen, maar de ReactOS ontwikkelaars zullen hun bug reports en patches toevoegen als we van hun kant geen acties zien. Andere projecten nemen helemaal niet deel aan het scan programma en het team overweegt de relevante resultaten aan hen over te maken om hen te helpen met de ontwikkeling.

Een paar nieuwe problemen werden ontdekt tijdens de laatste scan en een gestage stroom commits die verwijzen naar de Coverity scan IDs is sindsdien op gang gekomen. De geïnteresseerden kunnen de SVN logs bekijken om te ontdekken wat er opgelost is. Veel van de problemen hadden te maken met het oncorrect dimensioneren van zaken bij geheugen operaties, zodat data overschreven werd of in de verkeerde locatie werd geschreven. Eén van de interessantere problemen die door Coverity zijn ontdekt wordt hieronder beschreven.

top

FASTFAT Buffers


De oude FAT driver werd door de Coverity scans als een pijnpunt blootgelegd. Deze stak erboven uit omdat de scan zowel een overflow als een overrun in het buffer vond dat de driver gebruikte. En overflow betekend eigenlijk dat zaken die naar de buffer worden geschreven de ruimte overschreiden die voor dat buffer is voorbehouden, terwijl overruns voorkomen wanneer het buffer zodanig geïndexeerd wordt dat de grootte van het buffer overschat wordt. Beide hebben hetzelfde effect als buiten het buffer schrijven. Pierre Schweitzer onderzocht dit en ontdekte dat er om één of andere reden drie separate buffers bestaan in de FAT driver die gebruikt werden voor hetzelfde doel. Het gevolg hiervan is dat bij bepaalde operaties het onduidelijk werd welk buffer nu eigenlijk gebruikt werd. Of de inhoud van de buffers ooit werd gesynchroniseerd was eveneens nog een open vraag en dus was het moeilijk het resultaat te voorspellen van operaties die vertrouwden op deze buffers.

Bij het oplossen van de overflows en overruns stootte Pierre ook op gebruik van het nummer 13 maar kon hij niet uitvissen waar dat getal vandaan kwam. Dit wordt algemeen beschouwd als een slechte praktijk omdat men ofwel sizeofs moet gebruiken op het type of de databron in kwestie, ofwel om de grootte als een constante te definiëren zodat het aanpassen van die constante ook alle instanties aanpast. Dit maakt het ook veel makkelijker om uit te zoeken waarvoor het getal precies gebruikt wordt. Hopelijk zal de nieuwe FAT driver helpen bij het verminderen van zulke problemen.

top

Nieuwe Ontwikkelaar


Roel Messiant heeft zich bij het project aangesloten en enkele van de Coverity fixes zijn van zijn hand. Bekend als Mephisto in het IRC kanaal heeft Roel bewezen dat hij behulpzamer is dan zijn nick name doet vermoeden, en we kijken er al naar uit wat hij nog zal bijbrengen aan het project.

 


top

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.