var searchIndex = {}; searchIndex["sgxs"] = {"doc":"","items":[[0,"crypto","sgxs","",null,null],[3,"RsaPrivateKey","sgxs::crypto","",null,null],[11,"new","","",0,{"inputs":[{"name":"r"}],"output":{"name":"result"}}],[11,"len","","",0,null],[11,"sign_sha256_pkcs1v1_5_with_q1_q2","","",0,null],[11,"e","","",0,null],[11,"n","","",0,null],[6,"Sha256","","",null,null],[8,"Sha256Digest","","",null,null],[10,"new","","",1,{"inputs":[],"output":{"name":"self"}}],[10,"finish","","",1,null],[8,"RsaPrivateKeyOps","","",null,null],[16,"E","","",2,null],[10,"new","","Read an RSA private key in PEM format",2,{"inputs":[{"name":"r"}],"output":{"name":"result"}}],[10,"len","","Return the number of bits in the RSA key",2,null],[10,"sign_sha256_pkcs1v1_5_with_q1_q2","","Generate an RSASSA-PKCS1-v1_5 signature over a SHA256 hash. Also\ncompute\n- `q1 = s^2 / n`\n- `q2 = (s^3 - q1*s*n) / n`\nwhere `/` is integer division.",2,null],[10,"e","","Retrieve the public key in little-endian format",2,null],[10,"n","","Retrieve the modulus in little-endian format",2,null],[0,"sgxdev","sgxs","",null,null],[3,"Mapping","sgxs::sgxdev","",null,null],[3,"Device","","",null,null],[4,"Error","","",null,null],[13,"Sgxs","","",3,null],[13,"Io","","",3,null],[13,"TooManyPages","","",3,null],[13,"Sgx","","",3,null],[13,"Exception","","",3,null],[11,"fmt","","",3,null],[11,"is_einittoken_error","","",3,null],[11,"from","","",3,{"inputs":[{"name":"error"}],"output":{"name":"error"}}],[11,"from","","",3,{"inputs":[{"name":"ioerror"}],"output":{"name":"error"}}],[6,"Result","","",null,null],[11,"drop","","",4,null],[11,"base_address","","",4,null],[11,"tcss","","",4,null],[11,"open","","",5,{"inputs":[{"name":"p"}],"output":{"name":"ioresult"}}],[11,"debug_read","","",5,null],[11,"load","","",5,null],[11,"drop","","",5,null],[0,"sgxs","sgxs","",null,null],[3,"PageChunks","sgxs::sgxs","",null,null],[12,"0","","",6,null],[3,"CanonicalSgxsReader","","The `CanonicalSgxsReader` struct adds canonicalness checking to any `SgxsRead` reader.",null,null],[3,"PageReader","","",null,null],[3,"CanonicalSgxsWriter","","",null,null],[3,"SecinfoTruncated","","Note: only the first 48 bytes of the `Secinfo` structure are included in a\n`Meas` blob.",null,null],[12,"flags","","",7,null],[3,"MeasECreate","","",null,null],[12,"ssaframesize","","",8,null],[12,"size","","",8,null],[3,"MeasEAdd","","",null,null],[12,"offset","","",9,null],[12,"secinfo","","",9,null],[3,"MeasEExtend","","",null,null],[12,"offset","","",10,null],[4,"Error","","",null,null],[13,"IoError","","",11,null],[13,"StreamNotCanonical","","",11,null],[13,"InvalidMeasTag","","",11,null],[13,"InvalidPageOffset","","",11,null],[4,"Meas","","",null,null],[13,"ECreate","","",12,null],[13,"EAdd","","",12,null],[13,"EExtend","","",12,null],[12,"header","sgxs::sgxs::Meas","",12,null],[12,"data","","",12,null],[13,"BareEExtend","sgxs::sgxs","",12,null],[6,"Result","","",null,null],[6,"MeasuredData","","",null,null],[8,"SgxsRead","","",null,null],[10,"read_meas","","",13,null],[8,"SgxsWrite","","",null,null],[10,"write_meas","","",14,null],[10,"write_page","","",14,null],[10,"write_pages","","",14,null],[11,"fmt","","",11,null],[11,"from","","",11,{"inputs":[{"name":"ioerror"}],"output":{"name":"error"}}],[11,"fmt","","",12,null],[11,"fmt","","",6,null],[11,"eq","","",6,null],[11,"ne","","",6,null],[11,"clone","","",6,null],[11,"fmt","","",6,null],[11,"new","","",15,{"inputs":[{"name":"r"}],"output":{"name":"self"}}],[11,"read_meas","","",15,null],[11,"new","","",16,{"inputs":[{"name":"r"}],"output":{"name":"result"}}],[11,"read_page","","",16,null],[11,"new","","",17,{"inputs":[{"name":"w"},{"name":"measecreate"}],"output":{"name":"result"}}],[11,"write_page","","If offset is None, just append at the current offset.",17,null],[11,"write_pages","","If offset is None, just append at the current offset.",17,null],[11,"skip_page","","",17,null],[11,"skip_pages","","",17,null],[11,"offset","","",17,null],[11,"default","","",7,{"inputs":[],"output":{"name":"secinfotruncated"}}],[11,"fmt","","",7,null],[11,"clone","","",7,null],[11,"default","","",8,{"inputs":[],"output":{"name":"measecreate"}}],[11,"fmt","","",8,null],[11,"clone","","",8,null],[11,"default","","",9,{"inputs":[],"output":{"name":"measeadd"}}],[11,"fmt","","",9,null],[11,"clone","","",9,null],[11,"default","","",10,{"inputs":[],"output":{"name":"measeextend"}}],[11,"fmt","","",10,null],[11,"clone","","",10,null],[0,"loader","sgxs","",null,null],[3,"Address","sgxs::loader","",null,null],[4,"OptionalEinittoken","","",null,null],[13,"None","","If an init token needed to be generated to load, it will be discarded\nafter use. You can optionally specify the requested attributes,\notherwise they will be taken from sigstruct.",18,null],[13,"Generate","","If an init token needed to be generated to load, it will be written\nback here. The requested attributes will be taken from the attributes\nfield, the rest of the input token is discarded.",18,null],[13,"Use","","Try to use the supplied init token. If it doesn't work, a new init\ntoken will be generated with the same attributes, and it will be\ndiscarded after use.",18,null],[13,"UseOrGenerate","","Try to use the supplied init token. If it doesn't work, a new init\ntoken will be generated with the same attributes, and it will be\nwritten back here.",18,null],[4,"Error","","",null,null],[13,"EnclaveLoad","","",19,null],[13,"EnclaveSeek","","",19,null],[13,"LaunchEnclaveLoad","","",19,null],[13,"LaunchEnclaveTcsCount","","",19,null],[13,"LaunchEnclaveInit","","",19,null],[13,"LaunchEnclaveGetToken","","",19,null],[13,"LaunchEnclaveNoToken","","",19,null],[8,"Map","","",null,null],[10,"base_address","","",20,null],[10,"tcss","","",20,null],[8,"Load","","",null,null],[16,"Mapping","","",21,null],[16,"Error","","",21,null],[10,"load","","",21,null],[11,"load_with_launch_enclave","","",21,null],[8,"EinittokenError","","",null,null],[10,"is_einittoken_error","","Was this error generated by an invalid Einittoken?",22,null],[11,"as_option","","",18,null],[11,"fmt","","",19,null],[0,"sigstruct","sgxs","",null,null],[3,"Signer","sgxs::sigstruct","",null,null],[11,"fmt","","",23,null],[11,"clone","","",23,null],[11,"new","","Create a new `Signer` with default attributes (64-bit, XFRM: `0x3`) and\ntoday's date.",23,{"inputs":[],"output":{"name":"signer"}}],[11,"sign","","# Panics",23,null],[11,"date","","",23,null],[11,"swdefined","","",23,null],[11,"isvprodid","","",23,null],[11,"isvsvn","","",23,null],[11,"miscselect","","",23,null],[11,"attributes_flags","","",23,null],[11,"attributes_xfrm","","",23,null],[11,"enclavehash","","",23,null],[11,"enclavehash_from_stream","","",23,null],[11,"fmt","sgxs::loader","",24,null],[11,"eq","","",24,null],[11,"ne","","",24,null],[11,"clone","","",24,null],[11,"new","sgxs::crypto","",25,{"inputs":[],"output":{"name":"hasher"}}],[11,"finish","","",25,null]],"paths":[[3,"RsaPrivateKey"],[8,"Sha256Digest"],[8,"RsaPrivateKeyOps"],[4,"Error"],[3,"Mapping"],[3,"Device"],[3,"PageChunks"],[3,"SecinfoTruncated"],[3,"MeasECreate"],[3,"MeasEAdd"],[3,"MeasEExtend"],[4,"Error"],[4,"Meas"],[8,"SgxsRead"],[8,"SgxsWrite"],[3,"CanonicalSgxsReader"],[3,"PageReader"],[3,"CanonicalSgxsWriter"],[4,"OptionalEinittoken"],[4,"Error"],[8,"Map"],[8,"Load"],[8,"EinittokenError"],[3,"Signer"],[3,"Address"],[6,"Sha256"]]}; initSearch(searchIndex);