<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>graywolf's lair &#187; Code WTFs</title>
	<atom:link href="http://graywolf.org.ua/category/articles/it/code-wtfs/feed/" rel="self" type="application/rss+xml" />
	<link>http://graywolf.org.ua</link>
	<description>Inhuman being's diary</description>
	<pubDate>Mon, 03 Nov 2008 15:28:41 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>Driver code WTF</title>
		<link>http://graywolf.org.ua/2008/09/25/driver-code-wtf/</link>
		<comments>http://graywolf.org.ua/2008/09/25/driver-code-wtf/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 07:48:09 +0000</pubDate>
		<dc:creator>graywolf</dc:creator>
		
		<category><![CDATA[Code WTFs]]></category>

		<category><![CDATA[code]]></category>

		<category><![CDATA[wtf]]></category>

		<guid isPermaLink="false">http://graywolf.org.ua/?p=478</guid>
		<description><![CDATA[Вчора наш драйверщик шукаючи одну багу в коді драйвера знайшов іншу, непримітну, залишену колишнім розробником цього драйвера. Знайдіть її і ви. Це гарна вправа на знання деяких хитрих програмістських методик.
Сирці я трохи підравив, повикидавши згадки назви драйверу та більшу частину несуттєвого до баги коду і додавши своє визначення SecurityCookie (це, до речі, теж підказка  [...]]]></description>
			<content:encoded><![CDATA[<p>Вчора наш драйверщик шукаючи одну багу в коді драйвера знайшов іншу, непримітну, залишену колишнім розробником цього драйвера. Знайдіть її і ви. Це гарна вправа на знання деяких хитрих програмістських методик.</p>
<p>Сирці я трохи підравив, повикидавши згадки назви драйверу та більшу частину несуттєвого до баги коду і додавши своє визначення SecurityCookie (це, до речі, теж підказка <img src='http://graywolf.org.ua/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ).</p>
<textarea name="code" class="cpp" cols="80" rows="10">ULONG SecurityCookie = 0xDEADBEEF;

[ ... skipped ... ]

pUserNotificationMap->MappedSize = 
    FloatingUnitSize
    + sizeof(NOTIFICATION_MAP)
    + sizeof(SecurityCookie);

pUserNotificationMap->MappedUnits = 1;

RtlCopyBytes( 
    &#038;pUserNotificationMap->NotificationUnit[0].NotificationInfo, 
    &#038;NotifInfo,
    sizeof(NotifInfo) );

*((PULONG)((PCHAR)pUserNotificationMap+pUserNotificationMap->MappedSize)) = SecurityCookie;

status = CommitNotificationUnit(
    pContext,
    pInternalPolicyRule,
    pCtxString,
    pCtxThread,
    &#038;pUserNotificationMap->NotificationUnit[0],
    sizeof(NOTIFICATION_UNIT) + FloatingUnitSize );

//
// Overflowed? Check out!
//
if( *((PULONG)((PCHAR)pUserNotificationMap+pUserNotificationMap->MappedSize)) 
        != SecurityCookie ) 
{
    status = STATUS_HEAP_CORRUPTION;
    ReportDesignError_Leave( "Memory corruption detected!" );
}
</textarea>
<p>P.S. Підказка: &#8220;за що боролись, на те й напоролись&#8221; <img src='http://graywolf.org.ua/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />
<div class="meta">
</div>
]]></content:encoded>
			<wfw:commentRss>http://graywolf.org.ua/2008/09/25/driver-code-wtf/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Code WTF</title>
		<link>http://graywolf.org.ua/2008/07/10/code-wtf/</link>
		<comments>http://graywolf.org.ua/2008/07/10/code-wtf/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 10:19:05 +0000</pubDate>
		<dc:creator>graywolf</dc:creator>
		
		<category><![CDATA[Code WTFs]]></category>

		<guid isPermaLink="false">http://graywolf.org.ua/?p=332</guid>
		<description><![CDATA[Вчора потрібно було пофіксити багу в продукті і поки придивлявся місце для фіксу натрапив на таке:
 ATL::CString strText;

 SYSTEMTIME st = {0};
 GetLocalTime(&#038;st);

 if (st.wHour&#60;10)
     strText.Format(_T("%d/%d/%d, 0%d:%d"),
         st.wDay,st.wMonth,st.wYear, st.wHour, st.wMinute);
 else
     strText.Format(_T("%d/%d/%d, %d:%d"),
       [...]]]></description>
			<content:encoded><![CDATA[<p>Вчора потрібно було пофіксити багу в продукті і поки придивлявся місце для фіксу натрапив на таке:</p>
<textarea name="code" class="cpp" cols="80" rows="10"> ATL::CString strText;

 SYSTEMTIME st = {0};
 GetLocalTime(&#038;st);

 if (st.wHour&lt;10)
     strText.Format(_T("%d/%d/%d, 0%d:%d"),
         st.wDay,st.wMonth,st.wYear, st.wHour, st.wMinute);
 else
     strText.Format(_T("%d/%d/%d, %d:%d"),
         st.wDay,st.wMonth ,st.wYear, st.wHour, st.wMinute);

 m_date.SetWindowText(strText);</textarea>
<p>Ні, код абсолютно робочий, але ж&#8230;</p>
<textarea name="code" class="cpp" cols="80" rows="10">m_date.SetWindowText(CTime::GetCurrentTime().Format(_T("%d/%m/%Y %H:%M")));</textarea>
<p>По-моєму, краще, нє?</p>
<p>P.S. До речі, мабуть заведу собі в блозі відповідний розділ з wtf&#8217;ами <img src='http://graywolf.org.ua/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
<div class="meta">
</div>
]]></content:encoded>
			<wfw:commentRss>http://graywolf.org.ua/2008/07/10/code-wtf/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
