adam@0: #include adam@0: adam@3: uw_unit uw_OpenidFfi_init(uw_context); adam@3: adam@2: typedef struct uw_OpenidFfi_discovery *uw_OpenidFfi_discovery; adam@2: adam@2: uw_Basis_string uw_OpenidFfi_endpoint(uw_context, uw_OpenidFfi_discovery); adam@2: uw_Basis_string uw_OpenidFfi_localId(uw_context, uw_OpenidFfi_discovery); adam@2: adam@2: uw_OpenidFfi_discovery *uw_OpenidFfi_discover(uw_context, uw_Basis_string id); adam@3: adam@3: typedef uw_buffer *uw_OpenidFfi_inputs; adam@3: typedef uw_buffer *uw_OpenidFfi_outputs; adam@3: adam@3: uw_OpenidFfi_inputs uw_OpenidFfi_createInputs(uw_context); adam@3: uw_unit uw_OpenidFfi_addInput(uw_context, uw_OpenidFfi_inputs, uw_Basis_string key, uw_Basis_string value); adam@3: adam@3: uw_Basis_string uw_OpenidFfi_getOutput(uw_context, uw_OpenidFfi_outputs, uw_Basis_string key); adam@3: adam@3: uw_OpenidFfi_outputs uw_OpenidFfi_indirect(uw_context, uw_Basis_string url, uw_OpenidFfi_inputs);