[ros-dev] very confused
Jerry
crashfourit at gmail.com
Fri Feb 17 21:31:44 CET 2006
What Alex said is quite logical.
Alex Ionescu wrote:
> Timo Kreuzer wrote:
>
>> rené Tournois @mailhost.geldorp.nl schrieb:
>>
>>> At 15:11 17/02/2006 -0000, you wrote:
>>>
>>> I apologize for this second intrusion, but i have some difficulties
>>> to really understand this:
>>>
>>>
>>>
>>>> Define 'MS code'. If we're talking about leaked source code, then
>>>> that is
>>>> true.
>>>>
>>>
>>>
>>>
>>> But you said elsewhere that there was _no_ leaked source, so that
>>> the only problem should be with your next words:
>>>
>>
>>
>> It's a comments on "...that there is still no Microsoft-Code found in
>> ROS."
>> It is true that there is *no* leaked source code inside reactos.
>>
>>>> If we're talking about small chunks of assembly from dissasembled MS
>>>> binaries, then that is what the audit hopes to uncover and remove.
>>>> Once the
>>>> audit is complete, we can also say we know this to be true, at the
>>>> moment we
>>>> don't know.
>>>>
>>>
>>>
>>>
>>> ... and this one sounds strange to me, because i saw several messages
>>> talking in terms of *year* (?!), for the audit.
>>>
>>> Well, i just downloaded the ReactOS Sources, and searched for all the
>>> Files having an "__asm__" Statements inside, after having saved in a
>>> [...]
>>>
>>
>>
>> I think this only applies to the bootsector, wich has asm directly
>> taken from disassemblies in it.
>>
>>> I stopped there, because i said to me that it was stupid to read that
>>> way, and that i was possibly missing the Files of real interrest for
>>> the Audit. But all i have seen does not explain to me, how it could
>>> ever take one year for proof-reading so few, and so small, "__asm__"
>>> statements.
>>>
>>> What am i missing?
>>>
>>
>>
>> I think what Ged was talking about was disassemblies converted into
>> C. And this can be found by looking for typical things of that kind
>> of code:
>> - Magical number inside C code. Normally constants are used or the
>> numbers are commented or really obvios. But when you don't know why
>> there's a constant 0x2342 then you don't really know how to call it.
>> In disc.c there's a constant called PARTITION_MAGIC ;-)
>
>
> WINE code is supposedly "clean as crystal" yet their low-level native
> modules/kernel libraries are full of magic numbers. All my kernel code
> is reversed and doesn't have a single magic constant.
>
>> - excessive gotos: You would normally not use any gotos, but it can
>> be hard to identify complex structures of for, if, while,... inside
>> asm code, so you do it like it's done in asm: with gotos. It doesn't
>> look good, but it works.
>
>
> A good reverser such as myself can identify the complex structures. A
> bad coder can implement clean code with lots of gotos.
>
> In the end, one of the best ways to figure out if something is
> reversed is not the code style, but the code quality. You tell
> yourself "Ok..so here we have a low-level kernel function that no
> driver out there uses, and which has absolutely no test case, but has
> 500 lines of perfectly implemented code which seem to magically know
> how to handle every combination of parameters, flags and situations.
> How was this coded?"
>
> Best regards,
> Alex Ionescu
>
>>
>> _______________________________________________
>> Ros-dev mailing list
>> Ros-dev at reactos.org
>> http://www.reactos.org/mailman/listinfo/ros-dev
>>
>
> _______________________________________________
> Ros-dev mailing list
> Ros-dev at reactos.org
> http://www.reactos.org/mailman/listinfo/ros-dev
>
--
Listen to Americas Debate Radio at 9 o'clock eastren on Wensdays!
http://radio.americasdebate.net/listen/low (Dial Up)
http://radio.americasdebate.net/listen/ (BroadBand)
Call in at:
1-888-DEBATE-5
1-912-342-2345
Skype: callto://americasdebate
More information about the Ros-dev
mailing list