<?xml-stylesheet href="slides.css" type="text/css"?><!DOCTYPE Slide>


<Slide xmlns:html="http://www.w3.org/1999/xhtml" xmlns:xlink="http://www.w3.org/1999/xlink">

  <html:div style="background: black none repeat scroll 0%;" align="center">
  <html:img src="images/mozilla-banner.gif" width="600" height="58" id="logo"/>
  </html:div>

  <SlideBody>
    <Heading>
    Common Pitfalls: Chrome JavaScript
    </Heading>
    <BodyText>
    Chrome scripts are just like native code - they can do anything the user can.
    Unlike scripts in content (on Web pages), chrome scripts do not have to ask
    for permission before doing dangerous operations.
    <html:p/>
    The first rule of chrome security:
    </BodyText>
    <SourceCode>Treat all data that comes from the network, including URLs,
as untrusted and potentially malicious. Do not trust any
data that comes over the network. Verify all inputs!</SourceCode>
  </SlideBody>

  <Bar>
    <LeftSide>
    <TitleInBar>16/25</TitleInBar>
    </LeftSide>
    <RightSide>
    <html:form>
<html:input type="button" id="magic" value="Prev" onclick="Prev(document);"/>
<html:input type="button" id="magic" value="Next" onclick="Next(document);"/>
    </html:form>
    </RightSide>
  </Bar>
  <html:script src="slides.js"/>

</Slide>
<!-- vim: set sw=2 ts=2: -->