Changeset 2793


Ignore:
Timestamp:
Dec 31, 2011, 9:53:40 PM (2 years ago)
Author:
wmb
Message:

OLPC trac 11562 - security - RTC anti-rollback - Fixed stack bug that caused boot failures in the face of an invalid rtcreset.sig file.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cpu/x86/pc/olpc/security.fth

    r2703 r2793  
    107610760 0 2value rtcsig$ 
    10771077: rtc-format-error  ( -- done? ) 
    1078    ." RTC Reset format error" ?lease-error-cr  true 
     1078   " RTC Reset format error" ?lease-error-cr  true 
    10791079; 
    10801080: check-rtc-key  ( data$ -- done? )  \ rtc01: SN currentrtc nonce newrtc sig0N: ... 
     
    10831083 
    10841084   bl left-parse-string  " rtc01:" $=  0=  if  ( rem$ ) 
    1085       ." Unknown format" ?lease-error-cr       ( rem$ ) 
     1085      " Unknown format" ?lease-error-cr        ( rem$ ) 
    10861086      2drop true exit                          ( -- true ) 
    10871087   then                                        ( rem$ ) 
     
    10891089   bl left-parse-string                        ( rem$ serial$ ) 
    10901090   my-sn$ $=  0=  if                           ( rem$ ) 
    1091 \     ." Wrong serial number" ?lease-error-cr  ( rem$ ) 
     1091\     " Wrong serial number" ?lease-error-cr   ( rem$ ) 
    10921092      2drop false exit                         ( -- false ) 
    10931093   then                                        ( rem$ ) 
     
    11071107      newrtc$ nonce$ currentrtc$  fix-rtc-timestamps  ( ) 
    11081108   else 
    1109       ." Bad signature " ?lease-error-cr              ( ) 
     1109      " Bad signature " ?lease-error-cr               ( ) 
    11101110   then                                               ( ) 
    11111111   true                                               ( done? ) 
     
    11171117   null$ cn-buf place 
    11181118   " rtcreset.sig" open-security?  if  exit  then   >r  ( r: ih ) 
    1119       "   RTCRESET found - " ?lease-debug 
    1120       load-started 
    1121       leasekey$ to pubkey$ 
     1119   "   RTCRESET found - " ?lease-debug 
     1120   load-started 
     1121   leasekey$ to pubkey$ 
    11221122   begin 
    11231123      sec-line-buf /sec-line-max r@ read-line  if  ( actual -eof? ) 
     
    11311131   drop                                            ( ) 
    11321132   "   No matching records" ?lease-error-cr        ( ) 
    1133    r> close-file drop  false                       ( false ) 
     1133   r> close-file drop                              ( ) 
    11341134; 
    11351135 
Note: See TracChangeset for help on using the changeset viewer.