Soup-2.4.gir 868 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933
  1. <?xml version="1.0"?>
  2. <!-- This file was automatically generated from C sources - DO NOT EDIT!
  3. To affect the contents of this file, edit the original C definitions,
  4. and/or use gtk-doc annotations. -->
  5. <repository version="1.2"
  6. xmlns="http://www.gtk.org/introspection/core/1.0"
  7. xmlns:c="http://www.gtk.org/introspection/c/1.0"
  8. xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  9. <include name="Gio" version="2.0"/>
  10. <package name="libsoup-2.4"/>
  11. <c:include name="libsoup/soup.h"/>
  12. <namespace name="Soup"
  13. version="2.4"
  14. shared-library="libsoup-2.4.so.1"
  15. c:identifier-prefixes="Soup"
  16. c:symbol-prefixes="soup">
  17. <constant name="ADDRESS_ANY_PORT" value="0" c:type="SOUP_ADDRESS_ANY_PORT">
  18. <doc xml:space="preserve">This can be passed to any #SoupAddress method that expects a port,
  19. to indicate that you don't care what port is used.</doc>
  20. <type name="gint" c:type="gint"/>
  21. </constant>
  22. <constant name="ADDRESS_FAMILY"
  23. value="family"
  24. c:type="SOUP_ADDRESS_FAMILY">
  25. <doc xml:space="preserve">Alias for the #SoupAddress:family property. (The
  26. #SoupAddressFamily for this address.)</doc>
  27. <type name="utf8" c:type="gchar*"/>
  28. </constant>
  29. <constant name="ADDRESS_NAME" value="name" c:type="SOUP_ADDRESS_NAME">
  30. <doc xml:space="preserve">Alias for the #SoupAddress:name property. (The hostname for
  31. this address.)</doc>
  32. <type name="utf8" c:type="gchar*"/>
  33. </constant>
  34. <constant name="ADDRESS_PHYSICAL"
  35. value="physical"
  36. c:type="SOUP_ADDRESS_PHYSICAL">
  37. <doc xml:space="preserve">An alias for the #SoupAddress:physical property. (The
  38. stringified IP address for this address.)</doc>
  39. <type name="utf8" c:type="gchar*"/>
  40. </constant>
  41. <constant name="ADDRESS_PORT" value="port" c:type="SOUP_ADDRESS_PORT">
  42. <doc xml:space="preserve">An alias for the #SoupAddress:port property. (The port for
  43. this address.)</doc>
  44. <type name="utf8" c:type="gchar*"/>
  45. </constant>
  46. <constant name="ADDRESS_PROTOCOL"
  47. value="protocol"
  48. c:type="SOUP_ADDRESS_PROTOCOL">
  49. <doc xml:space="preserve">Alias for the #SoupAddress:protocol property. (The URI scheme
  50. used with this address.)</doc>
  51. <type name="utf8" c:type="gchar*"/>
  52. </constant>
  53. <constant name="ADDRESS_SOCKADDR"
  54. value="sockaddr"
  55. c:type="SOUP_ADDRESS_SOCKADDR">
  56. <doc xml:space="preserve">An alias for the #SoupAddress:sockaddr property. (A pointer
  57. to the struct sockaddr for this address.)</doc>
  58. <type name="utf8" c:type="gchar*"/>
  59. </constant>
  60. <constant name="AUTH_DOMAIN_ADD_PATH"
  61. value="add-path"
  62. c:type="SOUP_AUTH_DOMAIN_ADD_PATH">
  63. <doc xml:space="preserve">Alias for the #SoupAuthDomain:add-path property. (Shortcut
  64. for calling soup_auth_domain_add_path().)</doc>
  65. <type name="utf8" c:type="gchar*"/>
  66. </constant>
  67. <constant name="AUTH_DOMAIN_BASIC_AUTH_CALLBACK"
  68. value="auth-callback"
  69. c:type="SOUP_AUTH_DOMAIN_BASIC_AUTH_CALLBACK">
  70. <doc xml:space="preserve">Alias for the #SoupAuthDomainBasic:auth-callback property.
  71. (The #SoupAuthDomainBasicAuthCallback.)</doc>
  72. <type name="utf8" c:type="gchar*"/>
  73. </constant>
  74. <constant name="AUTH_DOMAIN_BASIC_AUTH_DATA"
  75. value="auth-data"
  76. c:type="SOUP_AUTH_DOMAIN_BASIC_AUTH_DATA">
  77. <doc xml:space="preserve">Alias for the #SoupAuthDomainBasic:auth-data property.
  78. (The data to pass to the #SoupAuthDomainBasicAuthCallback.)</doc>
  79. <type name="utf8" c:type="gchar*"/>
  80. </constant>
  81. <constant name="AUTH_DOMAIN_BASIC_H"
  82. value="1"
  83. c:type="SOUP_AUTH_DOMAIN_BASIC_H">
  84. <type name="gint" c:type="gint"/>
  85. </constant>
  86. <constant name="AUTH_DOMAIN_DIGEST_AUTH_CALLBACK"
  87. value="auth-callback"
  88. c:type="SOUP_AUTH_DOMAIN_DIGEST_AUTH_CALLBACK">
  89. <doc xml:space="preserve">Alias for the #SoupAuthDomainDigest:auth-callback property.
  90. (The #SoupAuthDomainDigestAuthCallback.)</doc>
  91. <type name="utf8" c:type="gchar*"/>
  92. </constant>
  93. <constant name="AUTH_DOMAIN_DIGEST_AUTH_DATA"
  94. value="auth-data"
  95. c:type="SOUP_AUTH_DOMAIN_DIGEST_AUTH_DATA">
  96. <doc xml:space="preserve">Alias for the #SoupAuthDomainDigest:auth-callback property.
  97. (The #SoupAuthDomainDigestAuthCallback.)</doc>
  98. <type name="utf8" c:type="gchar*"/>
  99. </constant>
  100. <constant name="AUTH_DOMAIN_DIGEST_H"
  101. value="1"
  102. c:type="SOUP_AUTH_DOMAIN_DIGEST_H">
  103. <type name="gint" c:type="gint"/>
  104. </constant>
  105. <constant name="AUTH_DOMAIN_FILTER"
  106. value="filter"
  107. c:type="SOUP_AUTH_DOMAIN_FILTER">
  108. <doc xml:space="preserve">Alias for the #SoupAuthDomain:filter property. (The
  109. #SoupAuthDomainFilter for the domain.)</doc>
  110. <type name="utf8" c:type="gchar*"/>
  111. </constant>
  112. <constant name="AUTH_DOMAIN_FILTER_DATA"
  113. value="filter-data"
  114. c:type="SOUP_AUTH_DOMAIN_FILTER_DATA">
  115. <doc xml:space="preserve">Alias for the #SoupAuthDomain:filter-data property. (Data
  116. to pass to the #SoupAuthDomainFilter.)</doc>
  117. <type name="utf8" c:type="gchar*"/>
  118. </constant>
  119. <constant name="AUTH_DOMAIN_GENERIC_AUTH_CALLBACK"
  120. value="generic-auth-callback"
  121. c:type="SOUP_AUTH_DOMAIN_GENERIC_AUTH_CALLBACK">
  122. <doc xml:space="preserve">Alias for the #SoupAuthDomain:generic-auth-callback property.
  123. (The #SoupAuthDomainGenericAuthCallback.)</doc>
  124. <type name="utf8" c:type="gchar*"/>
  125. </constant>
  126. <constant name="AUTH_DOMAIN_GENERIC_AUTH_DATA"
  127. value="generic-auth-data"
  128. c:type="SOUP_AUTH_DOMAIN_GENERIC_AUTH_DATA">
  129. <doc xml:space="preserve">Alias for the #SoupAuthDomain:generic-auth-data property.
  130. (The data to pass to the #SoupAuthDomainGenericAuthCallback.)</doc>
  131. <type name="utf8" c:type="gchar*"/>
  132. </constant>
  133. <constant name="AUTH_DOMAIN_H" value="1" c:type="SOUP_AUTH_DOMAIN_H">
  134. <type name="gint" c:type="gint"/>
  135. </constant>
  136. <constant name="AUTH_DOMAIN_PROXY"
  137. value="proxy"
  138. c:type="SOUP_AUTH_DOMAIN_PROXY">
  139. <doc xml:space="preserve">Alias for the #SoupAuthDomain:proxy property. (Whether or
  140. not this is a proxy auth domain.)</doc>
  141. <type name="utf8" c:type="gchar*"/>
  142. </constant>
  143. <constant name="AUTH_DOMAIN_REALM"
  144. value="realm"
  145. c:type="SOUP_AUTH_DOMAIN_REALM">
  146. <doc xml:space="preserve">Alias for the #SoupAuthDomain:realm property. (The realm of
  147. this auth domain.)</doc>
  148. <type name="utf8" c:type="gchar*"/>
  149. </constant>
  150. <constant name="AUTH_DOMAIN_REMOVE_PATH"
  151. value="remove-path"
  152. c:type="SOUP_AUTH_DOMAIN_REMOVE_PATH">
  153. <doc xml:space="preserve">Alias for the #SoupAuthDomain:remove-path property.
  154. (Shortcut for calling soup_auth_domain_remove_path().)</doc>
  155. <type name="utf8" c:type="gchar*"/>
  156. </constant>
  157. <constant name="AUTH_H" value="1" c:type="SOUP_AUTH_H">
  158. <type name="gint" c:type="gint"/>
  159. </constant>
  160. <constant name="AUTH_HOST" value="host" c:type="SOUP_AUTH_HOST">
  161. <doc xml:space="preserve">An alias for the #SoupAuth:host property. (The
  162. host being authenticated to.)</doc>
  163. <type name="utf8" c:type="gchar*"/>
  164. </constant>
  165. <constant name="AUTH_IS_AUTHENTICATED"
  166. value="is-authenticated"
  167. c:type="SOUP_AUTH_IS_AUTHENTICATED">
  168. <doc xml:space="preserve">An alias for the #SoupAuth:is-authenticated property.
  169. (Whether or not the auth has been authenticated.)</doc>
  170. <type name="utf8" c:type="gchar*"/>
  171. </constant>
  172. <constant name="AUTH_IS_FOR_PROXY"
  173. value="is-for-proxy"
  174. c:type="SOUP_AUTH_IS_FOR_PROXY">
  175. <doc xml:space="preserve">An alias for the #SoupAuth:is-for-proxy property. (Whether
  176. or not the auth is for a proxy server.)</doc>
  177. <type name="utf8" c:type="gchar*"/>
  178. </constant>
  179. <constant name="AUTH_MANAGER_H" value="1" c:type="SOUP_AUTH_MANAGER_H">
  180. <type name="gint" c:type="gint"/>
  181. </constant>
  182. <constant name="AUTH_REALM" value="realm" c:type="SOUP_AUTH_REALM">
  183. <doc xml:space="preserve">An alias for the #SoupAuth:realm property. (The
  184. authentication realm.)</doc>
  185. <type name="utf8" c:type="gchar*"/>
  186. </constant>
  187. <constant name="AUTH_SCHEME_NAME"
  188. value="scheme-name"
  189. c:type="SOUP_AUTH_SCHEME_NAME">
  190. <doc xml:space="preserve">An alias for the #SoupAuth:scheme-name property. (The
  191. authentication scheme name.)</doc>
  192. <type name="utf8" c:type="gchar*"/>
  193. </constant>
  194. <class name="Address"
  195. c:symbol-prefix="address"
  196. c:type="SoupAddress"
  197. parent="GObject.Object"
  198. glib:type-name="SoupAddress"
  199. glib:get-type="soup_address_get_type"
  200. glib:type-struct="AddressClass">
  201. <implements name="Gio.SocketConnectable"/>
  202. <constructor name="new" c:identifier="soup_address_new">
  203. <doc xml:space="preserve">Creates a #SoupAddress from @name and @port. The #SoupAddress's IP
  204. address may not be available right away; the caller can call
  205. soup_address_resolve_async() or soup_address_resolve_sync() to
  206. force a DNS resolution.</doc>
  207. <return-value transfer-ownership="full">
  208. <doc xml:space="preserve">a #SoupAddress</doc>
  209. <type name="Address" c:type="SoupAddress*"/>
  210. </return-value>
  211. <parameters>
  212. <parameter name="name" transfer-ownership="none">
  213. <doc xml:space="preserve">a hostname or physical address</doc>
  214. <type name="utf8" c:type="const char*"/>
  215. </parameter>
  216. <parameter name="port" transfer-ownership="none">
  217. <doc xml:space="preserve">a port number</doc>
  218. <type name="guint" c:type="guint"/>
  219. </parameter>
  220. </parameters>
  221. </constructor>
  222. <constructor name="new_any" c:identifier="soup_address_new_any">
  223. <doc xml:space="preserve">Returns a #SoupAddress corresponding to the "any" address
  224. for @family (or %NULL if @family isn't supported), suitable for
  225. using as a listening #SoupSocket.</doc>
  226. <return-value transfer-ownership="full" nullable="1">
  227. <doc xml:space="preserve">the new #SoupAddress</doc>
  228. <type name="Address" c:type="SoupAddress*"/>
  229. </return-value>
  230. <parameters>
  231. <parameter name="family" transfer-ownership="none">
  232. <doc xml:space="preserve">the address family</doc>
  233. <type name="AddressFamily" c:type="SoupAddressFamily"/>
  234. </parameter>
  235. <parameter name="port" transfer-ownership="none">
  236. <doc xml:space="preserve">the port number (usually %SOUP_ADDRESS_ANY_PORT)</doc>
  237. <type name="guint" c:type="guint"/>
  238. </parameter>
  239. </parameters>
  240. </constructor>
  241. <constructor name="new_from_sockaddr"
  242. c:identifier="soup_address_new_from_sockaddr">
  243. <doc xml:space="preserve">Returns a #SoupAddress equivalent to @sa (or %NULL if @sa's
  244. address family isn't supported)</doc>
  245. <return-value transfer-ownership="full" nullable="1">
  246. <doc xml:space="preserve">the new #SoupAddress</doc>
  247. <type name="Address" c:type="SoupAddress*"/>
  248. </return-value>
  249. <parameters>
  250. <parameter name="sa"
  251. transfer-ownership="none"
  252. nullable="1"
  253. allow-none="1">
  254. <doc xml:space="preserve">a pointer to a sockaddr</doc>
  255. <type name="gpointer" c:type="sockaddr*"/>
  256. </parameter>
  257. <parameter name="len" transfer-ownership="none">
  258. <doc xml:space="preserve">size of @sa</doc>
  259. <type name="gint" c:type="int"/>
  260. </parameter>
  261. </parameters>
  262. </constructor>
  263. <method name="equal_by_ip"
  264. c:identifier="soup_address_equal_by_ip"
  265. version="2.26">
  266. <doc xml:space="preserve">Tests if @addr1 and @addr2 have the same IP address. This method
  267. can be used with soup_address_hash_by_ip() to create a
  268. #GHashTable that hashes on IP address.
  269. This would be used to distinguish hosts in situations where
  270. different virtual hosts on the same IP address should be considered
  271. the same. Eg, if "www.example.com" and "www.example.net" have the
  272. same IP address, then a single connection can be used to talk
  273. to either of them.
  274. See also soup_address_equal_by_name(), which compares by name
  275. rather than by IP address.</doc>
  276. <return-value transfer-ownership="none">
  277. <doc xml:space="preserve">whether or not @addr1 and @addr2 have the same IP
  278. address.</doc>
  279. <type name="gboolean" c:type="gboolean"/>
  280. </return-value>
  281. <parameters>
  282. <instance-parameter name="addr1" transfer-ownership="none">
  283. <doc xml:space="preserve">a #SoupAddress with a resolved IP
  284. address</doc>
  285. <type name="Address" c:type="gconstpointer"/>
  286. </instance-parameter>
  287. <parameter name="addr2" transfer-ownership="none">
  288. <doc xml:space="preserve">another #SoupAddress with a resolved
  289. IP address</doc>
  290. <type name="Address" c:type="gconstpointer"/>
  291. </parameter>
  292. </parameters>
  293. </method>
  294. <method name="equal_by_name"
  295. c:identifier="soup_address_equal_by_name"
  296. version="2.26">
  297. <doc xml:space="preserve">Tests if @addr1 and @addr2 have the same "name". This method can be
  298. used with soup_address_hash_by_name() to create a #GHashTable that
  299. hashes on address "names".
  300. Comparing by name normally means comparing the addresses by their
  301. hostnames. But if the address was originally created using an IP
  302. address literal, then it will be compared by that instead.
  303. In particular, if "www.example.com" has the IP address 10.0.0.1,
  304. and @addr1 was created with the name "www.example.com" and @addr2
  305. was created with the name "10.0.0.1", then they will compare as
  306. unequal for purposes of soup_address_equal_by_name().
  307. This would be used to distinguish hosts in situations where
  308. different virtual hosts on the same IP address should be considered
  309. different. Eg, for purposes of HTTP authentication or cookies, two
  310. hosts with the same IP address but different names are considered
  311. to be different hosts.
  312. See also soup_address_equal_by_ip(), which compares by IP address
  313. rather than by name.</doc>
  314. <return-value transfer-ownership="none">
  315. <doc xml:space="preserve">whether or not @addr1 and @addr2 have the same name</doc>
  316. <type name="gboolean" c:type="gboolean"/>
  317. </return-value>
  318. <parameters>
  319. <instance-parameter name="addr1" transfer-ownership="none">
  320. <doc xml:space="preserve">a #SoupAddress with a resolved name</doc>
  321. <type name="Address" c:type="gconstpointer"/>
  322. </instance-parameter>
  323. <parameter name="addr2" transfer-ownership="none">
  324. <doc xml:space="preserve">another #SoupAddress with a resolved
  325. name</doc>
  326. <type name="Address" c:type="gconstpointer"/>
  327. </parameter>
  328. </parameters>
  329. </method>
  330. <method name="get_gsockaddr"
  331. c:identifier="soup_address_get_gsockaddr"
  332. version="2.32">
  333. <doc xml:space="preserve">Creates a new #GSocketAddress corresponding to @addr (which is assumed
  334. to only have one socket address associated with it).</doc>
  335. <return-value transfer-ownership="full">
  336. <doc xml:space="preserve">a new #GSocketAddress</doc>
  337. <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
  338. </return-value>
  339. <parameters>
  340. <instance-parameter name="addr" transfer-ownership="none">
  341. <doc xml:space="preserve">a #SoupAddress</doc>
  342. <type name="Address" c:type="SoupAddress*"/>
  343. </instance-parameter>
  344. </parameters>
  345. </method>
  346. <method name="get_name" c:identifier="soup_address_get_name">
  347. <doc xml:space="preserve">Returns the hostname associated with @addr.
  348. This method is not thread-safe; if you call it while @addr is being
  349. resolved in another thread, it may return garbage. You can use
  350. soup_address_is_resolved() to safely test whether or not an address
  351. is resolved before fetching its name or address.</doc>
  352. <return-value transfer-ownership="none" nullable="1">
  353. <doc xml:space="preserve">the hostname, or %NULL if it is not known.</doc>
  354. <type name="utf8" c:type="const char*"/>
  355. </return-value>
  356. <parameters>
  357. <instance-parameter name="addr" transfer-ownership="none">
  358. <doc xml:space="preserve">a #SoupAddress</doc>
  359. <type name="Address" c:type="SoupAddress*"/>
  360. </instance-parameter>
  361. </parameters>
  362. </method>
  363. <method name="get_physical" c:identifier="soup_address_get_physical">
  364. <doc xml:space="preserve">Returns the physical address associated with @addr as a string.
  365. (Eg, "127.0.0.1"). If the address is not yet known, returns %NULL.
  366. This method is not thread-safe; if you call it while @addr is being
  367. resolved in another thread, it may return garbage. You can use
  368. soup_address_is_resolved() to safely test whether or not an address
  369. is resolved before fetching its name or address.</doc>
  370. <return-value transfer-ownership="none" nullable="1">
  371. <doc xml:space="preserve">the physical address, or %NULL</doc>
  372. <type name="utf8" c:type="const char*"/>
  373. </return-value>
  374. <parameters>
  375. <instance-parameter name="addr" transfer-ownership="none">
  376. <doc xml:space="preserve">a #SoupAddress</doc>
  377. <type name="Address" c:type="SoupAddress*"/>
  378. </instance-parameter>
  379. </parameters>
  380. </method>
  381. <method name="get_port" c:identifier="soup_address_get_port">
  382. <doc xml:space="preserve">Returns the port associated with @addr.</doc>
  383. <return-value transfer-ownership="none">
  384. <doc xml:space="preserve">the port</doc>
  385. <type name="guint" c:type="guint"/>
  386. </return-value>
  387. <parameters>
  388. <instance-parameter name="addr" transfer-ownership="none">
  389. <doc xml:space="preserve">a #SoupAddress</doc>
  390. <type name="Address" c:type="SoupAddress*"/>
  391. </instance-parameter>
  392. </parameters>
  393. </method>
  394. <method name="get_sockaddr" c:identifier="soup_address_get_sockaddr">
  395. <doc xml:space="preserve">Returns the sockaddr associated with @addr, with its length in
  396. *@len. If the sockaddr is not yet known, returns %NULL.
  397. This method is not thread-safe; if you call it while @addr is being
  398. resolved in another thread, it may return garbage. You can use
  399. soup_address_is_resolved() to safely test whether or not an address
  400. is resolved before fetching its name or address.</doc>
  401. <return-value transfer-ownership="none" nullable="1">
  402. <doc xml:space="preserve">the sockaddr, or %NULL</doc>
  403. <type name="gpointer" c:type="sockaddr*"/>
  404. </return-value>
  405. <parameters>
  406. <instance-parameter name="addr" transfer-ownership="none">
  407. <doc xml:space="preserve">a #SoupAddress</doc>
  408. <type name="Address" c:type="SoupAddress*"/>
  409. </instance-parameter>
  410. <parameter name="len" transfer-ownership="none">
  411. <doc xml:space="preserve">return location for sockaddr length</doc>
  412. <type name="gint" c:type="int*"/>
  413. </parameter>
  414. </parameters>
  415. </method>
  416. <method name="hash_by_ip"
  417. c:identifier="soup_address_hash_by_ip"
  418. version="2.26">
  419. <doc xml:space="preserve">A hash function (for #GHashTable) that corresponds to
  420. soup_address_equal_by_ip(), qv</doc>
  421. <return-value transfer-ownership="none">
  422. <doc xml:space="preserve">the IP-based hash value for @addr.</doc>
  423. <type name="guint" c:type="guint"/>
  424. </return-value>
  425. <parameters>
  426. <instance-parameter name="addr" transfer-ownership="none">
  427. <doc xml:space="preserve">a #SoupAddress</doc>
  428. <type name="Address" c:type="gconstpointer"/>
  429. </instance-parameter>
  430. </parameters>
  431. </method>
  432. <method name="hash_by_name"
  433. c:identifier="soup_address_hash_by_name"
  434. version="2.26">
  435. <doc xml:space="preserve">A hash function (for #GHashTable) that corresponds to
  436. soup_address_equal_by_name(), qv</doc>
  437. <return-value transfer-ownership="none">
  438. <doc xml:space="preserve">the named-based hash value for @addr.</doc>
  439. <type name="guint" c:type="guint"/>
  440. </return-value>
  441. <parameters>
  442. <instance-parameter name="addr" transfer-ownership="none">
  443. <doc xml:space="preserve">a #SoupAddress</doc>
  444. <type name="Address" c:type="gconstpointer"/>
  445. </instance-parameter>
  446. </parameters>
  447. </method>
  448. <method name="is_resolved" c:identifier="soup_address_is_resolved">
  449. <doc xml:space="preserve">Tests if @addr has already been resolved. Unlike the other
  450. #SoupAddress "get" methods, this is safe to call when @addr might
  451. be being resolved in another thread.</doc>
  452. <return-value transfer-ownership="none">
  453. <doc xml:space="preserve">%TRUE if @addr has been resolved.</doc>
  454. <type name="gboolean" c:type="gboolean"/>
  455. </return-value>
  456. <parameters>
  457. <instance-parameter name="addr" transfer-ownership="none">
  458. <doc xml:space="preserve">a #SoupAddress</doc>
  459. <type name="Address" c:type="SoupAddress*"/>
  460. </instance-parameter>
  461. </parameters>
  462. </method>
  463. <method name="resolve_async" c:identifier="soup_address_resolve_async">
  464. <doc xml:space="preserve">Asynchronously resolves the missing half of @addr (its IP address
  465. if it was created with soup_address_new(), or its hostname if it
  466. was created with soup_address_new_from_sockaddr() or
  467. soup_address_new_any().)
  468. If @cancellable is non-%NULL, it can be used to cancel the
  469. resolution. @callback will still be invoked in this case, with a
  470. status of %SOUP_STATUS_CANCELLED.
  471. It is safe to call this more than once on a given address, from the
  472. same thread, with the same @async_context (and doing so will not
  473. result in redundant DNS queries being made). But it is not safe to
  474. call from multiple threads, or with different @async_contexts, or
  475. mixed with calls to soup_address_resolve_sync().</doc>
  476. <return-value transfer-ownership="none">
  477. <type name="none" c:type="void"/>
  478. </return-value>
  479. <parameters>
  480. <instance-parameter name="addr" transfer-ownership="none">
  481. <doc xml:space="preserve">a #SoupAddress</doc>
  482. <type name="Address" c:type="SoupAddress*"/>
  483. </instance-parameter>
  484. <parameter name="async_context"
  485. transfer-ownership="none"
  486. nullable="1"
  487. allow-none="1">
  488. <doc xml:space="preserve">the #GMainContext to call @callback from</doc>
  489. <type name="GLib.MainContext" c:type="GMainContext*"/>
  490. </parameter>
  491. <parameter name="cancellable"
  492. transfer-ownership="none"
  493. nullable="1"
  494. allow-none="1">
  495. <doc xml:space="preserve">a #GCancellable object, or %NULL</doc>
  496. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  497. </parameter>
  498. <parameter name="callback"
  499. transfer-ownership="none"
  500. scope="async"
  501. closure="3">
  502. <doc xml:space="preserve">callback to call with the result</doc>
  503. <type name="AddressCallback" c:type="SoupAddressCallback"/>
  504. </parameter>
  505. <parameter name="user_data"
  506. transfer-ownership="none"
  507. nullable="1"
  508. allow-none="1">
  509. <doc xml:space="preserve">data for @callback</doc>
  510. <type name="gpointer" c:type="gpointer"/>
  511. </parameter>
  512. </parameters>
  513. </method>
  514. <method name="resolve_sync" c:identifier="soup_address_resolve_sync">
  515. <doc xml:space="preserve">Synchronously resolves the missing half of @addr, as with
  516. soup_address_resolve_async().
  517. If @cancellable is non-%NULL, it can be used to cancel the
  518. resolution. soup_address_resolve_sync() will then return a status
  519. of %SOUP_STATUS_CANCELLED.
  520. It is safe to call this more than once, even from different
  521. threads, but it is not safe to mix calls to
  522. soup_address_resolve_sync() with calls to
  523. soup_address_resolve_async() on the same address.</doc>
  524. <return-value transfer-ownership="none">
  525. <doc xml:space="preserve">%SOUP_STATUS_OK, %SOUP_STATUS_CANT_RESOLVE, or
  526. %SOUP_STATUS_CANCELLED.</doc>
  527. <type name="guint" c:type="guint"/>
  528. </return-value>
  529. <parameters>
  530. <instance-parameter name="addr" transfer-ownership="none">
  531. <doc xml:space="preserve">a #SoupAddress</doc>
  532. <type name="Address" c:type="SoupAddress*"/>
  533. </instance-parameter>
  534. <parameter name="cancellable"
  535. transfer-ownership="none"
  536. nullable="1"
  537. allow-none="1">
  538. <doc xml:space="preserve">a #GCancellable object, or %NULL</doc>
  539. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  540. </parameter>
  541. </parameters>
  542. </method>
  543. <property name="family"
  544. writable="1"
  545. construct-only="1"
  546. transfer-ownership="none">
  547. <type name="AddressFamily"/>
  548. </property>
  549. <property name="name"
  550. writable="1"
  551. construct-only="1"
  552. transfer-ownership="none">
  553. <type name="utf8" c:type="gchar*"/>
  554. </property>
  555. <property name="physical" transfer-ownership="none">
  556. <type name="utf8" c:type="gchar*"/>
  557. </property>
  558. <property name="port"
  559. writable="1"
  560. construct-only="1"
  561. transfer-ownership="none">
  562. <type name="gint" c:type="gint"/>
  563. </property>
  564. <property name="protocol"
  565. writable="1"
  566. construct-only="1"
  567. transfer-ownership="none">
  568. <type name="utf8" c:type="gchar*"/>
  569. </property>
  570. <property name="sockaddr"
  571. writable="1"
  572. construct-only="1"
  573. transfer-ownership="none">
  574. <type name="gpointer" c:type="gpointer"/>
  575. </property>
  576. <field name="parent">
  577. <type name="GObject.Object" c:type="GObject"/>
  578. </field>
  579. </class>
  580. <callback name="AddressCallback" c:type="SoupAddressCallback">
  581. <doc xml:space="preserve">The callback function passed to soup_address_resolve_async().</doc>
  582. <return-value transfer-ownership="none">
  583. <type name="none" c:type="void"/>
  584. </return-value>
  585. <parameters>
  586. <parameter name="addr" transfer-ownership="none">
  587. <doc xml:space="preserve">the #SoupAddress that was resolved</doc>
  588. <type name="Address" c:type="SoupAddress*"/>
  589. </parameter>
  590. <parameter name="status" transfer-ownership="none">
  591. <doc xml:space="preserve">%SOUP_STATUS_OK, %SOUP_STATUS_CANT_RESOLVE, or
  592. %SOUP_STATUS_CANCELLED</doc>
  593. <type name="guint" c:type="guint"/>
  594. </parameter>
  595. <parameter name="user_data"
  596. transfer-ownership="none"
  597. nullable="1"
  598. allow-none="1"
  599. closure="2">
  600. <doc xml:space="preserve">the user data that was passed to
  601. soup_address_resolve_async()</doc>
  602. <type name="gpointer" c:type="gpointer"/>
  603. </parameter>
  604. </parameters>
  605. </callback>
  606. <record name="AddressClass"
  607. c:type="SoupAddressClass"
  608. glib:is-gtype-struct-for="Address">
  609. <field name="parent_class">
  610. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  611. </field>
  612. <field name="_libsoup_reserved1" introspectable="0">
  613. <callback name="_libsoup_reserved1">
  614. <return-value transfer-ownership="none">
  615. <type name="none" c:type="void"/>
  616. </return-value>
  617. </callback>
  618. </field>
  619. <field name="_libsoup_reserved2" introspectable="0">
  620. <callback name="_libsoup_reserved2">
  621. <return-value transfer-ownership="none">
  622. <type name="none" c:type="void"/>
  623. </return-value>
  624. </callback>
  625. </field>
  626. <field name="_libsoup_reserved3" introspectable="0">
  627. <callback name="_libsoup_reserved3">
  628. <return-value transfer-ownership="none">
  629. <type name="none" c:type="void"/>
  630. </return-value>
  631. </callback>
  632. </field>
  633. <field name="_libsoup_reserved4" introspectable="0">
  634. <callback name="_libsoup_reserved4">
  635. <return-value transfer-ownership="none">
  636. <type name="none" c:type="void"/>
  637. </return-value>
  638. </callback>
  639. </field>
  640. </record>
  641. <enumeration name="AddressFamily"
  642. glib:type-name="SoupAddressFamily"
  643. glib:get-type="soup_address_family_get_type"
  644. c:type="SoupAddressFamily">
  645. <doc xml:space="preserve">The supported address families.</doc>
  646. <member name="invalid"
  647. value="-1"
  648. c:identifier="SOUP_ADDRESS_FAMILY_INVALID"
  649. glib:nick="invalid">
  650. <doc xml:space="preserve">an invalid %SoupAddress</doc>
  651. </member>
  652. <member name="ipv4"
  653. value="2"
  654. c:identifier="SOUP_ADDRESS_FAMILY_IPV4"
  655. glib:nick="ipv4">
  656. <doc xml:space="preserve">an IPv4 address</doc>
  657. </member>
  658. <member name="ipv6"
  659. value="10"
  660. c:identifier="SOUP_ADDRESS_FAMILY_IPV6"
  661. glib:nick="ipv6">
  662. <doc xml:space="preserve">an IPv6 address</doc>
  663. </member>
  664. </enumeration>
  665. <class name="Auth"
  666. c:symbol-prefix="auth"
  667. c:type="SoupAuth"
  668. parent="GObject.Object"
  669. abstract="1"
  670. glib:type-name="SoupAuth"
  671. glib:get-type="soup_auth_get_type"
  672. glib:type-struct="AuthClass">
  673. <doc xml:space="preserve">The abstract base class for handling authentication. Specific HTTP
  674. Authentication mechanisms are implemented by its subclasses, but
  675. applications never need to be aware of the specific subclasses
  676. being used.</doc>
  677. <constructor name="new" c:identifier="soup_auth_new">
  678. <doc xml:space="preserve">Creates a new #SoupAuth of type @type with the information from
  679. @msg and @auth_header.
  680. This is called by #SoupSession; you will normally not create auths
  681. yourself.</doc>
  682. <return-value transfer-ownership="full" nullable="1">
  683. <doc xml:space="preserve">the new #SoupAuth, or %NULL if it could
  684. not be created</doc>
  685. <type name="Auth" c:type="SoupAuth*"/>
  686. </return-value>
  687. <parameters>
  688. <parameter name="type" transfer-ownership="none">
  689. <doc xml:space="preserve">the type of auth to create (a subtype of #SoupAuth)</doc>
  690. <type name="GType" c:type="GType"/>
  691. </parameter>
  692. <parameter name="msg" transfer-ownership="none">
  693. <doc xml:space="preserve">the #SoupMessage the auth is being created for</doc>
  694. <type name="Message" c:type="SoupMessage*"/>
  695. </parameter>
  696. <parameter name="auth_header" transfer-ownership="none">
  697. <doc xml:space="preserve">the WWW-Authenticate/Proxy-Authenticate header</doc>
  698. <type name="utf8" c:type="const char*"/>
  699. </parameter>
  700. </parameters>
  701. </constructor>
  702. <virtual-method name="authenticate" invoker="authenticate">
  703. <doc xml:space="preserve">Call this on an auth to authenticate it; normally this will cause
  704. the auth's message to be requeued with the new authentication info.</doc>
  705. <return-value transfer-ownership="none">
  706. <type name="none" c:type="void"/>
  707. </return-value>
  708. <parameters>
  709. <instance-parameter name="auth" transfer-ownership="none">
  710. <doc xml:space="preserve">a #SoupAuth</doc>
  711. <type name="Auth" c:type="SoupAuth*"/>
  712. </instance-parameter>
  713. <parameter name="username" transfer-ownership="none">
  714. <doc xml:space="preserve">the username provided by the user or client</doc>
  715. <type name="utf8" c:type="const char*"/>
  716. </parameter>
  717. <parameter name="password" transfer-ownership="none">
  718. <doc xml:space="preserve">the password provided by the user or client</doc>
  719. <type name="utf8" c:type="const char*"/>
  720. </parameter>
  721. </parameters>
  722. </virtual-method>
  723. <virtual-method name="can_authenticate"
  724. invoker="can_authenticate"
  725. version="2.54">
  726. <doc xml:space="preserve">Tests if @auth is able to authenticate by providing credentials to the
  727. soup_auth_authenticate().</doc>
  728. <return-value transfer-ownership="none">
  729. <doc xml:space="preserve">%TRUE if @auth is able to accept credentials.</doc>
  730. <type name="gboolean" c:type="gboolean"/>
  731. </return-value>
  732. <parameters>
  733. <instance-parameter name="auth" transfer-ownership="none">
  734. <doc xml:space="preserve">a #SoupAuth</doc>
  735. <type name="Auth" c:type="SoupAuth*"/>
  736. </instance-parameter>
  737. </parameters>
  738. </virtual-method>
  739. <virtual-method name="get_authorization" invoker="get_authorization">
  740. <doc xml:space="preserve">Generates an appropriate "Authorization" header for @msg. (The
  741. session will only call this if soup_auth_is_authenticated()
  742. returned %TRUE.)</doc>
  743. <return-value transfer-ownership="full">
  744. <doc xml:space="preserve">the "Authorization" header, which must be freed.</doc>
  745. <type name="utf8" c:type="char*"/>
  746. </return-value>
  747. <parameters>
  748. <instance-parameter name="auth" transfer-ownership="none">
  749. <doc xml:space="preserve">a #SoupAuth</doc>
  750. <type name="Auth" c:type="SoupAuth*"/>
  751. </instance-parameter>
  752. <parameter name="msg" transfer-ownership="none">
  753. <doc xml:space="preserve">the #SoupMessage to be authorized</doc>
  754. <type name="Message" c:type="SoupMessage*"/>
  755. </parameter>
  756. </parameters>
  757. </virtual-method>
  758. <virtual-method name="get_protection_space"
  759. invoker="get_protection_space">
  760. <doc xml:space="preserve">Returns a list of paths on the server which @auth extends over.
  761. (All subdirectories of these paths are also assumed to be part
  762. of @auth's protection space, unless otherwise discovered not to
  763. be.)</doc>
  764. <return-value transfer-ownership="full">
  765. <doc xml:space="preserve">the list of
  766. paths, which can be freed with soup_auth_free_protection_space().</doc>
  767. <type name="GLib.SList" c:type="GSList*">
  768. <type name="utf8"/>
  769. </type>
  770. </return-value>
  771. <parameters>
  772. <instance-parameter name="auth" transfer-ownership="none">
  773. <doc xml:space="preserve">a #SoupAuth</doc>
  774. <type name="Auth" c:type="SoupAuth*"/>
  775. </instance-parameter>
  776. <parameter name="source_uri" transfer-ownership="none">
  777. <doc xml:space="preserve">the URI of the request that @auth was generated in
  778. response to.</doc>
  779. <type name="URI" c:type="SoupURI*"/>
  780. </parameter>
  781. </parameters>
  782. </virtual-method>
  783. <virtual-method name="is_authenticated" invoker="is_authenticated">
  784. <doc xml:space="preserve">Tests if @auth has been given a username and password</doc>
  785. <return-value transfer-ownership="none">
  786. <doc xml:space="preserve">%TRUE if @auth has been given a username and password</doc>
  787. <type name="gboolean" c:type="gboolean"/>
  788. </return-value>
  789. <parameters>
  790. <instance-parameter name="auth" transfer-ownership="none">
  791. <doc xml:space="preserve">a #SoupAuth</doc>
  792. <type name="Auth" c:type="SoupAuth*"/>
  793. </instance-parameter>
  794. </parameters>
  795. </virtual-method>
  796. <virtual-method name="is_ready" invoker="is_ready" version="2.42">
  797. <doc xml:space="preserve">Tests if @auth is ready to make a request for @msg with. For most
  798. auths, this is equivalent to soup_auth_is_authenticated(), but for
  799. some auth types (eg, NTLM), the auth may be sendable (eg, as an
  800. authentication request) even before it is authenticated.</doc>
  801. <return-value transfer-ownership="none">
  802. <doc xml:space="preserve">%TRUE if @auth is ready to make a request with.</doc>
  803. <type name="gboolean" c:type="gboolean"/>
  804. </return-value>
  805. <parameters>
  806. <instance-parameter name="auth" transfer-ownership="none">
  807. <doc xml:space="preserve">a #SoupAuth</doc>
  808. <type name="Auth" c:type="SoupAuth*"/>
  809. </instance-parameter>
  810. <parameter name="msg" transfer-ownership="none">
  811. <doc xml:space="preserve">a #SoupMessage</doc>
  812. <type name="Message" c:type="SoupMessage*"/>
  813. </parameter>
  814. </parameters>
  815. </virtual-method>
  816. <virtual-method name="update" invoker="update">
  817. <doc xml:space="preserve">Updates @auth with the information from @msg and @auth_header,
  818. possibly un-authenticating it. As with soup_auth_new(), this is
  819. normally only used by #SoupSession.</doc>
  820. <return-value transfer-ownership="none">
  821. <doc xml:space="preserve">%TRUE if @auth is still a valid (but potentially
  822. unauthenticated) #SoupAuth. %FALSE if something about @auth_params
  823. could not be parsed or incorporated into @auth at all.</doc>
  824. <type name="gboolean" c:type="gboolean"/>
  825. </return-value>
  826. <parameters>
  827. <instance-parameter name="auth" transfer-ownership="none">
  828. <doc xml:space="preserve">a #SoupAuth</doc>
  829. <type name="Auth" c:type="SoupAuth*"/>
  830. </instance-parameter>
  831. <parameter name="msg" transfer-ownership="none">
  832. <doc xml:space="preserve">the #SoupMessage @auth is being updated for</doc>
  833. <type name="Message" c:type="SoupMessage*"/>
  834. </parameter>
  835. <parameter name="auth_header" transfer-ownership="none">
  836. <doc xml:space="preserve">the WWW-Authenticate/Proxy-Authenticate header</doc>
  837. <type name="GLib.HashTable" c:type="GHashTable*">
  838. <type name="gpointer" c:type="gpointer"/>
  839. <type name="gpointer" c:type="gpointer"/>
  840. </type>
  841. </parameter>
  842. </parameters>
  843. </virtual-method>
  844. <method name="authenticate" c:identifier="soup_auth_authenticate">
  845. <doc xml:space="preserve">Call this on an auth to authenticate it; normally this will cause
  846. the auth's message to be requeued with the new authentication info.</doc>
  847. <return-value transfer-ownership="none">
  848. <type name="none" c:type="void"/>
  849. </return-value>
  850. <parameters>
  851. <instance-parameter name="auth" transfer-ownership="none">
  852. <doc xml:space="preserve">a #SoupAuth</doc>
  853. <type name="Auth" c:type="SoupAuth*"/>
  854. </instance-parameter>
  855. <parameter name="username" transfer-ownership="none">
  856. <doc xml:space="preserve">the username provided by the user or client</doc>
  857. <type name="utf8" c:type="const char*"/>
  858. </parameter>
  859. <parameter name="password" transfer-ownership="none">
  860. <doc xml:space="preserve">the password provided by the user or client</doc>
  861. <type name="utf8" c:type="const char*"/>
  862. </parameter>
  863. </parameters>
  864. </method>
  865. <method name="can_authenticate"
  866. c:identifier="soup_auth_can_authenticate"
  867. version="2.54">
  868. <doc xml:space="preserve">Tests if @auth is able to authenticate by providing credentials to the
  869. soup_auth_authenticate().</doc>
  870. <return-value transfer-ownership="none">
  871. <doc xml:space="preserve">%TRUE if @auth is able to accept credentials.</doc>
  872. <type name="gboolean" c:type="gboolean"/>
  873. </return-value>
  874. <parameters>
  875. <instance-parameter name="auth" transfer-ownership="none">
  876. <doc xml:space="preserve">a #SoupAuth</doc>
  877. <type name="Auth" c:type="SoupAuth*"/>
  878. </instance-parameter>
  879. </parameters>
  880. </method>
  881. <method name="free_protection_space"
  882. c:identifier="soup_auth_free_protection_space"
  883. introspectable="0">
  884. <doc xml:space="preserve">Frees @space.</doc>
  885. <return-value transfer-ownership="none">
  886. <type name="none" c:type="void"/>
  887. </return-value>
  888. <parameters>
  889. <instance-parameter name="auth" transfer-ownership="none">
  890. <doc xml:space="preserve">a #SoupAuth</doc>
  891. <type name="Auth" c:type="SoupAuth*"/>
  892. </instance-parameter>
  893. <parameter name="space" transfer-ownership="none">
  894. <doc xml:space="preserve">the return value from soup_auth_get_protection_space()</doc>
  895. <type name="GLib.SList" c:type="GSList*">
  896. <type name="gpointer" c:type="gpointer"/>
  897. </type>
  898. </parameter>
  899. </parameters>
  900. </method>
  901. <method name="get_authorization"
  902. c:identifier="soup_auth_get_authorization">
  903. <doc xml:space="preserve">Generates an appropriate "Authorization" header for @msg. (The
  904. session will only call this if soup_auth_is_authenticated()
  905. returned %TRUE.)</doc>
  906. <return-value transfer-ownership="full">
  907. <doc xml:space="preserve">the "Authorization" header, which must be freed.</doc>
  908. <type name="utf8" c:type="char*"/>
  909. </return-value>
  910. <parameters>
  911. <instance-parameter name="auth" transfer-ownership="none">
  912. <doc xml:space="preserve">a #SoupAuth</doc>
  913. <type name="Auth" c:type="SoupAuth*"/>
  914. </instance-parameter>
  915. <parameter name="msg" transfer-ownership="none">
  916. <doc xml:space="preserve">the #SoupMessage to be authorized</doc>
  917. <type name="Message" c:type="SoupMessage*"/>
  918. </parameter>
  919. </parameters>
  920. </method>
  921. <method name="get_host" c:identifier="soup_auth_get_host">
  922. <doc xml:space="preserve">Returns the host that @auth is associated with.</doc>
  923. <return-value transfer-ownership="none">
  924. <doc xml:space="preserve">the hostname</doc>
  925. <type name="utf8" c:type="const char*"/>
  926. </return-value>
  927. <parameters>
  928. <instance-parameter name="auth" transfer-ownership="none">
  929. <doc xml:space="preserve">a #SoupAuth</doc>
  930. <type name="Auth" c:type="SoupAuth*"/>
  931. </instance-parameter>
  932. </parameters>
  933. </method>
  934. <method name="get_info" c:identifier="soup_auth_get_info">
  935. <doc xml:space="preserve">Gets an opaque identifier for @auth, for use as a hash key or the
  936. like. #SoupAuth objects from the same server with the same
  937. identifier refer to the same authentication domain (eg, the URLs
  938. associated with them take the same usernames and passwords).</doc>
  939. <return-value transfer-ownership="full">
  940. <doc xml:space="preserve">the identifier</doc>
  941. <type name="utf8" c:type="char*"/>
  942. </return-value>
  943. <parameters>
  944. <instance-parameter name="auth" transfer-ownership="none">
  945. <doc xml:space="preserve">a #SoupAuth</doc>
  946. <type name="Auth" c:type="SoupAuth*"/>
  947. </instance-parameter>
  948. </parameters>
  949. </method>
  950. <method name="get_protection_space"
  951. c:identifier="soup_auth_get_protection_space">
  952. <doc xml:space="preserve">Returns a list of paths on the server which @auth extends over.
  953. (All subdirectories of these paths are also assumed to be part
  954. of @auth's protection space, unless otherwise discovered not to
  955. be.)</doc>
  956. <return-value transfer-ownership="full">
  957. <doc xml:space="preserve">the list of
  958. paths, which can be freed with soup_auth_free_protection_space().</doc>
  959. <type name="GLib.SList" c:type="GSList*">
  960. <type name="utf8"/>
  961. </type>
  962. </return-value>
  963. <parameters>
  964. <instance-parameter name="auth" transfer-ownership="none">
  965. <doc xml:space="preserve">a #SoupAuth</doc>
  966. <type name="Auth" c:type="SoupAuth*"/>
  967. </instance-parameter>
  968. <parameter name="source_uri" transfer-ownership="none">
  969. <doc xml:space="preserve">the URI of the request that @auth was generated in
  970. response to.</doc>
  971. <type name="URI" c:type="SoupURI*"/>
  972. </parameter>
  973. </parameters>
  974. </method>
  975. <method name="get_realm" c:identifier="soup_auth_get_realm">
  976. <doc xml:space="preserve">Returns @auth's realm. This is an identifier that distinguishes
  977. separate authentication spaces on a given server, and may be some
  978. string that is meaningful to the user. (Although it is probably not
  979. localized.)</doc>
  980. <return-value transfer-ownership="none">
  981. <doc xml:space="preserve">the realm name</doc>
  982. <type name="utf8" c:type="const char*"/>
  983. </return-value>
  984. <parameters>
  985. <instance-parameter name="auth" transfer-ownership="none">
  986. <doc xml:space="preserve">a #SoupAuth</doc>
  987. <type name="Auth" c:type="SoupAuth*"/>
  988. </instance-parameter>
  989. </parameters>
  990. </method>
  991. <method name="get_saved_password"
  992. c:identifier="soup_auth_get_saved_password">
  993. <return-value transfer-ownership="none">
  994. <type name="utf8" c:type="const char*"/>
  995. </return-value>
  996. <parameters>
  997. <instance-parameter name="auth" transfer-ownership="none">
  998. <type name="Auth" c:type="SoupAuth*"/>
  999. </instance-parameter>
  1000. <parameter name="user" transfer-ownership="none">
  1001. <type name="utf8" c:type="const char*"/>
  1002. </parameter>
  1003. </parameters>
  1004. </method>
  1005. <method name="get_saved_users" c:identifier="soup_auth_get_saved_users">
  1006. <return-value transfer-ownership="full">
  1007. <type name="GLib.SList" c:type="GSList*">
  1008. <type name="utf8"/>
  1009. </type>
  1010. </return-value>
  1011. <parameters>
  1012. <instance-parameter name="auth" transfer-ownership="none">
  1013. <type name="Auth" c:type="SoupAuth*"/>
  1014. </instance-parameter>
  1015. </parameters>
  1016. </method>
  1017. <method name="get_scheme_name" c:identifier="soup_auth_get_scheme_name">
  1018. <doc xml:space="preserve">Returns @auth's scheme name. (Eg, "Basic", "Digest", or "NTLM")</doc>
  1019. <return-value transfer-ownership="none">
  1020. <doc xml:space="preserve">the scheme name</doc>
  1021. <type name="utf8" c:type="const char*"/>
  1022. </return-value>
  1023. <parameters>
  1024. <instance-parameter name="auth" transfer-ownership="none">
  1025. <doc xml:space="preserve">a #SoupAuth</doc>
  1026. <type name="Auth" c:type="SoupAuth*"/>
  1027. </instance-parameter>
  1028. </parameters>
  1029. </method>
  1030. <method name="has_saved_password"
  1031. c:identifier="soup_auth_has_saved_password">
  1032. <return-value transfer-ownership="none">
  1033. <type name="none" c:type="void"/>
  1034. </return-value>
  1035. <parameters>
  1036. <instance-parameter name="auth" transfer-ownership="none">
  1037. <type name="Auth" c:type="SoupAuth*"/>
  1038. </instance-parameter>
  1039. <parameter name="username" transfer-ownership="none">
  1040. <type name="utf8" c:type="const char*"/>
  1041. </parameter>
  1042. <parameter name="password" transfer-ownership="none">
  1043. <type name="utf8" c:type="const char*"/>
  1044. </parameter>
  1045. </parameters>
  1046. </method>
  1047. <method name="is_authenticated"
  1048. c:identifier="soup_auth_is_authenticated">
  1049. <doc xml:space="preserve">Tests if @auth has been given a username and password</doc>
  1050. <return-value transfer-ownership="none">
  1051. <doc xml:space="preserve">%TRUE if @auth has been given a username and password</doc>
  1052. <type name="gboolean" c:type="gboolean"/>
  1053. </return-value>
  1054. <parameters>
  1055. <instance-parameter name="auth" transfer-ownership="none">
  1056. <doc xml:space="preserve">a #SoupAuth</doc>
  1057. <type name="Auth" c:type="SoupAuth*"/>
  1058. </instance-parameter>
  1059. </parameters>
  1060. </method>
  1061. <method name="is_for_proxy" c:identifier="soup_auth_is_for_proxy">
  1062. <doc xml:space="preserve">Tests whether or not @auth is associated with a proxy server rather
  1063. than an "origin" server.</doc>
  1064. <return-value transfer-ownership="none">
  1065. <doc xml:space="preserve">%TRUE or %FALSE</doc>
  1066. <type name="gboolean" c:type="gboolean"/>
  1067. </return-value>
  1068. <parameters>
  1069. <instance-parameter name="auth" transfer-ownership="none">
  1070. <doc xml:space="preserve">a #SoupAuth</doc>
  1071. <type name="Auth" c:type="SoupAuth*"/>
  1072. </instance-parameter>
  1073. </parameters>
  1074. </method>
  1075. <method name="is_ready" c:identifier="soup_auth_is_ready" version="2.42">
  1076. <doc xml:space="preserve">Tests if @auth is ready to make a request for @msg with. For most
  1077. auths, this is equivalent to soup_auth_is_authenticated(), but for
  1078. some auth types (eg, NTLM), the auth may be sendable (eg, as an
  1079. authentication request) even before it is authenticated.</doc>
  1080. <return-value transfer-ownership="none">
  1081. <doc xml:space="preserve">%TRUE if @auth is ready to make a request with.</doc>
  1082. <type name="gboolean" c:type="gboolean"/>
  1083. </return-value>
  1084. <parameters>
  1085. <instance-parameter name="auth" transfer-ownership="none">
  1086. <doc xml:space="preserve">a #SoupAuth</doc>
  1087. <type name="Auth" c:type="SoupAuth*"/>
  1088. </instance-parameter>
  1089. <parameter name="msg" transfer-ownership="none">
  1090. <doc xml:space="preserve">a #SoupMessage</doc>
  1091. <type name="Message" c:type="SoupMessage*"/>
  1092. </parameter>
  1093. </parameters>
  1094. </method>
  1095. <method name="save_password" c:identifier="soup_auth_save_password">
  1096. <return-value transfer-ownership="none">
  1097. <type name="none" c:type="void"/>
  1098. </return-value>
  1099. <parameters>
  1100. <instance-parameter name="auth" transfer-ownership="none">
  1101. <type name="Auth" c:type="SoupAuth*"/>
  1102. </instance-parameter>
  1103. <parameter name="username" transfer-ownership="none">
  1104. <type name="utf8" c:type="const char*"/>
  1105. </parameter>
  1106. <parameter name="password" transfer-ownership="none">
  1107. <type name="utf8" c:type="const char*"/>
  1108. </parameter>
  1109. </parameters>
  1110. </method>
  1111. <method name="update" c:identifier="soup_auth_update">
  1112. <doc xml:space="preserve">Updates @auth with the information from @msg and @auth_header,
  1113. possibly un-authenticating it. As with soup_auth_new(), this is
  1114. normally only used by #SoupSession.</doc>
  1115. <return-value transfer-ownership="none">
  1116. <doc xml:space="preserve">%TRUE if @auth is still a valid (but potentially
  1117. unauthenticated) #SoupAuth. %FALSE if something about @auth_params
  1118. could not be parsed or incorporated into @auth at all.</doc>
  1119. <type name="gboolean" c:type="gboolean"/>
  1120. </return-value>
  1121. <parameters>
  1122. <instance-parameter name="auth" transfer-ownership="none">
  1123. <doc xml:space="preserve">a #SoupAuth</doc>
  1124. <type name="Auth" c:type="SoupAuth*"/>
  1125. </instance-parameter>
  1126. <parameter name="msg" transfer-ownership="none">
  1127. <doc xml:space="preserve">the #SoupMessage @auth is being updated for</doc>
  1128. <type name="Message" c:type="SoupMessage*"/>
  1129. </parameter>
  1130. <parameter name="auth_header" transfer-ownership="none">
  1131. <doc xml:space="preserve">the WWW-Authenticate/Proxy-Authenticate header</doc>
  1132. <type name="utf8" c:type="const char*"/>
  1133. </parameter>
  1134. </parameters>
  1135. </method>
  1136. <property name="host" writable="1" transfer-ownership="none">
  1137. <type name="utf8" c:type="gchar*"/>
  1138. </property>
  1139. <property name="is-authenticated" transfer-ownership="none">
  1140. <type name="gboolean" c:type="gboolean"/>
  1141. </property>
  1142. <property name="is-for-proxy" writable="1" transfer-ownership="none">
  1143. <type name="gboolean" c:type="gboolean"/>
  1144. </property>
  1145. <property name="realm" writable="1" transfer-ownership="none">
  1146. <type name="utf8" c:type="gchar*"/>
  1147. </property>
  1148. <property name="scheme-name" transfer-ownership="none">
  1149. <type name="utf8" c:type="gchar*"/>
  1150. </property>
  1151. <field name="parent">
  1152. <type name="GObject.Object" c:type="GObject"/>
  1153. </field>
  1154. <field name="realm">
  1155. <type name="utf8" c:type="char*"/>
  1156. </field>
  1157. </class>
  1158. <class name="AuthBasic"
  1159. c:symbol-prefix="auth_basic"
  1160. parent="Auth"
  1161. glib:type-name="SoupAuthBasic"
  1162. glib:get-type="soup_auth_basic_get_type">
  1163. </class>
  1164. <record name="AuthClass"
  1165. c:type="SoupAuthClass"
  1166. glib:is-gtype-struct-for="Auth">
  1167. <field name="parent_class">
  1168. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  1169. </field>
  1170. <field name="scheme_name">
  1171. <type name="utf8" c:type="const char*"/>
  1172. </field>
  1173. <field name="strength">
  1174. <type name="guint" c:type="guint"/>
  1175. </field>
  1176. <field name="update">
  1177. <callback name="update">
  1178. <return-value transfer-ownership="none">
  1179. <doc xml:space="preserve">%TRUE if @auth is still a valid (but potentially
  1180. unauthenticated) #SoupAuth. %FALSE if something about @auth_params
  1181. could not be parsed or incorporated into @auth at all.</doc>
  1182. <type name="gboolean" c:type="gboolean"/>
  1183. </return-value>
  1184. <parameters>
  1185. <parameter name="auth" transfer-ownership="none">
  1186. <doc xml:space="preserve">a #SoupAuth</doc>
  1187. <type name="Auth" c:type="SoupAuth*"/>
  1188. </parameter>
  1189. <parameter name="msg" transfer-ownership="none">
  1190. <doc xml:space="preserve">the #SoupMessage @auth is being updated for</doc>
  1191. <type name="Message" c:type="SoupMessage*"/>
  1192. </parameter>
  1193. <parameter name="auth_header" transfer-ownership="none">
  1194. <doc xml:space="preserve">the WWW-Authenticate/Proxy-Authenticate header</doc>
  1195. <type name="GLib.HashTable" c:type="GHashTable*">
  1196. <type name="gpointer" c:type="gpointer"/>
  1197. <type name="gpointer" c:type="gpointer"/>
  1198. </type>
  1199. </parameter>
  1200. </parameters>
  1201. </callback>
  1202. </field>
  1203. <field name="get_protection_space">
  1204. <callback name="get_protection_space">
  1205. <return-value transfer-ownership="full">
  1206. <doc xml:space="preserve">the list of
  1207. paths, which can be freed with soup_auth_free_protection_space().</doc>
  1208. <type name="GLib.SList" c:type="GSList*">
  1209. <type name="utf8"/>
  1210. </type>
  1211. </return-value>
  1212. <parameters>
  1213. <parameter name="auth" transfer-ownership="none">
  1214. <doc xml:space="preserve">a #SoupAuth</doc>
  1215. <type name="Auth" c:type="SoupAuth*"/>
  1216. </parameter>
  1217. <parameter name="source_uri" transfer-ownership="none">
  1218. <doc xml:space="preserve">the URI of the request that @auth was generated in
  1219. response to.</doc>
  1220. <type name="URI" c:type="SoupURI*"/>
  1221. </parameter>
  1222. </parameters>
  1223. </callback>
  1224. </field>
  1225. <field name="authenticate">
  1226. <callback name="authenticate">
  1227. <return-value transfer-ownership="none">
  1228. <type name="none" c:type="void"/>
  1229. </return-value>
  1230. <parameters>
  1231. <parameter name="auth" transfer-ownership="none">
  1232. <doc xml:space="preserve">a #SoupAuth</doc>
  1233. <type name="Auth" c:type="SoupAuth*"/>
  1234. </parameter>
  1235. <parameter name="username" transfer-ownership="none">
  1236. <doc xml:space="preserve">the username provided by the user or client</doc>
  1237. <type name="utf8" c:type="const char*"/>
  1238. </parameter>
  1239. <parameter name="password" transfer-ownership="none">
  1240. <doc xml:space="preserve">the password provided by the user or client</doc>
  1241. <type name="utf8" c:type="const char*"/>
  1242. </parameter>
  1243. </parameters>
  1244. </callback>
  1245. </field>
  1246. <field name="is_authenticated">
  1247. <callback name="is_authenticated">
  1248. <return-value transfer-ownership="none">
  1249. <doc xml:space="preserve">%TRUE if @auth has been given a username and password</doc>
  1250. <type name="gboolean" c:type="gboolean"/>
  1251. </return-value>
  1252. <parameters>
  1253. <parameter name="auth" transfer-ownership="none">
  1254. <doc xml:space="preserve">a #SoupAuth</doc>
  1255. <type name="Auth" c:type="SoupAuth*"/>
  1256. </parameter>
  1257. </parameters>
  1258. </callback>
  1259. </field>
  1260. <field name="get_authorization">
  1261. <callback name="get_authorization">
  1262. <return-value transfer-ownership="full">
  1263. <doc xml:space="preserve">the "Authorization" header, which must be freed.</doc>
  1264. <type name="utf8" c:type="char*"/>
  1265. </return-value>
  1266. <parameters>
  1267. <parameter name="auth" transfer-ownership="none">
  1268. <doc xml:space="preserve">a #SoupAuth</doc>
  1269. <type name="Auth" c:type="SoupAuth*"/>
  1270. </parameter>
  1271. <parameter name="msg" transfer-ownership="none">
  1272. <doc xml:space="preserve">the #SoupMessage to be authorized</doc>
  1273. <type name="Message" c:type="SoupMessage*"/>
  1274. </parameter>
  1275. </parameters>
  1276. </callback>
  1277. </field>
  1278. <field name="is_ready">
  1279. <callback name="is_ready">
  1280. <return-value transfer-ownership="none">
  1281. <doc xml:space="preserve">%TRUE if @auth is ready to make a request with.</doc>
  1282. <type name="gboolean" c:type="gboolean"/>
  1283. </return-value>
  1284. <parameters>
  1285. <parameter name="auth" transfer-ownership="none">
  1286. <doc xml:space="preserve">a #SoupAuth</doc>
  1287. <type name="Auth" c:type="SoupAuth*"/>
  1288. </parameter>
  1289. <parameter name="msg" transfer-ownership="none">
  1290. <doc xml:space="preserve">a #SoupMessage</doc>
  1291. <type name="Message" c:type="SoupMessage*"/>
  1292. </parameter>
  1293. </parameters>
  1294. </callback>
  1295. </field>
  1296. <field name="can_authenticate">
  1297. <callback name="can_authenticate">
  1298. <return-value transfer-ownership="none">
  1299. <doc xml:space="preserve">%TRUE if @auth is able to accept credentials.</doc>
  1300. <type name="gboolean" c:type="gboolean"/>
  1301. </return-value>
  1302. <parameters>
  1303. <parameter name="auth" transfer-ownership="none">
  1304. <doc xml:space="preserve">a #SoupAuth</doc>
  1305. <type name="Auth" c:type="SoupAuth*"/>
  1306. </parameter>
  1307. </parameters>
  1308. </callback>
  1309. </field>
  1310. <field name="_libsoup_reserved3" introspectable="0">
  1311. <callback name="_libsoup_reserved3">
  1312. <return-value transfer-ownership="none">
  1313. <type name="none" c:type="void"/>
  1314. </return-value>
  1315. </callback>
  1316. </field>
  1317. <field name="_libsoup_reserved4" introspectable="0">
  1318. <callback name="_libsoup_reserved4">
  1319. <return-value transfer-ownership="none">
  1320. <type name="none" c:type="void"/>
  1321. </return-value>
  1322. </callback>
  1323. </field>
  1324. </record>
  1325. <class name="AuthDigest"
  1326. c:symbol-prefix="auth_digest"
  1327. parent="Auth"
  1328. glib:type-name="SoupAuthDigest"
  1329. glib:get-type="soup_auth_digest_get_type">
  1330. </class>
  1331. <class name="AuthDomain"
  1332. c:symbol-prefix="auth_domain"
  1333. c:type="SoupAuthDomain"
  1334. parent="GObject.Object"
  1335. abstract="1"
  1336. glib:type-name="SoupAuthDomain"
  1337. glib:get-type="soup_auth_domain_get_type"
  1338. glib:type-struct="AuthDomainClass">
  1339. <virtual-method name="accepts">
  1340. <return-value transfer-ownership="full">
  1341. <type name="utf8" c:type="char*"/>
  1342. </return-value>
  1343. <parameters>
  1344. <instance-parameter name="domain" transfer-ownership="none">
  1345. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1346. </instance-parameter>
  1347. <parameter name="msg" transfer-ownership="none">
  1348. <type name="Message" c:type="SoupMessage*"/>
  1349. </parameter>
  1350. <parameter name="header" transfer-ownership="none">
  1351. <type name="utf8" c:type="const char*"/>
  1352. </parameter>
  1353. </parameters>
  1354. </virtual-method>
  1355. <virtual-method name="challenge">
  1356. <return-value transfer-ownership="full">
  1357. <type name="utf8" c:type="char*"/>
  1358. </return-value>
  1359. <parameters>
  1360. <instance-parameter name="domain" transfer-ownership="none">
  1361. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1362. </instance-parameter>
  1363. <parameter name="msg" transfer-ownership="none">
  1364. <type name="Message" c:type="SoupMessage*"/>
  1365. </parameter>
  1366. </parameters>
  1367. </virtual-method>
  1368. <virtual-method name="check_password" invoker="check_password">
  1369. <doc xml:space="preserve">Checks if @msg authenticates to @domain via @username and
  1370. @password. This would normally be called from a
  1371. #SoupAuthDomainGenericAuthCallback.</doc>
  1372. <return-value transfer-ownership="none">
  1373. <doc xml:space="preserve">whether or not the message is authenticated</doc>
  1374. <type name="gboolean" c:type="gboolean"/>
  1375. </return-value>
  1376. <parameters>
  1377. <instance-parameter name="domain" transfer-ownership="none">
  1378. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1379. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1380. </instance-parameter>
  1381. <parameter name="msg" transfer-ownership="none">
  1382. <doc xml:space="preserve">a #SoupMessage</doc>
  1383. <type name="Message" c:type="SoupMessage*"/>
  1384. </parameter>
  1385. <parameter name="username" transfer-ownership="none">
  1386. <doc xml:space="preserve">a username</doc>
  1387. <type name="utf8" c:type="const char*"/>
  1388. </parameter>
  1389. <parameter name="password" transfer-ownership="none">
  1390. <doc xml:space="preserve">a password</doc>
  1391. <type name="utf8" c:type="const char*"/>
  1392. </parameter>
  1393. </parameters>
  1394. </virtual-method>
  1395. <method name="accepts" c:identifier="soup_auth_domain_accepts">
  1396. <doc xml:space="preserve">Checks if @msg contains appropriate authorization for @domain to
  1397. accept it. Mirroring soup_auth_domain_covers(), this does not check
  1398. whether or not @domain &lt;emphasis&gt;cares&lt;/emphasis&gt; if @msg is
  1399. authorized.
  1400. This is used by #SoupServer internally and is probably of no use to
  1401. anyone else.</doc>
  1402. <return-value transfer-ownership="full" nullable="1">
  1403. <doc xml:space="preserve">the username that @msg has authenticated
  1404. as, if in fact it has authenticated. %NULL otherwise.</doc>
  1405. <type name="utf8" c:type="char*"/>
  1406. </return-value>
  1407. <parameters>
  1408. <instance-parameter name="domain" transfer-ownership="none">
  1409. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1410. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1411. </instance-parameter>
  1412. <parameter name="msg" transfer-ownership="none">
  1413. <doc xml:space="preserve">a #SoupMessage</doc>
  1414. <type name="Message" c:type="SoupMessage*"/>
  1415. </parameter>
  1416. </parameters>
  1417. </method>
  1418. <method name="add_path" c:identifier="soup_auth_domain_add_path">
  1419. <doc xml:space="preserve">Adds @path to @domain, such that requests under @path on @domain's
  1420. server will require authentication (unless overridden by
  1421. soup_auth_domain_remove_path() or soup_auth_domain_set_filter()).
  1422. You can also add paths by setting the %SOUP_AUTH_DOMAIN_ADD_PATH
  1423. property, which can also be used to add one or more paths at
  1424. construct time.</doc>
  1425. <return-value transfer-ownership="none">
  1426. <type name="none" c:type="void"/>
  1427. </return-value>
  1428. <parameters>
  1429. <instance-parameter name="domain" transfer-ownership="none">
  1430. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1431. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1432. </instance-parameter>
  1433. <parameter name="path" transfer-ownership="none">
  1434. <doc xml:space="preserve">the path to add to @domain</doc>
  1435. <type name="utf8" c:type="const char*"/>
  1436. </parameter>
  1437. </parameters>
  1438. </method>
  1439. <method name="basic_set_auth_callback"
  1440. c:identifier="soup_auth_domain_basic_set_auth_callback">
  1441. <doc xml:space="preserve">Sets the callback that @domain will use to authenticate incoming
  1442. requests. For each request containing authorization, @domain will
  1443. invoke the callback, and then either accept or reject the request
  1444. based on @callback's return value.
  1445. You can also set the auth callback by setting the
  1446. %SOUP_AUTH_DOMAIN_BASIC_AUTH_CALLBACK and
  1447. %SOUP_AUTH_DOMAIN_BASIC_AUTH_DATA properties, which can also be
  1448. used to set the callback at construct time.</doc>
  1449. <return-value transfer-ownership="none">
  1450. <type name="none" c:type="void"/>
  1451. </return-value>
  1452. <parameters>
  1453. <instance-parameter name="domain" transfer-ownership="none">
  1454. <doc xml:space="preserve">the domain</doc>
  1455. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1456. </instance-parameter>
  1457. <parameter name="callback"
  1458. transfer-ownership="none"
  1459. scope="notified"
  1460. closure="1"
  1461. destroy="2">
  1462. <doc xml:space="preserve">the callback</doc>
  1463. <type name="AuthDomainBasicAuthCallback"
  1464. c:type="SoupAuthDomainBasicAuthCallback"/>
  1465. </parameter>
  1466. <parameter name="user_data"
  1467. transfer-ownership="none"
  1468. nullable="1"
  1469. allow-none="1">
  1470. <doc xml:space="preserve">data to pass to @auth_callback</doc>
  1471. <type name="gpointer" c:type="gpointer"/>
  1472. </parameter>
  1473. <parameter name="dnotify" transfer-ownership="none" scope="async">
  1474. <doc xml:space="preserve">destroy notifier to free @user_data when @domain
  1475. is destroyed</doc>
  1476. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  1477. </parameter>
  1478. </parameters>
  1479. </method>
  1480. <method name="challenge" c:identifier="soup_auth_domain_challenge">
  1481. <doc xml:space="preserve">Adds a "WWW-Authenticate" or "Proxy-Authenticate" header to @msg,
  1482. requesting that the client authenticate, and sets @msg's status
  1483. accordingly.
  1484. This is used by #SoupServer internally and is probably of no use to
  1485. anyone else.</doc>
  1486. <return-value transfer-ownership="none">
  1487. <type name="none" c:type="void"/>
  1488. </return-value>
  1489. <parameters>
  1490. <instance-parameter name="domain" transfer-ownership="none">
  1491. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1492. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1493. </instance-parameter>
  1494. <parameter name="msg" transfer-ownership="none">
  1495. <doc xml:space="preserve">a #SoupMessage</doc>
  1496. <type name="Message" c:type="SoupMessage*"/>
  1497. </parameter>
  1498. </parameters>
  1499. </method>
  1500. <method name="check_password"
  1501. c:identifier="soup_auth_domain_check_password">
  1502. <doc xml:space="preserve">Checks if @msg authenticates to @domain via @username and
  1503. @password. This would normally be called from a
  1504. #SoupAuthDomainGenericAuthCallback.</doc>
  1505. <return-value transfer-ownership="none">
  1506. <doc xml:space="preserve">whether or not the message is authenticated</doc>
  1507. <type name="gboolean" c:type="gboolean"/>
  1508. </return-value>
  1509. <parameters>
  1510. <instance-parameter name="domain" transfer-ownership="none">
  1511. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1512. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1513. </instance-parameter>
  1514. <parameter name="msg" transfer-ownership="none">
  1515. <doc xml:space="preserve">a #SoupMessage</doc>
  1516. <type name="Message" c:type="SoupMessage*"/>
  1517. </parameter>
  1518. <parameter name="username" transfer-ownership="none">
  1519. <doc xml:space="preserve">a username</doc>
  1520. <type name="utf8" c:type="const char*"/>
  1521. </parameter>
  1522. <parameter name="password" transfer-ownership="none">
  1523. <doc xml:space="preserve">a password</doc>
  1524. <type name="utf8" c:type="const char*"/>
  1525. </parameter>
  1526. </parameters>
  1527. </method>
  1528. <method name="covers" c:identifier="soup_auth_domain_covers">
  1529. <doc xml:space="preserve">Checks if @domain requires @msg to be authenticated (according to
  1530. its paths and filter function). This does not actually look at
  1531. whether @msg &lt;emphasis&gt;is&lt;/emphasis&gt; authenticated, merely whether
  1532. or not it needs to be.
  1533. This is used by #SoupServer internally and is probably of no use to
  1534. anyone else.</doc>
  1535. <return-value transfer-ownership="none">
  1536. <doc xml:space="preserve">%TRUE if @domain requires @msg to be authenticated</doc>
  1537. <type name="gboolean" c:type="gboolean"/>
  1538. </return-value>
  1539. <parameters>
  1540. <instance-parameter name="domain" transfer-ownership="none">
  1541. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1542. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1543. </instance-parameter>
  1544. <parameter name="msg" transfer-ownership="none">
  1545. <doc xml:space="preserve">a #SoupMessage</doc>
  1546. <type name="Message" c:type="SoupMessage*"/>
  1547. </parameter>
  1548. </parameters>
  1549. </method>
  1550. <method name="digest_set_auth_callback"
  1551. c:identifier="soup_auth_domain_digest_set_auth_callback">
  1552. <doc xml:space="preserve">Sets the callback that @domain will use to authenticate incoming
  1553. requests. For each request containing authorization, @domain will
  1554. invoke the callback, and then either accept or reject the request
  1555. based on @callback's return value.
  1556. You can also set the auth callback by setting the
  1557. %SOUP_AUTH_DOMAIN_DIGEST_AUTH_CALLBACK and
  1558. %SOUP_AUTH_DOMAIN_DIGEST_AUTH_DATA properties, which can also be
  1559. used to set the callback at construct time.</doc>
  1560. <return-value transfer-ownership="none">
  1561. <type name="none" c:type="void"/>
  1562. </return-value>
  1563. <parameters>
  1564. <instance-parameter name="domain" transfer-ownership="none">
  1565. <doc xml:space="preserve">the domain</doc>
  1566. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1567. </instance-parameter>
  1568. <parameter name="callback"
  1569. transfer-ownership="none"
  1570. scope="notified"
  1571. closure="1"
  1572. destroy="2">
  1573. <doc xml:space="preserve">the callback</doc>
  1574. <type name="AuthDomainDigestAuthCallback"
  1575. c:type="SoupAuthDomainDigestAuthCallback"/>
  1576. </parameter>
  1577. <parameter name="user_data"
  1578. transfer-ownership="none"
  1579. nullable="1"
  1580. allow-none="1">
  1581. <doc xml:space="preserve">data to pass to @auth_callback</doc>
  1582. <type name="gpointer" c:type="gpointer"/>
  1583. </parameter>
  1584. <parameter name="dnotify" transfer-ownership="none" scope="async">
  1585. <doc xml:space="preserve">destroy notifier to free @user_data when @domain
  1586. is destroyed</doc>
  1587. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  1588. </parameter>
  1589. </parameters>
  1590. </method>
  1591. <method name="get_realm" c:identifier="soup_auth_domain_get_realm">
  1592. <doc xml:space="preserve">Gets the realm name associated with @domain</doc>
  1593. <return-value transfer-ownership="none">
  1594. <doc xml:space="preserve">@domain's realm</doc>
  1595. <type name="utf8" c:type="const char*"/>
  1596. </return-value>
  1597. <parameters>
  1598. <instance-parameter name="domain" transfer-ownership="none">
  1599. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1600. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1601. </instance-parameter>
  1602. </parameters>
  1603. </method>
  1604. <method name="remove_path" c:identifier="soup_auth_domain_remove_path">
  1605. <doc xml:space="preserve">Removes @path from @domain, such that requests under @path on
  1606. @domain's server will NOT require authentication.
  1607. This is not simply an undo-er for soup_auth_domain_add_path(); it
  1608. can be used to "carve out" a subtree that does not require
  1609. authentication inside a hierarchy that does. Note also that unlike
  1610. with soup_auth_domain_add_path(), this cannot be overridden by
  1611. adding a filter, as filters can only bypass authentication that
  1612. would otherwise be required, not require it where it would
  1613. otherwise be unnecessary.
  1614. You can also remove paths by setting the
  1615. %SOUP_AUTH_DOMAIN_REMOVE_PATH property, which can also be used to
  1616. remove one or more paths at construct time.</doc>
  1617. <return-value transfer-ownership="none">
  1618. <type name="none" c:type="void"/>
  1619. </return-value>
  1620. <parameters>
  1621. <instance-parameter name="domain" transfer-ownership="none">
  1622. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1623. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1624. </instance-parameter>
  1625. <parameter name="path" transfer-ownership="none">
  1626. <doc xml:space="preserve">the path to remove from @domain</doc>
  1627. <type name="utf8" c:type="const char*"/>
  1628. </parameter>
  1629. </parameters>
  1630. </method>
  1631. <method name="set_filter" c:identifier="soup_auth_domain_set_filter">
  1632. <doc xml:space="preserve">Adds @filter as an authentication filter to @domain. The filter
  1633. gets a chance to bypass authentication for certain requests that
  1634. would otherwise require it. Eg, it might check the message's path
  1635. in some way that is too complicated to do via the other methods, or
  1636. it might check the message's method, and allow GETs but not PUTs.
  1637. The filter function returns %TRUE if the request should still
  1638. require authentication, or %FALSE if authentication is unnecessary
  1639. for this request.
  1640. To help prevent security holes, your filter should return %TRUE by
  1641. default, and only return %FALSE under specifically-tested
  1642. circumstances, rather than the other way around. Eg, in the example
  1643. above, where you want to authenticate PUTs but not GETs, you should
  1644. check if the method is GET and return %FALSE in that case, and then
  1645. return %TRUE for all other methods (rather than returning %TRUE for
  1646. PUT and %FALSE for all other methods). This way if it turned out
  1647. (now or later) that some paths supported additional methods besides
  1648. GET and PUT, those methods would default to being NOT allowed for
  1649. unauthenticated users.
  1650. You can also set the filter by setting the %SOUP_AUTH_DOMAIN_FILTER
  1651. and %SOUP_AUTH_DOMAIN_FILTER_DATA properties, which can also be
  1652. used to set the filter at construct time.</doc>
  1653. <return-value transfer-ownership="none">
  1654. <type name="none" c:type="void"/>
  1655. </return-value>
  1656. <parameters>
  1657. <instance-parameter name="domain" transfer-ownership="none">
  1658. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1659. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1660. </instance-parameter>
  1661. <parameter name="filter"
  1662. transfer-ownership="none"
  1663. scope="notified"
  1664. closure="1"
  1665. destroy="2">
  1666. <doc xml:space="preserve">the auth filter for @domain</doc>
  1667. <type name="AuthDomainFilter" c:type="SoupAuthDomainFilter"/>
  1668. </parameter>
  1669. <parameter name="filter_data"
  1670. transfer-ownership="none"
  1671. nullable="1"
  1672. allow-none="1">
  1673. <doc xml:space="preserve">data to pass to @filter</doc>
  1674. <type name="gpointer" c:type="gpointer"/>
  1675. </parameter>
  1676. <parameter name="dnotify" transfer-ownership="none" scope="async">
  1677. <doc xml:space="preserve">destroy notifier to free @filter_data when @domain
  1678. is destroyed</doc>
  1679. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  1680. </parameter>
  1681. </parameters>
  1682. </method>
  1683. <method name="set_generic_auth_callback"
  1684. c:identifier="soup_auth_domain_set_generic_auth_callback">
  1685. <doc xml:space="preserve">Sets @auth_callback as an authentication-handling callback for
  1686. @domain. Whenever a request comes in to @domain which cannot be
  1687. authenticated via a domain-specific auth callback (eg,
  1688. #SoupAuthDomainDigestAuthCallback), the generic auth callback
  1689. will be invoked. See #SoupAuthDomainGenericAuthCallback for information
  1690. on what the callback should do.</doc>
  1691. <return-value transfer-ownership="none">
  1692. <type name="none" c:type="void"/>
  1693. </return-value>
  1694. <parameters>
  1695. <instance-parameter name="domain" transfer-ownership="none">
  1696. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1697. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1698. </instance-parameter>
  1699. <parameter name="auth_callback"
  1700. transfer-ownership="none"
  1701. scope="notified"
  1702. closure="1"
  1703. destroy="2">
  1704. <doc xml:space="preserve">the auth callback</doc>
  1705. <type name="AuthDomainGenericAuthCallback"
  1706. c:type="SoupAuthDomainGenericAuthCallback"/>
  1707. </parameter>
  1708. <parameter name="auth_data"
  1709. transfer-ownership="none"
  1710. nullable="1"
  1711. allow-none="1">
  1712. <doc xml:space="preserve">data to pass to @auth_callback</doc>
  1713. <type name="gpointer" c:type="gpointer"/>
  1714. </parameter>
  1715. <parameter name="dnotify" transfer-ownership="none" scope="async">
  1716. <doc xml:space="preserve">destroy notifier to free @auth_data when @domain
  1717. is destroyed</doc>
  1718. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  1719. </parameter>
  1720. </parameters>
  1721. </method>
  1722. <method name="try_generic_auth_callback"
  1723. c:identifier="soup_auth_domain_try_generic_auth_callback">
  1724. <return-value transfer-ownership="none">
  1725. <type name="gboolean" c:type="gboolean"/>
  1726. </return-value>
  1727. <parameters>
  1728. <instance-parameter name="domain" transfer-ownership="none">
  1729. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1730. </instance-parameter>
  1731. <parameter name="msg" transfer-ownership="none">
  1732. <type name="Message" c:type="SoupMessage*"/>
  1733. </parameter>
  1734. <parameter name="username" transfer-ownership="none">
  1735. <type name="utf8" c:type="const char*"/>
  1736. </parameter>
  1737. </parameters>
  1738. </method>
  1739. <property name="add-path"
  1740. readable="0"
  1741. writable="1"
  1742. transfer-ownership="none">
  1743. <type name="utf8" c:type="gchar*"/>
  1744. </property>
  1745. <property name="filter" writable="1" transfer-ownership="none">
  1746. <type name="gpointer" c:type="gpointer"/>
  1747. </property>
  1748. <property name="filter-data" writable="1" transfer-ownership="none">
  1749. <type name="gpointer" c:type="gpointer"/>
  1750. </property>
  1751. <property name="generic-auth-callback"
  1752. writable="1"
  1753. transfer-ownership="none">
  1754. <type name="gpointer" c:type="gpointer"/>
  1755. </property>
  1756. <property name="generic-auth-data"
  1757. writable="1"
  1758. transfer-ownership="none">
  1759. <type name="gpointer" c:type="gpointer"/>
  1760. </property>
  1761. <property name="proxy"
  1762. writable="1"
  1763. construct-only="1"
  1764. transfer-ownership="none">
  1765. <type name="gboolean" c:type="gboolean"/>
  1766. </property>
  1767. <property name="realm"
  1768. writable="1"
  1769. construct-only="1"
  1770. transfer-ownership="none">
  1771. <type name="utf8" c:type="gchar*"/>
  1772. </property>
  1773. <property name="remove-path"
  1774. readable="0"
  1775. writable="1"
  1776. transfer-ownership="none">
  1777. <type name="utf8" c:type="gchar*"/>
  1778. </property>
  1779. <field name="parent">
  1780. <type name="GObject.Object" c:type="GObject"/>
  1781. </field>
  1782. </class>
  1783. <class name="AuthDomainBasic"
  1784. c:symbol-prefix="auth_domain_basic"
  1785. c:type="SoupAuthDomainBasic"
  1786. parent="AuthDomain"
  1787. glib:type-name="SoupAuthDomainBasic"
  1788. glib:get-type="soup_auth_domain_basic_get_type"
  1789. glib:type-struct="AuthDomainBasicClass">
  1790. <constructor name="new"
  1791. c:identifier="soup_auth_domain_basic_new"
  1792. introspectable="0">
  1793. <doc xml:space="preserve">Creates a #SoupAuthDomainBasic. You must set the
  1794. %SOUP_AUTH_DOMAIN_REALM parameter, to indicate the realm name to be
  1795. returned with the authentication challenge to the client. Other
  1796. parameters are optional.</doc>
  1797. <return-value transfer-ownership="full">
  1798. <doc xml:space="preserve">the new #SoupAuthDomain</doc>
  1799. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1800. </return-value>
  1801. <parameters>
  1802. <parameter name="optname1" transfer-ownership="none">
  1803. <doc xml:space="preserve">name of first option, or %NULL</doc>
  1804. <type name="utf8" c:type="const char*"/>
  1805. </parameter>
  1806. <parameter name="..." transfer-ownership="none">
  1807. <doc xml:space="preserve">option name/value pairs</doc>
  1808. <varargs/>
  1809. </parameter>
  1810. </parameters>
  1811. </constructor>
  1812. <property name="auth-callback" writable="1" transfer-ownership="none">
  1813. <type name="gpointer" c:type="gpointer"/>
  1814. </property>
  1815. <property name="auth-data" writable="1" transfer-ownership="none">
  1816. <type name="gpointer" c:type="gpointer"/>
  1817. </property>
  1818. <field name="parent">
  1819. <type name="AuthDomain" c:type="SoupAuthDomain"/>
  1820. </field>
  1821. </class>
  1822. <callback name="AuthDomainBasicAuthCallback"
  1823. c:type="SoupAuthDomainBasicAuthCallback">
  1824. <doc xml:space="preserve">Callback used by #SoupAuthDomainBasic for authentication purposes.
  1825. The application should verify that @username and @password and valid
  1826. and return %TRUE or %FALSE.
  1827. If you are maintaining your own password database (rather than
  1828. using the password to authenticate against some other system like
  1829. PAM or a remote server), you should make sure you know what you are
  1830. doing. In particular, don't store cleartext passwords, or
  1831. easily-computed hashes of cleartext passwords, even if you don't
  1832. care that much about the security of your server, because users
  1833. will frequently use the same password for multiple sites, and so
  1834. compromising any site with a cleartext (or easily-cracked) password
  1835. database may give attackers access to other more-interesting sites
  1836. as well.</doc>
  1837. <return-value transfer-ownership="none">
  1838. <doc xml:space="preserve">%TRUE if @username and @password are valid</doc>
  1839. <type name="gboolean" c:type="gboolean"/>
  1840. </return-value>
  1841. <parameters>
  1842. <parameter name="domain" transfer-ownership="none">
  1843. <doc xml:space="preserve">the domain</doc>
  1844. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1845. </parameter>
  1846. <parameter name="msg" transfer-ownership="none">
  1847. <doc xml:space="preserve">the message being authenticated</doc>
  1848. <type name="Message" c:type="SoupMessage*"/>
  1849. </parameter>
  1850. <parameter name="username" transfer-ownership="none">
  1851. <doc xml:space="preserve">the username provided by the client</doc>
  1852. <type name="utf8" c:type="const char*"/>
  1853. </parameter>
  1854. <parameter name="password" transfer-ownership="none">
  1855. <doc xml:space="preserve">the password provided by the client</doc>
  1856. <type name="utf8" c:type="const char*"/>
  1857. </parameter>
  1858. <parameter name="user_data"
  1859. transfer-ownership="none"
  1860. nullable="1"
  1861. allow-none="1"
  1862. closure="4">
  1863. <doc xml:space="preserve">the data passed to soup_auth_domain_basic_set_auth_callback()</doc>
  1864. <type name="gpointer" c:type="gpointer"/>
  1865. </parameter>
  1866. </parameters>
  1867. </callback>
  1868. <record name="AuthDomainBasicClass"
  1869. c:type="SoupAuthDomainBasicClass"
  1870. glib:is-gtype-struct-for="AuthDomainBasic">
  1871. <field name="parent_class">
  1872. <type name="AuthDomainClass" c:type="SoupAuthDomainClass"/>
  1873. </field>
  1874. <field name="_libsoup_reserved1" introspectable="0">
  1875. <callback name="_libsoup_reserved1">
  1876. <return-value transfer-ownership="none">
  1877. <type name="none" c:type="void"/>
  1878. </return-value>
  1879. </callback>
  1880. </field>
  1881. <field name="_libsoup_reserved2" introspectable="0">
  1882. <callback name="_libsoup_reserved2">
  1883. <return-value transfer-ownership="none">
  1884. <type name="none" c:type="void"/>
  1885. </return-value>
  1886. </callback>
  1887. </field>
  1888. <field name="_libsoup_reserved3" introspectable="0">
  1889. <callback name="_libsoup_reserved3">
  1890. <return-value transfer-ownership="none">
  1891. <type name="none" c:type="void"/>
  1892. </return-value>
  1893. </callback>
  1894. </field>
  1895. <field name="_libsoup_reserved4" introspectable="0">
  1896. <callback name="_libsoup_reserved4">
  1897. <return-value transfer-ownership="none">
  1898. <type name="none" c:type="void"/>
  1899. </return-value>
  1900. </callback>
  1901. </field>
  1902. </record>
  1903. <record name="AuthDomainClass"
  1904. c:type="SoupAuthDomainClass"
  1905. glib:is-gtype-struct-for="AuthDomain">
  1906. <field name="parent_class">
  1907. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  1908. </field>
  1909. <field name="accepts">
  1910. <callback name="accepts">
  1911. <return-value transfer-ownership="full">
  1912. <type name="utf8" c:type="char*"/>
  1913. </return-value>
  1914. <parameters>
  1915. <parameter name="domain" transfer-ownership="none">
  1916. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1917. </parameter>
  1918. <parameter name="msg" transfer-ownership="none">
  1919. <type name="Message" c:type="SoupMessage*"/>
  1920. </parameter>
  1921. <parameter name="header" transfer-ownership="none">
  1922. <type name="utf8" c:type="const char*"/>
  1923. </parameter>
  1924. </parameters>
  1925. </callback>
  1926. </field>
  1927. <field name="challenge">
  1928. <callback name="challenge">
  1929. <return-value transfer-ownership="full">
  1930. <type name="utf8" c:type="char*"/>
  1931. </return-value>
  1932. <parameters>
  1933. <parameter name="domain" transfer-ownership="none">
  1934. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1935. </parameter>
  1936. <parameter name="msg" transfer-ownership="none">
  1937. <type name="Message" c:type="SoupMessage*"/>
  1938. </parameter>
  1939. </parameters>
  1940. </callback>
  1941. </field>
  1942. <field name="check_password">
  1943. <callback name="check_password">
  1944. <return-value transfer-ownership="none">
  1945. <doc xml:space="preserve">whether or not the message is authenticated</doc>
  1946. <type name="gboolean" c:type="gboolean"/>
  1947. </return-value>
  1948. <parameters>
  1949. <parameter name="domain" transfer-ownership="none">
  1950. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  1951. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  1952. </parameter>
  1953. <parameter name="msg" transfer-ownership="none">
  1954. <doc xml:space="preserve">a #SoupMessage</doc>
  1955. <type name="Message" c:type="SoupMessage*"/>
  1956. </parameter>
  1957. <parameter name="username" transfer-ownership="none">
  1958. <doc xml:space="preserve">a username</doc>
  1959. <type name="utf8" c:type="const char*"/>
  1960. </parameter>
  1961. <parameter name="password" transfer-ownership="none">
  1962. <doc xml:space="preserve">a password</doc>
  1963. <type name="utf8" c:type="const char*"/>
  1964. </parameter>
  1965. </parameters>
  1966. </callback>
  1967. </field>
  1968. <field name="_libsoup_reserved2" introspectable="0">
  1969. <callback name="_libsoup_reserved2">
  1970. <return-value transfer-ownership="none">
  1971. <type name="none" c:type="void"/>
  1972. </return-value>
  1973. </callback>
  1974. </field>
  1975. <field name="_libsoup_reserved3" introspectable="0">
  1976. <callback name="_libsoup_reserved3">
  1977. <return-value transfer-ownership="none">
  1978. <type name="none" c:type="void"/>
  1979. </return-value>
  1980. </callback>
  1981. </field>
  1982. <field name="_libsoup_reserved4" introspectable="0">
  1983. <callback name="_libsoup_reserved4">
  1984. <return-value transfer-ownership="none">
  1985. <type name="none" c:type="void"/>
  1986. </return-value>
  1987. </callback>
  1988. </field>
  1989. </record>
  1990. <class name="AuthDomainDigest"
  1991. c:symbol-prefix="auth_domain_digest"
  1992. c:type="SoupAuthDomainDigest"
  1993. parent="AuthDomain"
  1994. glib:type-name="SoupAuthDomainDigest"
  1995. glib:get-type="soup_auth_domain_digest_get_type"
  1996. glib:type-struct="AuthDomainDigestClass">
  1997. <constructor name="new"
  1998. c:identifier="soup_auth_domain_digest_new"
  1999. introspectable="0">
  2000. <doc xml:space="preserve">Creates a #SoupAuthDomainDigest. You must set the
  2001. %SOUP_AUTH_DOMAIN_REALM parameter, to indicate the realm name to be
  2002. returned with the authentication challenge to the client. Other
  2003. parameters are optional.</doc>
  2004. <return-value transfer-ownership="full">
  2005. <doc xml:space="preserve">the new #SoupAuthDomain</doc>
  2006. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  2007. </return-value>
  2008. <parameters>
  2009. <parameter name="optname1" transfer-ownership="none">
  2010. <doc xml:space="preserve">name of first option, or %NULL</doc>
  2011. <type name="utf8" c:type="const char*"/>
  2012. </parameter>
  2013. <parameter name="..." transfer-ownership="none">
  2014. <doc xml:space="preserve">option name/value pairs</doc>
  2015. <varargs/>
  2016. </parameter>
  2017. </parameters>
  2018. </constructor>
  2019. <function name="encode_password"
  2020. c:identifier="soup_auth_domain_digest_encode_password">
  2021. <doc xml:space="preserve">Encodes the username/realm/password triplet for Digest
  2022. authentication. (That is, it returns a stringified MD5 hash of
  2023. @username, @realm, and @password concatenated together). This is
  2024. the form that is needed as the return value of
  2025. #SoupAuthDomainDigest's auth handler.
  2026. For security reasons, you should store the encoded hash, rather
  2027. than storing the cleartext password itself and calling this method
  2028. only when you need to verify it. This way, if your server is
  2029. compromised, the attackers will not gain access to cleartext
  2030. passwords which might also be usable at other sites. (Note also
  2031. that the encoded password returned by this method is identical to
  2032. the encoded password stored in an Apache .htdigest file.)</doc>
  2033. <return-value transfer-ownership="full">
  2034. <doc xml:space="preserve">the encoded password</doc>
  2035. <type name="utf8" c:type="char*"/>
  2036. </return-value>
  2037. <parameters>
  2038. <parameter name="username" transfer-ownership="none">
  2039. <doc xml:space="preserve">a username</doc>
  2040. <type name="utf8" c:type="const char*"/>
  2041. </parameter>
  2042. <parameter name="realm" transfer-ownership="none">
  2043. <doc xml:space="preserve">an auth realm name</doc>
  2044. <type name="utf8" c:type="const char*"/>
  2045. </parameter>
  2046. <parameter name="password" transfer-ownership="none">
  2047. <doc xml:space="preserve">the password for @username in @realm</doc>
  2048. <type name="utf8" c:type="const char*"/>
  2049. </parameter>
  2050. </parameters>
  2051. </function>
  2052. <property name="auth-callback" writable="1" transfer-ownership="none">
  2053. <type name="gpointer" c:type="gpointer"/>
  2054. </property>
  2055. <property name="auth-data" writable="1" transfer-ownership="none">
  2056. <type name="gpointer" c:type="gpointer"/>
  2057. </property>
  2058. <field name="parent">
  2059. <type name="AuthDomain" c:type="SoupAuthDomain"/>
  2060. </field>
  2061. </class>
  2062. <callback name="AuthDomainDigestAuthCallback"
  2063. c:type="SoupAuthDomainDigestAuthCallback">
  2064. <doc xml:space="preserve">Callback used by #SoupAuthDomainDigest for authentication purposes.
  2065. The application should look up @username in its password database,
  2066. and return the corresponding encoded password (see
  2067. soup_auth_domain_digest_encode_password()).</doc>
  2068. <return-value transfer-ownership="full" nullable="1">
  2069. <doc xml:space="preserve">the encoded password, or %NULL if
  2070. @username is not a valid user. @domain will free the password when
  2071. it is done with it.</doc>
  2072. <type name="utf8" c:type="char*"/>
  2073. </return-value>
  2074. <parameters>
  2075. <parameter name="domain" transfer-ownership="none">
  2076. <doc xml:space="preserve">the domain</doc>
  2077. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  2078. </parameter>
  2079. <parameter name="msg" transfer-ownership="none">
  2080. <doc xml:space="preserve">the message being authenticated</doc>
  2081. <type name="Message" c:type="SoupMessage*"/>
  2082. </parameter>
  2083. <parameter name="username" transfer-ownership="none">
  2084. <doc xml:space="preserve">the username provided by the client</doc>
  2085. <type name="utf8" c:type="const char*"/>
  2086. </parameter>
  2087. <parameter name="user_data"
  2088. transfer-ownership="none"
  2089. nullable="1"
  2090. allow-none="1"
  2091. closure="3">
  2092. <doc xml:space="preserve">the data passed to soup_auth_domain_digest_set_auth_callback()</doc>
  2093. <type name="gpointer" c:type="gpointer"/>
  2094. </parameter>
  2095. </parameters>
  2096. </callback>
  2097. <record name="AuthDomainDigestClass"
  2098. c:type="SoupAuthDomainDigestClass"
  2099. glib:is-gtype-struct-for="AuthDomainDigest">
  2100. <field name="parent_class">
  2101. <type name="AuthDomainClass" c:type="SoupAuthDomainClass"/>
  2102. </field>
  2103. <field name="_libsoup_reserved1" introspectable="0">
  2104. <callback name="_libsoup_reserved1">
  2105. <return-value transfer-ownership="none">
  2106. <type name="none" c:type="void"/>
  2107. </return-value>
  2108. </callback>
  2109. </field>
  2110. <field name="_libsoup_reserved2" introspectable="0">
  2111. <callback name="_libsoup_reserved2">
  2112. <return-value transfer-ownership="none">
  2113. <type name="none" c:type="void"/>
  2114. </return-value>
  2115. </callback>
  2116. </field>
  2117. <field name="_libsoup_reserved3" introspectable="0">
  2118. <callback name="_libsoup_reserved3">
  2119. <return-value transfer-ownership="none">
  2120. <type name="none" c:type="void"/>
  2121. </return-value>
  2122. </callback>
  2123. </field>
  2124. <field name="_libsoup_reserved4" introspectable="0">
  2125. <callback name="_libsoup_reserved4">
  2126. <return-value transfer-ownership="none">
  2127. <type name="none" c:type="void"/>
  2128. </return-value>
  2129. </callback>
  2130. </field>
  2131. </record>
  2132. <callback name="AuthDomainFilter" c:type="SoupAuthDomainFilter">
  2133. <doc xml:space="preserve">The prototype for a #SoupAuthDomain filter; see
  2134. soup_auth_domain_set_filter() for details.</doc>
  2135. <return-value transfer-ownership="none">
  2136. <doc xml:space="preserve">%TRUE if @msg requires authentication, %FALSE if not.</doc>
  2137. <type name="gboolean" c:type="gboolean"/>
  2138. </return-value>
  2139. <parameters>
  2140. <parameter name="domain" transfer-ownership="none">
  2141. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  2142. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  2143. </parameter>
  2144. <parameter name="msg" transfer-ownership="none">
  2145. <doc xml:space="preserve">a #SoupMessage</doc>
  2146. <type name="Message" c:type="SoupMessage*"/>
  2147. </parameter>
  2148. <parameter name="user_data"
  2149. transfer-ownership="none"
  2150. nullable="1"
  2151. allow-none="1"
  2152. closure="2">
  2153. <doc xml:space="preserve">the data passed to soup_auth_domain_set_filter()</doc>
  2154. <type name="gpointer" c:type="gpointer"/>
  2155. </parameter>
  2156. </parameters>
  2157. </callback>
  2158. <callback name="AuthDomainGenericAuthCallback"
  2159. c:type="SoupAuthDomainGenericAuthCallback">
  2160. <doc xml:space="preserve">The prototype for a #SoupAuthDomain generic authentication callback.
  2161. The callback should look up the user's password, call
  2162. soup_auth_domain_check_password(), and use the return value from
  2163. that method as its own return value.
  2164. In general, for security reasons, it is preferable to use the
  2165. auth-domain-specific auth callbacks (eg,
  2166. #SoupAuthDomainBasicAuthCallback and
  2167. #SoupAuthDomainDigestAuthCallback), because they don't require
  2168. keeping a cleartext password database. Most users will use the same
  2169. password for many different sites, meaning if any site with a
  2170. cleartext password database is compromised, accounts on other
  2171. servers might be compromised as well. For many of the cases where
  2172. #SoupServer is used, this is not really relevant, but it may still
  2173. be worth considering.</doc>
  2174. <return-value transfer-ownership="none">
  2175. <doc xml:space="preserve">%TRUE if @msg is authenticated, %FALSE if not.</doc>
  2176. <type name="gboolean" c:type="gboolean"/>
  2177. </return-value>
  2178. <parameters>
  2179. <parameter name="domain" transfer-ownership="none">
  2180. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  2181. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  2182. </parameter>
  2183. <parameter name="msg" transfer-ownership="none">
  2184. <doc xml:space="preserve">the #SoupMessage being authenticated</doc>
  2185. <type name="Message" c:type="SoupMessage*"/>
  2186. </parameter>
  2187. <parameter name="username" transfer-ownership="none">
  2188. <doc xml:space="preserve">the username from @msg</doc>
  2189. <type name="utf8" c:type="const char*"/>
  2190. </parameter>
  2191. <parameter name="user_data"
  2192. transfer-ownership="none"
  2193. nullable="1"
  2194. allow-none="1"
  2195. closure="3">
  2196. <doc xml:space="preserve">the data passed to
  2197. soup_auth_domain_set_generic_auth_callback()</doc>
  2198. <type name="gpointer" c:type="gpointer"/>
  2199. </parameter>
  2200. </parameters>
  2201. </callback>
  2202. <class name="AuthManager"
  2203. c:symbol-prefix="auth_manager"
  2204. c:type="SoupAuthManager"
  2205. parent="GObject.Object"
  2206. glib:type-name="SoupAuthManager"
  2207. glib:get-type="soup_auth_manager_get_type"
  2208. glib:type-struct="AuthManagerClass">
  2209. <implements name="SessionFeature"/>
  2210. <virtual-method name="authenticate">
  2211. <return-value transfer-ownership="none">
  2212. <type name="none" c:type="void"/>
  2213. </return-value>
  2214. <parameters>
  2215. <instance-parameter name="manager" transfer-ownership="none">
  2216. <type name="AuthManager" c:type="SoupAuthManager*"/>
  2217. </instance-parameter>
  2218. <parameter name="msg" transfer-ownership="none">
  2219. <type name="Message" c:type="SoupMessage*"/>
  2220. </parameter>
  2221. <parameter name="auth" transfer-ownership="none">
  2222. <type name="Auth" c:type="SoupAuth*"/>
  2223. </parameter>
  2224. <parameter name="retrying" transfer-ownership="none">
  2225. <type name="gboolean" c:type="gboolean"/>
  2226. </parameter>
  2227. </parameters>
  2228. </virtual-method>
  2229. <method name="use_auth"
  2230. c:identifier="soup_auth_manager_use_auth"
  2231. version="2.42">
  2232. <doc xml:space="preserve">Records that @auth is to be used under @uri, as though a
  2233. WWW-Authenticate header had been received at that URI. This can be
  2234. used to "preload" @manager's auth cache, to avoid an extra HTTP
  2235. round trip in the case where you know ahead of time that a 401
  2236. response will be returned.
  2237. This is only useful for authentication types where the initial
  2238. Authorization header does not depend on any additional information
  2239. from the server. (Eg, Basic or NTLM, but not Digest.)</doc>
  2240. <return-value transfer-ownership="none">
  2241. <type name="none" c:type="void"/>
  2242. </return-value>
  2243. <parameters>
  2244. <instance-parameter name="manager" transfer-ownership="none">
  2245. <doc xml:space="preserve">a #SoupAuthManager</doc>
  2246. <type name="AuthManager" c:type="SoupAuthManager*"/>
  2247. </instance-parameter>
  2248. <parameter name="uri" transfer-ownership="none">
  2249. <doc xml:space="preserve">the #SoupURI under which @auth is to be used</doc>
  2250. <type name="URI" c:type="SoupURI*"/>
  2251. </parameter>
  2252. <parameter name="auth" transfer-ownership="none">
  2253. <doc xml:space="preserve">the #SoupAuth to use</doc>
  2254. <type name="Auth" c:type="SoupAuth*"/>
  2255. </parameter>
  2256. </parameters>
  2257. </method>
  2258. <field name="parent">
  2259. <type name="GObject.Object" c:type="GObject"/>
  2260. </field>
  2261. <field name="priv">
  2262. <type name="AuthManagerPrivate" c:type="SoupAuthManagerPrivate*"/>
  2263. </field>
  2264. <glib:signal name="authenticate" when="first">
  2265. <doc xml:space="preserve">Emitted when the manager requires the application to
  2266. provide authentication credentials.
  2267. #SoupSession connects to this signal and emits its own
  2268. #SoupSession::authenticate signal when it is emitted, so
  2269. you shouldn't need to use this signal directly.</doc>
  2270. <return-value transfer-ownership="none">
  2271. <type name="none" c:type="void"/>
  2272. </return-value>
  2273. <parameters>
  2274. <parameter name="msg" transfer-ownership="none">
  2275. <doc xml:space="preserve">the #SoupMessage being sent</doc>
  2276. <type name="Message"/>
  2277. </parameter>
  2278. <parameter name="auth" transfer-ownership="none">
  2279. <doc xml:space="preserve">the #SoupAuth to authenticate</doc>
  2280. <type name="Auth"/>
  2281. </parameter>
  2282. <parameter name="retrying" transfer-ownership="none">
  2283. <doc xml:space="preserve">%TRUE if this is the second (or later) attempt</doc>
  2284. <type name="gboolean" c:type="gboolean"/>
  2285. </parameter>
  2286. </parameters>
  2287. </glib:signal>
  2288. </class>
  2289. <record name="AuthManagerClass"
  2290. c:type="SoupAuthManagerClass"
  2291. glib:is-gtype-struct-for="AuthManager">
  2292. <field name="parent_class">
  2293. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  2294. </field>
  2295. <field name="authenticate">
  2296. <callback name="authenticate">
  2297. <return-value transfer-ownership="none">
  2298. <type name="none" c:type="void"/>
  2299. </return-value>
  2300. <parameters>
  2301. <parameter name="manager" transfer-ownership="none">
  2302. <type name="AuthManager" c:type="SoupAuthManager*"/>
  2303. </parameter>
  2304. <parameter name="msg" transfer-ownership="none">
  2305. <type name="Message" c:type="SoupMessage*"/>
  2306. </parameter>
  2307. <parameter name="auth" transfer-ownership="none">
  2308. <type name="Auth" c:type="SoupAuth*"/>
  2309. </parameter>
  2310. <parameter name="retrying" transfer-ownership="none">
  2311. <type name="gboolean" c:type="gboolean"/>
  2312. </parameter>
  2313. </parameters>
  2314. </callback>
  2315. </field>
  2316. </record>
  2317. <record name="AuthManagerPrivate"
  2318. c:type="SoupAuthManagerPrivate"
  2319. disguised="1">
  2320. </record>
  2321. <class name="AuthNTLM"
  2322. c:symbol-prefix="auth_ntlm"
  2323. parent="Auth"
  2324. glib:type-name="SoupAuthNTLM"
  2325. glib:get-type="soup_auth_ntlm_get_type">
  2326. </class>
  2327. <class name="AuthNegotiate"
  2328. c:symbol-prefix="auth_negotiate"
  2329. parent="Auth"
  2330. glib:type-name="SoupAuthNegotiate"
  2331. glib:get-type="soup_auth_negotiate_get_type">
  2332. <function name="supported"
  2333. c:identifier="soup_auth_negotiate_supported"
  2334. version="2.54">
  2335. <doc xml:space="preserve">Indicates whether libsoup was built with GSSAPI support. If this is
  2336. %FALSE, %SOUP_TYPE_AUTH_NEGOTIATE will still be defined and can
  2337. still be added to a #SoupSession, but libsoup will never attempt to
  2338. actually use this auth type.</doc>
  2339. <return-value transfer-ownership="none">
  2340. <type name="gboolean" c:type="gboolean"/>
  2341. </return-value>
  2342. </function>
  2343. </class>
  2344. <record name="Buffer"
  2345. c:type="SoupBuffer"
  2346. glib:type-name="SoupBuffer"
  2347. glib:get-type="soup_buffer_get_type"
  2348. c:symbol-prefix="buffer">
  2349. <doc xml:space="preserve">A data buffer, generally used to represent a chunk of a
  2350. #SoupMessageBody.
  2351. @data is a #char because that's generally convenient; in some
  2352. situations you may need to cast it to #guchar or another type.</doc>
  2353. <field name="data" writable="1">
  2354. <doc xml:space="preserve">the data</doc>
  2355. <type name="gpointer"/>
  2356. </field>
  2357. <field name="length" writable="1">
  2358. <doc xml:space="preserve">length of @data</doc>
  2359. <type name="gsize" c:type="gsize"/>
  2360. </field>
  2361. <constructor name="new"
  2362. c:identifier="soup_buffer_new"
  2363. shadowed-by="new_take">
  2364. <doc xml:space="preserve">Creates a new #SoupBuffer containing @length bytes from @data.</doc>
  2365. <return-value transfer-ownership="full">
  2366. <doc xml:space="preserve">the new #SoupBuffer.</doc>
  2367. <type name="Buffer" c:type="SoupBuffer*"/>
  2368. </return-value>
  2369. <parameters>
  2370. <parameter name="use" transfer-ownership="none">
  2371. <doc xml:space="preserve">how @data is to be used by the buffer</doc>
  2372. <type name="MemoryUse" c:type="SoupMemoryUse"/>
  2373. </parameter>
  2374. <parameter name="data" transfer-ownership="none">
  2375. <doc xml:space="preserve">data</doc>
  2376. <array length="2" zero-terminated="0" c:type="gconstpointer">
  2377. <type name="guint8"/>
  2378. </array>
  2379. </parameter>
  2380. <parameter name="length" transfer-ownership="none">
  2381. <doc xml:space="preserve">length of @data</doc>
  2382. <type name="gsize" c:type="gsize"/>
  2383. </parameter>
  2384. </parameters>
  2385. </constructor>
  2386. <constructor name="new_take"
  2387. c:identifier="soup_buffer_new_take"
  2388. shadows="new"
  2389. version="2.32">
  2390. <doc xml:space="preserve">Creates a new #SoupBuffer containing @length bytes from @data.
  2391. This function is exactly equivalent to soup_buffer_new() with
  2392. %SOUP_MEMORY_TAKE as first argument; it exists mainly for
  2393. convenience and simplifying language bindings.</doc>
  2394. <return-value transfer-ownership="full">
  2395. <doc xml:space="preserve">the new #SoupBuffer.</doc>
  2396. <type name="Buffer" c:type="SoupBuffer*"/>
  2397. </return-value>
  2398. <parameters>
  2399. <parameter name="data" transfer-ownership="full">
  2400. <doc xml:space="preserve">data</doc>
  2401. <array length="1" zero-terminated="0" c:type="guchar*">
  2402. <type name="guint8" c:type="guchar"/>
  2403. </array>
  2404. </parameter>
  2405. <parameter name="length" transfer-ownership="none">
  2406. <doc xml:space="preserve">length of @data</doc>
  2407. <type name="gsize" c:type="gsize"/>
  2408. </parameter>
  2409. </parameters>
  2410. </constructor>
  2411. <constructor name="new_with_owner"
  2412. c:identifier="soup_buffer_new_with_owner">
  2413. <doc xml:space="preserve">Creates a new #SoupBuffer containing @length bytes from @data. When
  2414. the #SoupBuffer is freed, it will call @owner_dnotify, passing
  2415. @owner to it. You must ensure that @data will remain valid until
  2416. @owner_dnotify is called.
  2417. For example, you could use this to create a buffer containing data
  2418. returned from libxml without needing to do an extra copy:
  2419. &lt;informalexample&gt;&lt;programlisting&gt;
  2420. xmlDocDumpMemory (doc, &amp;xmlbody, &amp;len);
  2421. return soup_buffer_new_with_owner (xmlbody, len, xmlbody,
  2422. (GDestroyNotify)xmlFree);
  2423. &lt;/programlisting&gt;&lt;/informalexample&gt;
  2424. In this example, @data and @owner are the same, but in other cases
  2425. they would be different (eg, @owner would be a object, and @data
  2426. would be a pointer to one of the object's fields).</doc>
  2427. <return-value transfer-ownership="full">
  2428. <doc xml:space="preserve">the new #SoupBuffer.</doc>
  2429. <type name="Buffer" c:type="SoupBuffer*"/>
  2430. </return-value>
  2431. <parameters>
  2432. <parameter name="data" transfer-ownership="none">
  2433. <doc xml:space="preserve">data</doc>
  2434. <array length="1" zero-terminated="0" c:type="gconstpointer">
  2435. <type name="guint8"/>
  2436. </array>
  2437. </parameter>
  2438. <parameter name="length" transfer-ownership="none">
  2439. <doc xml:space="preserve">length of @data</doc>
  2440. <type name="gsize" c:type="gsize"/>
  2441. </parameter>
  2442. <parameter name="owner"
  2443. transfer-ownership="none"
  2444. nullable="1"
  2445. allow-none="1">
  2446. <doc xml:space="preserve">pointer to an object that owns @data</doc>
  2447. <type name="gpointer" c:type="gpointer"/>
  2448. </parameter>
  2449. <parameter name="owner_dnotify"
  2450. transfer-ownership="none"
  2451. nullable="1"
  2452. allow-none="1"
  2453. scope="async">
  2454. <doc xml:space="preserve">a function to free/unref @owner when
  2455. the buffer is freed</doc>
  2456. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  2457. </parameter>
  2458. </parameters>
  2459. </constructor>
  2460. <method name="copy" c:identifier="soup_buffer_copy">
  2461. <doc xml:space="preserve">Makes a copy of @buffer. In reality, #SoupBuffer is a refcounted
  2462. type, and calling soup_buffer_copy() will normally just increment
  2463. the refcount on @buffer and return it. However, if @buffer was
  2464. created with #SOUP_MEMORY_TEMPORARY memory, then soup_buffer_copy()
  2465. will actually return a copy of it, so that the data in the copy
  2466. will remain valid after the temporary buffer is freed.</doc>
  2467. <return-value transfer-ownership="full">
  2468. <doc xml:space="preserve">the new (or newly-reffed) buffer</doc>
  2469. <type name="Buffer" c:type="SoupBuffer*"/>
  2470. </return-value>
  2471. <parameters>
  2472. <instance-parameter name="buffer" transfer-ownership="none">
  2473. <doc xml:space="preserve">a #SoupBuffer</doc>
  2474. <type name="Buffer" c:type="SoupBuffer*"/>
  2475. </instance-parameter>
  2476. </parameters>
  2477. </method>
  2478. <method name="free" c:identifier="soup_buffer_free">
  2479. <doc xml:space="preserve">Frees @buffer. (In reality, as described in the documentation for
  2480. soup_buffer_copy(), this is actually an "unref" operation, and may
  2481. or may not actually free @buffer.)</doc>
  2482. <return-value transfer-ownership="none">
  2483. <type name="none" c:type="void"/>
  2484. </return-value>
  2485. <parameters>
  2486. <instance-parameter name="buffer" transfer-ownership="none">
  2487. <doc xml:space="preserve">a #SoupBuffer</doc>
  2488. <type name="Buffer" c:type="SoupBuffer*"/>
  2489. </instance-parameter>
  2490. </parameters>
  2491. </method>
  2492. <method name="get_as_bytes"
  2493. c:identifier="soup_buffer_get_as_bytes"
  2494. version="2.40">
  2495. <doc xml:space="preserve">Creates a #GBytes pointing to the same memory as @buffer. The
  2496. #GBytes will hold a reference on @buffer to ensure that it is not
  2497. freed while the #GBytes is still valid.</doc>
  2498. <return-value transfer-ownership="full">
  2499. <doc xml:space="preserve">a new #GBytes which has the same content
  2500. as the #SoupBuffer.</doc>
  2501. <type name="GLib.Bytes" c:type="GBytes*"/>
  2502. </return-value>
  2503. <parameters>
  2504. <instance-parameter name="buffer" transfer-ownership="none">
  2505. <doc xml:space="preserve">a #SoupBuffer</doc>
  2506. <type name="Buffer" c:type="SoupBuffer*"/>
  2507. </instance-parameter>
  2508. </parameters>
  2509. </method>
  2510. <method name="get_data"
  2511. c:identifier="soup_buffer_get_data"
  2512. version="2.32">
  2513. <doc xml:space="preserve">This function exists for use by language bindings, because it's not
  2514. currently possible to get the right effect by annotating the fields
  2515. of #SoupBuffer.</doc>
  2516. <return-value transfer-ownership="none">
  2517. <type name="none" c:type="void"/>
  2518. </return-value>
  2519. <parameters>
  2520. <instance-parameter name="buffer" transfer-ownership="none">
  2521. <doc xml:space="preserve">a #SoupBuffer</doc>
  2522. <type name="Buffer" c:type="SoupBuffer*"/>
  2523. </instance-parameter>
  2524. <parameter name="data"
  2525. direction="out"
  2526. caller-allocates="0"
  2527. transfer-ownership="none">
  2528. <doc xml:space="preserve">the pointer
  2529. to the buffer data is stored here</doc>
  2530. <array length="1" zero-terminated="0" c:type="guint8**">
  2531. <type name="guint8" c:type="guint8*"/>
  2532. </array>
  2533. </parameter>
  2534. <parameter name="length"
  2535. direction="out"
  2536. caller-allocates="0"
  2537. transfer-ownership="full">
  2538. <doc xml:space="preserve">the length of the buffer data is stored here</doc>
  2539. <type name="gsize" c:type="gsize*"/>
  2540. </parameter>
  2541. </parameters>
  2542. </method>
  2543. <method name="get_owner" c:identifier="soup_buffer_get_owner">
  2544. <doc xml:space="preserve">Gets the "owner" object for a buffer created with
  2545. soup_buffer_new_with_owner().</doc>
  2546. <return-value transfer-ownership="none" nullable="1">
  2547. <doc xml:space="preserve">the owner pointer</doc>
  2548. <type name="gpointer" c:type="gpointer"/>
  2549. </return-value>
  2550. <parameters>
  2551. <instance-parameter name="buffer" transfer-ownership="none">
  2552. <doc xml:space="preserve">a #SoupBuffer created with soup_buffer_new_with_owner()</doc>
  2553. <type name="Buffer" c:type="SoupBuffer*"/>
  2554. </instance-parameter>
  2555. </parameters>
  2556. </method>
  2557. <method name="new_subbuffer" c:identifier="soup_buffer_new_subbuffer">
  2558. <doc xml:space="preserve">Creates a new #SoupBuffer containing @length bytes "copied" from
  2559. @parent starting at @offset. (Normally this will not actually copy
  2560. any data, but will instead simply reference the same data as
  2561. @parent does.)</doc>
  2562. <return-value transfer-ownership="full">
  2563. <doc xml:space="preserve">the new #SoupBuffer.</doc>
  2564. <type name="Buffer" c:type="SoupBuffer*"/>
  2565. </return-value>
  2566. <parameters>
  2567. <instance-parameter name="parent" transfer-ownership="none">
  2568. <doc xml:space="preserve">the parent #SoupBuffer</doc>
  2569. <type name="Buffer" c:type="SoupBuffer*"/>
  2570. </instance-parameter>
  2571. <parameter name="offset" transfer-ownership="none">
  2572. <doc xml:space="preserve">offset within @parent to start at</doc>
  2573. <type name="gsize" c:type="gsize"/>
  2574. </parameter>
  2575. <parameter name="length" transfer-ownership="none">
  2576. <doc xml:space="preserve">number of bytes to copy from @parent</doc>
  2577. <type name="gsize" c:type="gsize"/>
  2578. </parameter>
  2579. </parameters>
  2580. </method>
  2581. </record>
  2582. <glib:boxed glib:name="ByteArray"
  2583. c:symbol-prefix="byte_array"
  2584. glib:type-name="SoupByteArray"
  2585. glib:get-type="soup_byte_array_get_type">
  2586. </glib:boxed>
  2587. <constant name="CACHE_H" value="1" c:type="SOUP_CACHE_H">
  2588. <type name="gint" c:type="gint"/>
  2589. </constant>
  2590. <constant name="CHAR_HTTP_CTL" value="16" c:type="SOUP_CHAR_HTTP_CTL">
  2591. <type name="gint" c:type="gint"/>
  2592. </constant>
  2593. <constant name="CHAR_HTTP_SEPARATOR"
  2594. value="8"
  2595. c:type="SOUP_CHAR_HTTP_SEPARATOR">
  2596. <type name="gint" c:type="gint"/>
  2597. </constant>
  2598. <constant name="CHAR_URI_GEN_DELIMS"
  2599. value="2"
  2600. c:type="SOUP_CHAR_URI_GEN_DELIMS">
  2601. <type name="gint" c:type="gint"/>
  2602. </constant>
  2603. <constant name="CHAR_URI_PERCENT_ENCODED"
  2604. value="1"
  2605. c:type="SOUP_CHAR_URI_PERCENT_ENCODED">
  2606. <type name="gint" c:type="gint"/>
  2607. </constant>
  2608. <constant name="CHAR_URI_SUB_DELIMS"
  2609. value="4"
  2610. c:type="SOUP_CHAR_URI_SUB_DELIMS">
  2611. <type name="gint" c:type="gint"/>
  2612. </constant>
  2613. <constant name="CONTENT_DECODER_H"
  2614. value="1"
  2615. c:type="SOUP_CONTENT_DECODER_H">
  2616. <type name="gint" c:type="gint"/>
  2617. </constant>
  2618. <constant name="CONTENT_SNIFFER_H"
  2619. value="1"
  2620. c:type="SOUP_CONTENT_SNIFFER_H">
  2621. <type name="gint" c:type="gint"/>
  2622. </constant>
  2623. <constant name="COOKIE_H" value="1" c:type="SOUP_COOKIE_H">
  2624. <type name="gint" c:type="gint"/>
  2625. </constant>
  2626. <constant name="COOKIE_JAR_ACCEPT_POLICY"
  2627. value="accept-policy"
  2628. c:type="SOUP_COOKIE_JAR_ACCEPT_POLICY"
  2629. version="2.30">
  2630. <doc xml:space="preserve">Alias for the #SoupCookieJar:accept-policy property.</doc>
  2631. <type name="utf8" c:type="gchar*"/>
  2632. </constant>
  2633. <constant name="COOKIE_JAR_DB_FILENAME"
  2634. value="filename"
  2635. c:type="SOUP_COOKIE_JAR_DB_FILENAME">
  2636. <doc xml:space="preserve">Alias for the #SoupCookieJarDB:filename property. (The
  2637. cookie-storage filename.)</doc>
  2638. <type name="utf8" c:type="gchar*"/>
  2639. </constant>
  2640. <constant name="COOKIE_JAR_DB_H" value="1" c:type="SOUP_COOKIE_JAR_DB_H">
  2641. <type name="gint" c:type="gint"/>
  2642. </constant>
  2643. <constant name="COOKIE_JAR_H" value="1" c:type="SOUP_COOKIE_JAR_H">
  2644. <type name="gint" c:type="gint"/>
  2645. </constant>
  2646. <constant name="COOKIE_JAR_READ_ONLY"
  2647. value="read-only"
  2648. c:type="SOUP_COOKIE_JAR_READ_ONLY">
  2649. <doc xml:space="preserve">Alias for the #SoupCookieJar:read-only property. (Whether
  2650. or not the cookie jar is read-only.)</doc>
  2651. <type name="utf8" c:type="gchar*"/>
  2652. </constant>
  2653. <constant name="COOKIE_JAR_TEXT_FILENAME"
  2654. value="filename"
  2655. c:type="SOUP_COOKIE_JAR_TEXT_FILENAME">
  2656. <doc xml:space="preserve">Alias for the #SoupCookieJarText:filename property. (The
  2657. cookie-storage filename.)</doc>
  2658. <type name="utf8" c:type="gchar*"/>
  2659. </constant>
  2660. <constant name="COOKIE_JAR_TEXT_H"
  2661. value="1"
  2662. c:type="SOUP_COOKIE_JAR_TEXT_H">
  2663. <type name="gint" c:type="gint"/>
  2664. </constant>
  2665. <constant name="COOKIE_MAX_AGE_ONE_DAY"
  2666. value="0"
  2667. c:type="SOUP_COOKIE_MAX_AGE_ONE_DAY"
  2668. version="2.24">
  2669. <doc xml:space="preserve">A constant corresponding to 1 day, for use with soup_cookie_new()
  2670. and soup_cookie_set_max_age().</doc>
  2671. <type name="gint" c:type="gint"/>
  2672. </constant>
  2673. <constant name="COOKIE_MAX_AGE_ONE_HOUR"
  2674. value="3600"
  2675. c:type="SOUP_COOKIE_MAX_AGE_ONE_HOUR"
  2676. version="2.24">
  2677. <doc xml:space="preserve">A constant corresponding to 1 hour, for use with soup_cookie_new()
  2678. and soup_cookie_set_max_age().</doc>
  2679. <type name="gint" c:type="gint"/>
  2680. </constant>
  2681. <constant name="COOKIE_MAX_AGE_ONE_WEEK"
  2682. value="0"
  2683. c:type="SOUP_COOKIE_MAX_AGE_ONE_WEEK"
  2684. version="2.24">
  2685. <doc xml:space="preserve">A constant corresponding to 1 week, for use with soup_cookie_new()
  2686. and soup_cookie_set_max_age().</doc>
  2687. <type name="gint" c:type="gint"/>
  2688. </constant>
  2689. <constant name="COOKIE_MAX_AGE_ONE_YEAR"
  2690. value="0"
  2691. c:type="SOUP_COOKIE_MAX_AGE_ONE_YEAR"
  2692. version="2.24">
  2693. <doc xml:space="preserve">A constant corresponding to 1 year, for use with soup_cookie_new()
  2694. and soup_cookie_set_max_age().</doc>
  2695. <type name="gint" c:type="gint"/>
  2696. </constant>
  2697. <class name="Cache"
  2698. c:symbol-prefix="cache"
  2699. c:type="SoupCache"
  2700. parent="GObject.Object"
  2701. glib:type-name="SoupCache"
  2702. glib:get-type="soup_cache_get_type"
  2703. glib:type-struct="CacheClass">
  2704. <implements name="SessionFeature"/>
  2705. <constructor name="new" c:identifier="soup_cache_new" version="2.34">
  2706. <doc xml:space="preserve">Creates a new #SoupCache.</doc>
  2707. <return-value transfer-ownership="full">
  2708. <doc xml:space="preserve">a new #SoupCache</doc>
  2709. <type name="Cache" c:type="SoupCache*"/>
  2710. </return-value>
  2711. <parameters>
  2712. <parameter name="cache_dir" transfer-ownership="none">
  2713. <doc xml:space="preserve">the directory to store the cached data, or %NULL to use the default one</doc>
  2714. <type name="utf8" c:type="const char*"/>
  2715. </parameter>
  2716. <parameter name="cache_type" transfer-ownership="none">
  2717. <doc xml:space="preserve">the #SoupCacheType of the cache</doc>
  2718. <type name="CacheType" c:type="SoupCacheType"/>
  2719. </parameter>
  2720. </parameters>
  2721. </constructor>
  2722. <virtual-method name="get_cacheability">
  2723. <return-value transfer-ownership="none">
  2724. <type name="Cacheability" c:type="SoupCacheability"/>
  2725. </return-value>
  2726. <parameters>
  2727. <instance-parameter name="cache" transfer-ownership="none">
  2728. <type name="Cache" c:type="SoupCache*"/>
  2729. </instance-parameter>
  2730. <parameter name="msg" transfer-ownership="none">
  2731. <type name="Message" c:type="SoupMessage*"/>
  2732. </parameter>
  2733. </parameters>
  2734. </virtual-method>
  2735. <method name="clear" c:identifier="soup_cache_clear" version="2.34">
  2736. <doc xml:space="preserve">Will remove all entries in the @cache plus all the cache files.</doc>
  2737. <return-value transfer-ownership="none">
  2738. <type name="none" c:type="void"/>
  2739. </return-value>
  2740. <parameters>
  2741. <instance-parameter name="cache" transfer-ownership="none">
  2742. <doc xml:space="preserve">a #SoupCache</doc>
  2743. <type name="Cache" c:type="SoupCache*"/>
  2744. </instance-parameter>
  2745. </parameters>
  2746. </method>
  2747. <method name="dump" c:identifier="soup_cache_dump" version="2.34.">
  2748. <doc xml:space="preserve">Synchronously writes the cache index out to disk. Contrast with
  2749. soup_cache_flush(), which writes pending cache
  2750. &lt;emphasis&gt;entries&lt;/emphasis&gt; to disk.
  2751. You must call this before exiting if you want your cache data to
  2752. persist between sessions.</doc>
  2753. <return-value transfer-ownership="none">
  2754. <type name="none" c:type="void"/>
  2755. </return-value>
  2756. <parameters>
  2757. <instance-parameter name="cache" transfer-ownership="none">
  2758. <doc xml:space="preserve">a #SoupCache</doc>
  2759. <type name="Cache" c:type="SoupCache*"/>
  2760. </instance-parameter>
  2761. </parameters>
  2762. </method>
  2763. <method name="flush" c:identifier="soup_cache_flush" version="2.34">
  2764. <doc xml:space="preserve">This function will force all pending writes in the @cache to be
  2765. committed to disk. For doing so it will iterate the #GMainContext
  2766. associated with @cache's session as long as needed.
  2767. Contrast with soup_cache_dump(), which writes out the cache index
  2768. file.</doc>
  2769. <return-value transfer-ownership="none">
  2770. <type name="none" c:type="void"/>
  2771. </return-value>
  2772. <parameters>
  2773. <instance-parameter name="cache" transfer-ownership="none">
  2774. <doc xml:space="preserve">a #SoupCache</doc>
  2775. <type name="Cache" c:type="SoupCache*"/>
  2776. </instance-parameter>
  2777. </parameters>
  2778. </method>
  2779. <method name="get_max_size"
  2780. c:identifier="soup_cache_get_max_size"
  2781. version="2.34">
  2782. <doc xml:space="preserve">Gets the maximum size of the cache.</doc>
  2783. <return-value transfer-ownership="none">
  2784. <doc xml:space="preserve">the maximum size of the cache, in bytes.</doc>
  2785. <type name="guint" c:type="guint"/>
  2786. </return-value>
  2787. <parameters>
  2788. <instance-parameter name="cache" transfer-ownership="none">
  2789. <doc xml:space="preserve">a #SoupCache</doc>
  2790. <type name="Cache" c:type="SoupCache*"/>
  2791. </instance-parameter>
  2792. </parameters>
  2793. </method>
  2794. <method name="load" c:identifier="soup_cache_load" version="2.34">
  2795. <doc xml:space="preserve">Loads the contents of @cache's index into memory.</doc>
  2796. <return-value transfer-ownership="none">
  2797. <type name="none" c:type="void"/>
  2798. </return-value>
  2799. <parameters>
  2800. <instance-parameter name="cache" transfer-ownership="none">
  2801. <doc xml:space="preserve">a #SoupCache</doc>
  2802. <type name="Cache" c:type="SoupCache*"/>
  2803. </instance-parameter>
  2804. </parameters>
  2805. </method>
  2806. <method name="set_max_size"
  2807. c:identifier="soup_cache_set_max_size"
  2808. version="2.34">
  2809. <doc xml:space="preserve">Sets the maximum size of the cache.</doc>
  2810. <return-value transfer-ownership="none">
  2811. <type name="none" c:type="void"/>
  2812. </return-value>
  2813. <parameters>
  2814. <instance-parameter name="cache" transfer-ownership="none">
  2815. <doc xml:space="preserve">a #SoupCache</doc>
  2816. <type name="Cache" c:type="SoupCache*"/>
  2817. </instance-parameter>
  2818. <parameter name="max_size" transfer-ownership="none">
  2819. <doc xml:space="preserve">the maximum size of the cache, in bytes</doc>
  2820. <type name="guint" c:type="guint"/>
  2821. </parameter>
  2822. </parameters>
  2823. </method>
  2824. <property name="cache-dir"
  2825. writable="1"
  2826. construct-only="1"
  2827. transfer-ownership="none">
  2828. <type name="utf8" c:type="gchar*"/>
  2829. </property>
  2830. <property name="cache-type"
  2831. writable="1"
  2832. construct-only="1"
  2833. transfer-ownership="none">
  2834. <type name="CacheType"/>
  2835. </property>
  2836. <field name="parent_instance">
  2837. <type name="GObject.Object" c:type="GObject"/>
  2838. </field>
  2839. <field name="priv">
  2840. <type name="CachePrivate" c:type="SoupCachePrivate*"/>
  2841. </field>
  2842. </class>
  2843. <record name="CacheClass"
  2844. c:type="SoupCacheClass"
  2845. glib:is-gtype-struct-for="Cache">
  2846. <field name="parent_class">
  2847. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  2848. </field>
  2849. <field name="get_cacheability">
  2850. <callback name="get_cacheability">
  2851. <return-value transfer-ownership="none">
  2852. <type name="Cacheability" c:type="SoupCacheability"/>
  2853. </return-value>
  2854. <parameters>
  2855. <parameter name="cache" transfer-ownership="none">
  2856. <type name="Cache" c:type="SoupCache*"/>
  2857. </parameter>
  2858. <parameter name="msg" transfer-ownership="none">
  2859. <type name="Message" c:type="SoupMessage*"/>
  2860. </parameter>
  2861. </parameters>
  2862. </callback>
  2863. </field>
  2864. <field name="_libsoup_reserved1" introspectable="0">
  2865. <callback name="_libsoup_reserved1">
  2866. <return-value transfer-ownership="none">
  2867. <type name="none" c:type="void"/>
  2868. </return-value>
  2869. </callback>
  2870. </field>
  2871. <field name="_libsoup_reserved2" introspectable="0">
  2872. <callback name="_libsoup_reserved2">
  2873. <return-value transfer-ownership="none">
  2874. <type name="none" c:type="void"/>
  2875. </return-value>
  2876. </callback>
  2877. </field>
  2878. <field name="_libsoup_reserved3" introspectable="0">
  2879. <callback name="_libsoup_reserved3">
  2880. <return-value transfer-ownership="none">
  2881. <type name="none" c:type="void"/>
  2882. </return-value>
  2883. </callback>
  2884. </field>
  2885. </record>
  2886. <record name="CachePrivate" c:type="SoupCachePrivate" disguised="1">
  2887. </record>
  2888. <enumeration name="CacheResponse"
  2889. glib:type-name="SoupCacheResponse"
  2890. glib:get-type="soup_cache_response_get_type"
  2891. c:type="SoupCacheResponse">
  2892. <member name="fresh"
  2893. value="0"
  2894. c:identifier="SOUP_CACHE_RESPONSE_FRESH"
  2895. glib:nick="fresh">
  2896. </member>
  2897. <member name="needs_validation"
  2898. value="1"
  2899. c:identifier="SOUP_CACHE_RESPONSE_NEEDS_VALIDATION"
  2900. glib:nick="needs-validation">
  2901. </member>
  2902. <member name="stale"
  2903. value="2"
  2904. c:identifier="SOUP_CACHE_RESPONSE_STALE"
  2905. glib:nick="stale">
  2906. </member>
  2907. </enumeration>
  2908. <enumeration name="CacheType"
  2909. version="2.34"
  2910. glib:type-name="SoupCacheType"
  2911. glib:get-type="soup_cache_type_get_type"
  2912. c:type="SoupCacheType">
  2913. <doc xml:space="preserve">The type of cache; this affects what kinds of responses will be
  2914. saved.</doc>
  2915. <member name="single_user"
  2916. value="0"
  2917. c:identifier="SOUP_CACHE_SINGLE_USER"
  2918. glib:nick="single-user">
  2919. <doc xml:space="preserve">a single-user cache</doc>
  2920. </member>
  2921. <member name="shared"
  2922. value="1"
  2923. c:identifier="SOUP_CACHE_SHARED"
  2924. glib:nick="shared">
  2925. <doc xml:space="preserve">a shared cache</doc>
  2926. </member>
  2927. </enumeration>
  2928. <bitfield name="Cacheability"
  2929. glib:type-name="SoupCacheability"
  2930. glib:get-type="soup_cacheability_get_type"
  2931. c:type="SoupCacheability">
  2932. <member name="cacheable"
  2933. value="1"
  2934. c:identifier="SOUP_CACHE_CACHEABLE"
  2935. glib:nick="cacheable">
  2936. </member>
  2937. <member name="uncacheable"
  2938. value="2"
  2939. c:identifier="SOUP_CACHE_UNCACHEABLE"
  2940. glib:nick="uncacheable">
  2941. </member>
  2942. <member name="invalidates"
  2943. value="4"
  2944. c:identifier="SOUP_CACHE_INVALIDATES"
  2945. glib:nick="invalidates">
  2946. </member>
  2947. <member name="validates"
  2948. value="8"
  2949. c:identifier="SOUP_CACHE_VALIDATES"
  2950. glib:nick="validates">
  2951. </member>
  2952. </bitfield>
  2953. <callback name="ChunkAllocator" c:type="SoupChunkAllocator" deprecated="1">
  2954. <doc xml:space="preserve">The prototype for a chunk allocation callback. This should allocate
  2955. a new #SoupBuffer and return it for the I/O layer to read message
  2956. body data off the network into.
  2957. If @max_len is non-0, it indicates the maximum number of bytes that
  2958. could be read, based on what is known about the message size. Note
  2959. that this might be a very large number, and you should not simply
  2960. try to allocate that many bytes blindly. If @max_len is 0, that
  2961. means that libsoup does not know how many bytes remain to be read,
  2962. and the allocator should return a buffer of a size that it finds
  2963. convenient.
  2964. If the allocator returns %NULL, the message will be paused. It is
  2965. up to the application to make sure that it gets unpaused when it
  2966. becomes possible to allocate a new buffer.</doc>
  2967. <doc-deprecated xml:space="preserve">Use #SoupRequest if you want to read into your
  2968. own buffers.</doc-deprecated>
  2969. <return-value transfer-ownership="full" nullable="1">
  2970. <doc xml:space="preserve">the new buffer (or %NULL)</doc>
  2971. <type name="Buffer" c:type="SoupBuffer*"/>
  2972. </return-value>
  2973. <parameters>
  2974. <parameter name="msg" transfer-ownership="none">
  2975. <doc xml:space="preserve">the #SoupMessage the chunk is being allocated for</doc>
  2976. <type name="Message" c:type="SoupMessage*"/>
  2977. </parameter>
  2978. <parameter name="max_len" transfer-ownership="none">
  2979. <doc xml:space="preserve">the maximum length that will be read, or 0.</doc>
  2980. <type name="gsize" c:type="gsize"/>
  2981. </parameter>
  2982. <parameter name="user_data"
  2983. transfer-ownership="none"
  2984. nullable="1"
  2985. allow-none="1"
  2986. closure="2">
  2987. <doc xml:space="preserve">the data passed to soup_message_set_chunk_allocator()</doc>
  2988. <type name="gpointer" c:type="gpointer"/>
  2989. </parameter>
  2990. </parameters>
  2991. </callback>
  2992. <record name="ClientContext"
  2993. c:type="SoupClientContext"
  2994. glib:type-name="SoupClientContext"
  2995. glib:get-type="soup_client_context_get_type"
  2996. c:symbol-prefix="client_context">
  2997. <doc xml:space="preserve">A #SoupClientContext provides additional information about the
  2998. client making a particular request. In particular, you can use
  2999. soup_client_context_get_auth_domain() and
  3000. soup_client_context_get_auth_user() to determine if HTTP
  3001. authentication was used successfully.
  3002. soup_client_context_get_remote_address() and/or
  3003. soup_client_context_get_host() can be used to get information for
  3004. logging or debugging purposes. soup_client_context_get_gsocket() may
  3005. also be of use in some situations (eg, tracking when multiple
  3006. requests are made on the same connection).</doc>
  3007. <method name="get_address"
  3008. c:identifier="soup_client_context_get_address"
  3009. deprecated="1">
  3010. <doc xml:space="preserve">Retrieves the #SoupAddress associated with the remote end
  3011. of a connection.</doc>
  3012. <doc-deprecated xml:space="preserve">Use soup_client_context_get_remote_address(), which returns
  3013. a #GSocketAddress.</doc-deprecated>
  3014. <return-value transfer-ownership="none" nullable="1">
  3015. <doc xml:space="preserve">the #SoupAddress
  3016. associated with the remote end of a connection, it may be
  3017. %NULL if you used soup_server_accept_iostream().</doc>
  3018. <type name="Address" c:type="SoupAddress*"/>
  3019. </return-value>
  3020. <parameters>
  3021. <instance-parameter name="client" transfer-ownership="none">
  3022. <doc xml:space="preserve">a #SoupClientContext</doc>
  3023. <type name="ClientContext" c:type="SoupClientContext*"/>
  3024. </instance-parameter>
  3025. </parameters>
  3026. </method>
  3027. <method name="get_auth_domain"
  3028. c:identifier="soup_client_context_get_auth_domain">
  3029. <doc xml:space="preserve">Checks whether the request associated with @client has been
  3030. authenticated, and if so returns the #SoupAuthDomain that
  3031. authenticated it.</doc>
  3032. <return-value transfer-ownership="none" nullable="1">
  3033. <doc xml:space="preserve">a #SoupAuthDomain, or
  3034. %NULL if the request was not authenticated.</doc>
  3035. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  3036. </return-value>
  3037. <parameters>
  3038. <instance-parameter name="client" transfer-ownership="none">
  3039. <doc xml:space="preserve">a #SoupClientContext</doc>
  3040. <type name="ClientContext" c:type="SoupClientContext*"/>
  3041. </instance-parameter>
  3042. </parameters>
  3043. </method>
  3044. <method name="get_auth_user"
  3045. c:identifier="soup_client_context_get_auth_user">
  3046. <doc xml:space="preserve">Checks whether the request associated with @client has been
  3047. authenticated, and if so returns the username that the client
  3048. authenticated as.</doc>
  3049. <return-value transfer-ownership="none" nullable="1">
  3050. <doc xml:space="preserve">the authenticated-as user, or %NULL if
  3051. the request was not authenticated.</doc>
  3052. <type name="utf8" c:type="const char*"/>
  3053. </return-value>
  3054. <parameters>
  3055. <instance-parameter name="client" transfer-ownership="none">
  3056. <doc xml:space="preserve">a #SoupClientContext</doc>
  3057. <type name="ClientContext" c:type="SoupClientContext*"/>
  3058. </instance-parameter>
  3059. </parameters>
  3060. </method>
  3061. <method name="get_gsocket"
  3062. c:identifier="soup_client_context_get_gsocket"
  3063. version="2.48">
  3064. <doc xml:space="preserve">Retrieves the #GSocket that @client is associated with.
  3065. If you are using this method to observe when multiple requests are
  3066. made on the same persistent HTTP connection (eg, as the ntlm-test
  3067. test program does), you will need to pay attention to socket
  3068. destruction as well (eg, by using weak references), so that you do
  3069. not get fooled when the allocator reuses the memory address of a
  3070. previously-destroyed socket to represent a new socket.</doc>
  3071. <return-value transfer-ownership="none" nullable="1">
  3072. <doc xml:space="preserve">the #GSocket that @client is
  3073. associated with, %NULL if you used soup_server_accept_iostream().</doc>
  3074. <type name="Gio.Socket" c:type="GSocket*"/>
  3075. </return-value>
  3076. <parameters>
  3077. <instance-parameter name="client" transfer-ownership="none">
  3078. <doc xml:space="preserve">a #SoupClientContext</doc>
  3079. <type name="ClientContext" c:type="SoupClientContext*"/>
  3080. </instance-parameter>
  3081. </parameters>
  3082. </method>
  3083. <method name="get_host" c:identifier="soup_client_context_get_host">
  3084. <doc xml:space="preserve">Retrieves the IP address associated with the remote end of a
  3085. connection.</doc>
  3086. <return-value transfer-ownership="none" nullable="1">
  3087. <doc xml:space="preserve">the IP address associated with the remote
  3088. end of a connection, it may be %NULL if you used
  3089. soup_server_accept_iostream().</doc>
  3090. <type name="utf8" c:type="const char*"/>
  3091. </return-value>
  3092. <parameters>
  3093. <instance-parameter name="client" transfer-ownership="none">
  3094. <doc xml:space="preserve">a #SoupClientContext</doc>
  3095. <type name="ClientContext" c:type="SoupClientContext*"/>
  3096. </instance-parameter>
  3097. </parameters>
  3098. </method>
  3099. <method name="get_local_address"
  3100. c:identifier="soup_client_context_get_local_address"
  3101. version="2.48">
  3102. <doc xml:space="preserve">Retrieves the #GSocketAddress associated with the local end
  3103. of a connection.</doc>
  3104. <return-value transfer-ownership="none" nullable="1">
  3105. <doc xml:space="preserve">the #GSocketAddress
  3106. associated with the local end of a connection, it may be
  3107. %NULL if you used soup_server_accept_iostream().</doc>
  3108. <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
  3109. </return-value>
  3110. <parameters>
  3111. <instance-parameter name="client" transfer-ownership="none">
  3112. <doc xml:space="preserve">a #SoupClientContext</doc>
  3113. <type name="ClientContext" c:type="SoupClientContext*"/>
  3114. </instance-parameter>
  3115. </parameters>
  3116. </method>
  3117. <method name="get_remote_address"
  3118. c:identifier="soup_client_context_get_remote_address"
  3119. version="2.48">
  3120. <doc xml:space="preserve">Retrieves the #GSocketAddress associated with the remote end
  3121. of a connection.</doc>
  3122. <return-value transfer-ownership="none" nullable="1">
  3123. <doc xml:space="preserve">the #GSocketAddress
  3124. associated with the remote end of a connection, it may be
  3125. %NULL if you used soup_server_accept_iostream().</doc>
  3126. <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
  3127. </return-value>
  3128. <parameters>
  3129. <instance-parameter name="client" transfer-ownership="none">
  3130. <doc xml:space="preserve">a #SoupClientContext</doc>
  3131. <type name="ClientContext" c:type="SoupClientContext*"/>
  3132. </instance-parameter>
  3133. </parameters>
  3134. </method>
  3135. <method name="get_socket"
  3136. c:identifier="soup_client_context_get_socket"
  3137. deprecated="1">
  3138. <doc xml:space="preserve">Retrieves the #SoupSocket that @client is associated with.
  3139. If you are using this method to observe when multiple requests are
  3140. made on the same persistent HTTP connection (eg, as the ntlm-test
  3141. test program does), you will need to pay attention to socket
  3142. destruction as well (either by using weak references, or by
  3143. connecting to the #SoupSocket::disconnected signal), so that you do
  3144. not get fooled when the allocator reuses the memory address of a
  3145. previously-destroyed socket to represent a new socket.</doc>
  3146. <doc-deprecated xml:space="preserve">use soup_client_context_get_gsocket(), which returns
  3147. a #GSocket.</doc-deprecated>
  3148. <return-value transfer-ownership="none">
  3149. <doc xml:space="preserve">the #SoupSocket that @client is
  3150. associated with.</doc>
  3151. <type name="Socket" c:type="SoupSocket*"/>
  3152. </return-value>
  3153. <parameters>
  3154. <instance-parameter name="client" transfer-ownership="none">
  3155. <doc xml:space="preserve">a #SoupClientContext</doc>
  3156. <type name="ClientContext" c:type="SoupClientContext*"/>
  3157. </instance-parameter>
  3158. </parameters>
  3159. </method>
  3160. <method name="steal_connection"
  3161. c:identifier="soup_client_context_steal_connection"
  3162. version="2.50">
  3163. <doc xml:space="preserve">"Steals" the HTTP connection associated with @client from its
  3164. #SoupServer. This happens immediately, regardless of the current
  3165. state of the connection; if the response to the current
  3166. #SoupMessage has not yet finished being sent, then it will be
  3167. discarded; you can steal the connection from a
  3168. #SoupMessage:wrote-informational or #SoupMessage:wrote-body signal
  3169. handler if you need to wait for part or all of the response to be
  3170. sent.
  3171. Note that when calling this function from C, @client will most
  3172. likely be freed as a side effect.</doc>
  3173. <return-value transfer-ownership="full">
  3174. <doc xml:space="preserve">the #GIOStream formerly associated
  3175. with @client (or %NULL if @client was no longer associated with a
  3176. connection). No guarantees are made about what kind of #GIOStream
  3177. is returned.</doc>
  3178. <type name="Gio.IOStream" c:type="GIOStream*"/>
  3179. </return-value>
  3180. <parameters>
  3181. <instance-parameter name="client" transfer-ownership="none">
  3182. <doc xml:space="preserve">a #SoupClientContext</doc>
  3183. <type name="ClientContext" c:type="SoupClientContext*"/>
  3184. </instance-parameter>
  3185. </parameters>
  3186. </method>
  3187. </record>
  3188. <record name="Connection" c:type="SoupConnection" disguised="1">
  3189. </record>
  3190. <enumeration name="ConnectionState"
  3191. glib:type-name="SoupConnectionState"
  3192. glib:get-type="soup_connection_state_get_type"
  3193. c:type="SoupConnectionState">
  3194. <member name="new"
  3195. value="0"
  3196. c:identifier="SOUP_CONNECTION_NEW"
  3197. glib:nick="new">
  3198. </member>
  3199. <member name="connecting"
  3200. value="1"
  3201. c:identifier="SOUP_CONNECTION_CONNECTING"
  3202. glib:nick="connecting">
  3203. </member>
  3204. <member name="idle"
  3205. value="2"
  3206. c:identifier="SOUP_CONNECTION_IDLE"
  3207. glib:nick="idle">
  3208. </member>
  3209. <member name="in_use"
  3210. value="3"
  3211. c:identifier="SOUP_CONNECTION_IN_USE"
  3212. glib:nick="in-use">
  3213. </member>
  3214. <member name="remote_disconnected"
  3215. value="4"
  3216. c:identifier="SOUP_CONNECTION_REMOTE_DISCONNECTED"
  3217. glib:nick="remote-disconnected">
  3218. </member>
  3219. <member name="disconnected"
  3220. value="5"
  3221. c:identifier="SOUP_CONNECTION_DISCONNECTED"
  3222. glib:nick="disconnected">
  3223. </member>
  3224. </enumeration>
  3225. <class name="ContentDecoder"
  3226. c:symbol-prefix="content_decoder"
  3227. c:type="SoupContentDecoder"
  3228. parent="GObject.Object"
  3229. glib:type-name="SoupContentDecoder"
  3230. glib:get-type="soup_content_decoder_get_type"
  3231. glib:type-struct="ContentDecoderClass">
  3232. <implements name="SessionFeature"/>
  3233. <field name="parent">
  3234. <type name="GObject.Object" c:type="GObject"/>
  3235. </field>
  3236. <field name="priv">
  3237. <type name="ContentDecoderPrivate"
  3238. c:type="SoupContentDecoderPrivate*"/>
  3239. </field>
  3240. </class>
  3241. <record name="ContentDecoderClass"
  3242. c:type="SoupContentDecoderClass"
  3243. glib:is-gtype-struct-for="ContentDecoder">
  3244. <field name="parent_class">
  3245. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  3246. </field>
  3247. <field name="_libsoup_reserved1" introspectable="0">
  3248. <callback name="_libsoup_reserved1">
  3249. <return-value transfer-ownership="none">
  3250. <type name="none" c:type="void"/>
  3251. </return-value>
  3252. </callback>
  3253. </field>
  3254. <field name="_libsoup_reserved2" introspectable="0">
  3255. <callback name="_libsoup_reserved2">
  3256. <return-value transfer-ownership="none">
  3257. <type name="none" c:type="void"/>
  3258. </return-value>
  3259. </callback>
  3260. </field>
  3261. <field name="_libsoup_reserved3" introspectable="0">
  3262. <callback name="_libsoup_reserved3">
  3263. <return-value transfer-ownership="none">
  3264. <type name="none" c:type="void"/>
  3265. </return-value>
  3266. </callback>
  3267. </field>
  3268. <field name="_libsoup_reserved4" introspectable="0">
  3269. <callback name="_libsoup_reserved4">
  3270. <return-value transfer-ownership="none">
  3271. <type name="none" c:type="void"/>
  3272. </return-value>
  3273. </callback>
  3274. </field>
  3275. <field name="_libsoup_reserved5" introspectable="0">
  3276. <callback name="_libsoup_reserved5">
  3277. <return-value transfer-ownership="none">
  3278. <type name="none" c:type="void"/>
  3279. </return-value>
  3280. </callback>
  3281. </field>
  3282. </record>
  3283. <record name="ContentDecoderPrivate"
  3284. c:type="SoupContentDecoderPrivate"
  3285. disguised="1">
  3286. </record>
  3287. <class name="ContentSniffer"
  3288. c:symbol-prefix="content_sniffer"
  3289. c:type="SoupContentSniffer"
  3290. parent="GObject.Object"
  3291. glib:type-name="SoupContentSniffer"
  3292. glib:get-type="soup_content_sniffer_get_type"
  3293. glib:type-struct="ContentSnifferClass">
  3294. <implements name="SessionFeature"/>
  3295. <constructor name="new"
  3296. c:identifier="soup_content_sniffer_new"
  3297. version="2.28">
  3298. <doc xml:space="preserve">Creates a new #SoupContentSniffer.</doc>
  3299. <return-value transfer-ownership="full">
  3300. <doc xml:space="preserve">a new #SoupContentSniffer</doc>
  3301. <type name="ContentSniffer" c:type="SoupContentSniffer*"/>
  3302. </return-value>
  3303. </constructor>
  3304. <virtual-method name="get_buffer_size"
  3305. invoker="get_buffer_size"
  3306. version="2.28">
  3307. <doc xml:space="preserve">Gets the number of bytes @sniffer needs in order to properly sniff
  3308. a buffer.</doc>
  3309. <return-value transfer-ownership="none">
  3310. <doc xml:space="preserve">the number of bytes to sniff</doc>
  3311. <type name="gsize" c:type="gsize"/>
  3312. </return-value>
  3313. <parameters>
  3314. <instance-parameter name="sniffer" transfer-ownership="none">
  3315. <doc xml:space="preserve">a #SoupContentSniffer</doc>
  3316. <type name="ContentSniffer" c:type="SoupContentSniffer*"/>
  3317. </instance-parameter>
  3318. </parameters>
  3319. </virtual-method>
  3320. <virtual-method name="sniff" invoker="sniff" version="2.28">
  3321. <doc xml:space="preserve">Sniffs @buffer to determine its Content-Type. The result may also
  3322. be influenced by the Content-Type declared in @msg's response
  3323. headers.</doc>
  3324. <return-value transfer-ownership="full">
  3325. <doc xml:space="preserve">the sniffed Content-Type of @buffer; this will never be %NULL,
  3326. but may be "application/octet-stream".</doc>
  3327. <type name="utf8" c:type="char*"/>
  3328. </return-value>
  3329. <parameters>
  3330. <instance-parameter name="sniffer" transfer-ownership="none">
  3331. <doc xml:space="preserve">a #SoupContentSniffer</doc>
  3332. <type name="ContentSniffer" c:type="SoupContentSniffer*"/>
  3333. </instance-parameter>
  3334. <parameter name="msg" transfer-ownership="none">
  3335. <doc xml:space="preserve">the message to sniff</doc>
  3336. <type name="Message" c:type="SoupMessage*"/>
  3337. </parameter>
  3338. <parameter name="buffer" transfer-ownership="none">
  3339. <doc xml:space="preserve">a buffer containing the start of @msg's response body</doc>
  3340. <type name="Buffer" c:type="SoupBuffer*"/>
  3341. </parameter>
  3342. <parameter name="params"
  3343. direction="out"
  3344. caller-allocates="0"
  3345. transfer-ownership="full"
  3346. optional="1"
  3347. allow-none="1">
  3348. <doc xml:space="preserve">return
  3349. location for Content-Type parameters (eg, "charset"), or %NULL</doc>
  3350. <type name="GLib.HashTable" c:type="GHashTable**">
  3351. <type name="utf8"/>
  3352. <type name="utf8"/>
  3353. </type>
  3354. </parameter>
  3355. </parameters>
  3356. </virtual-method>
  3357. <method name="get_buffer_size"
  3358. c:identifier="soup_content_sniffer_get_buffer_size"
  3359. version="2.28">
  3360. <doc xml:space="preserve">Gets the number of bytes @sniffer needs in order to properly sniff
  3361. a buffer.</doc>
  3362. <return-value transfer-ownership="none">
  3363. <doc xml:space="preserve">the number of bytes to sniff</doc>
  3364. <type name="gsize" c:type="gsize"/>
  3365. </return-value>
  3366. <parameters>
  3367. <instance-parameter name="sniffer" transfer-ownership="none">
  3368. <doc xml:space="preserve">a #SoupContentSniffer</doc>
  3369. <type name="ContentSniffer" c:type="SoupContentSniffer*"/>
  3370. </instance-parameter>
  3371. </parameters>
  3372. </method>
  3373. <method name="sniff"
  3374. c:identifier="soup_content_sniffer_sniff"
  3375. version="2.28">
  3376. <doc xml:space="preserve">Sniffs @buffer to determine its Content-Type. The result may also
  3377. be influenced by the Content-Type declared in @msg's response
  3378. headers.</doc>
  3379. <return-value transfer-ownership="full">
  3380. <doc xml:space="preserve">the sniffed Content-Type of @buffer; this will never be %NULL,
  3381. but may be "application/octet-stream".</doc>
  3382. <type name="utf8" c:type="char*"/>
  3383. </return-value>
  3384. <parameters>
  3385. <instance-parameter name="sniffer" transfer-ownership="none">
  3386. <doc xml:space="preserve">a #SoupContentSniffer</doc>
  3387. <type name="ContentSniffer" c:type="SoupContentSniffer*"/>
  3388. </instance-parameter>
  3389. <parameter name="msg" transfer-ownership="none">
  3390. <doc xml:space="preserve">the message to sniff</doc>
  3391. <type name="Message" c:type="SoupMessage*"/>
  3392. </parameter>
  3393. <parameter name="buffer" transfer-ownership="none">
  3394. <doc xml:space="preserve">a buffer containing the start of @msg's response body</doc>
  3395. <type name="Buffer" c:type="SoupBuffer*"/>
  3396. </parameter>
  3397. <parameter name="params"
  3398. direction="out"
  3399. caller-allocates="0"
  3400. transfer-ownership="full"
  3401. optional="1"
  3402. allow-none="1">
  3403. <doc xml:space="preserve">return
  3404. location for Content-Type parameters (eg, "charset"), or %NULL</doc>
  3405. <type name="GLib.HashTable" c:type="GHashTable**">
  3406. <type name="utf8"/>
  3407. <type name="utf8"/>
  3408. </type>
  3409. </parameter>
  3410. </parameters>
  3411. </method>
  3412. <field name="parent">
  3413. <type name="GObject.Object" c:type="GObject"/>
  3414. </field>
  3415. <field name="priv">
  3416. <type name="ContentSnifferPrivate"
  3417. c:type="SoupContentSnifferPrivate*"/>
  3418. </field>
  3419. </class>
  3420. <record name="ContentSnifferClass"
  3421. c:type="SoupContentSnifferClass"
  3422. glib:is-gtype-struct-for="ContentSniffer">
  3423. <field name="parent_class">
  3424. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  3425. </field>
  3426. <field name="sniff">
  3427. <callback name="sniff">
  3428. <return-value transfer-ownership="full">
  3429. <doc xml:space="preserve">the sniffed Content-Type of @buffer; this will never be %NULL,
  3430. but may be "application/octet-stream".</doc>
  3431. <type name="utf8" c:type="char*"/>
  3432. </return-value>
  3433. <parameters>
  3434. <parameter name="sniffer" transfer-ownership="none">
  3435. <doc xml:space="preserve">a #SoupContentSniffer</doc>
  3436. <type name="ContentSniffer" c:type="SoupContentSniffer*"/>
  3437. </parameter>
  3438. <parameter name="msg" transfer-ownership="none">
  3439. <doc xml:space="preserve">the message to sniff</doc>
  3440. <type name="Message" c:type="SoupMessage*"/>
  3441. </parameter>
  3442. <parameter name="buffer" transfer-ownership="none">
  3443. <doc xml:space="preserve">a buffer containing the start of @msg's response body</doc>
  3444. <type name="Buffer" c:type="SoupBuffer*"/>
  3445. </parameter>
  3446. <parameter name="params"
  3447. direction="out"
  3448. caller-allocates="0"
  3449. transfer-ownership="full"
  3450. optional="1"
  3451. allow-none="1">
  3452. <doc xml:space="preserve">return
  3453. location for Content-Type parameters (eg, "charset"), or %NULL</doc>
  3454. <type name="GLib.HashTable" c:type="GHashTable**">
  3455. <type name="utf8"/>
  3456. <type name="utf8"/>
  3457. </type>
  3458. </parameter>
  3459. </parameters>
  3460. </callback>
  3461. </field>
  3462. <field name="get_buffer_size">
  3463. <callback name="get_buffer_size">
  3464. <return-value transfer-ownership="none">
  3465. <doc xml:space="preserve">the number of bytes to sniff</doc>
  3466. <type name="gsize" c:type="gsize"/>
  3467. </return-value>
  3468. <parameters>
  3469. <parameter name="sniffer" transfer-ownership="none">
  3470. <doc xml:space="preserve">a #SoupContentSniffer</doc>
  3471. <type name="ContentSniffer" c:type="SoupContentSniffer*"/>
  3472. </parameter>
  3473. </parameters>
  3474. </callback>
  3475. </field>
  3476. <field name="_libsoup_reserved1" introspectable="0">
  3477. <callback name="_libsoup_reserved1">
  3478. <return-value transfer-ownership="none">
  3479. <type name="none" c:type="void"/>
  3480. </return-value>
  3481. </callback>
  3482. </field>
  3483. <field name="_libsoup_reserved2" introspectable="0">
  3484. <callback name="_libsoup_reserved2">
  3485. <return-value transfer-ownership="none">
  3486. <type name="none" c:type="void"/>
  3487. </return-value>
  3488. </callback>
  3489. </field>
  3490. <field name="_libsoup_reserved3" introspectable="0">
  3491. <callback name="_libsoup_reserved3">
  3492. <return-value transfer-ownership="none">
  3493. <type name="none" c:type="void"/>
  3494. </return-value>
  3495. </callback>
  3496. </field>
  3497. <field name="_libsoup_reserved4" introspectable="0">
  3498. <callback name="_libsoup_reserved4">
  3499. <return-value transfer-ownership="none">
  3500. <type name="none" c:type="void"/>
  3501. </return-value>
  3502. </callback>
  3503. </field>
  3504. <field name="_libsoup_reserved5" introspectable="0">
  3505. <callback name="_libsoup_reserved5">
  3506. <return-value transfer-ownership="none">
  3507. <type name="none" c:type="void"/>
  3508. </return-value>
  3509. </callback>
  3510. </field>
  3511. </record>
  3512. <record name="ContentSnifferPrivate"
  3513. c:type="SoupContentSnifferPrivate"
  3514. disguised="1">
  3515. </record>
  3516. <record name="Cookie"
  3517. c:type="SoupCookie"
  3518. version="2.24"
  3519. glib:type-name="SoupCookie"
  3520. glib:get-type="soup_cookie_get_type"
  3521. c:symbol-prefix="cookie">
  3522. <doc xml:space="preserve">An HTTP cookie.
  3523. @name and @value will be set for all cookies. If the cookie is
  3524. generated from a string that appears to have no name, then @name
  3525. will be the empty string.
  3526. @domain and @path give the host or domain, and path within that
  3527. host/domain, to restrict this cookie to. If @domain starts with
  3528. ".", that indicates a domain (which matches the string after the
  3529. ".", or any hostname that has @domain as a suffix). Otherwise, it
  3530. is a hostname and must match exactly.
  3531. @expires will be non-%NULL if the cookie uses either the original
  3532. "expires" attribute, or the newer "max-age" attribute. If @expires
  3533. is %NULL, it indicates that neither "expires" nor "max-age" was
  3534. specified, and the cookie expires at the end of the session.
  3535. If @http_only is set, the cookie should not be exposed to untrusted
  3536. code (eg, javascript), so as to minimize the danger posed by
  3537. cross-site scripting attacks.</doc>
  3538. <field name="name" writable="1">
  3539. <doc xml:space="preserve">the cookie name</doc>
  3540. <type name="utf8" c:type="char*"/>
  3541. </field>
  3542. <field name="value" writable="1">
  3543. <doc xml:space="preserve">the cookie value</doc>
  3544. <type name="utf8" c:type="char*"/>
  3545. </field>
  3546. <field name="domain" writable="1">
  3547. <doc xml:space="preserve">the "domain" attribute, or else the hostname that the
  3548. cookie came from.</doc>
  3549. <type name="utf8" c:type="char*"/>
  3550. </field>
  3551. <field name="path" writable="1">
  3552. <doc xml:space="preserve">the "path" attribute, or %NULL</doc>
  3553. <type name="utf8" c:type="char*"/>
  3554. </field>
  3555. <field name="expires" writable="1">
  3556. <doc xml:space="preserve">the cookie expiration time, or %NULL for a session cookie</doc>
  3557. <type name="Date" c:type="SoupDate*"/>
  3558. </field>
  3559. <field name="secure" writable="1">
  3560. <doc xml:space="preserve">%TRUE if the cookie should only be tranferred over SSL</doc>
  3561. <type name="gboolean" c:type="gboolean"/>
  3562. </field>
  3563. <field name="http_only" writable="1">
  3564. <doc xml:space="preserve">%TRUE if the cookie should not be exposed to scripts</doc>
  3565. <type name="gboolean" c:type="gboolean"/>
  3566. </field>
  3567. <constructor name="new" c:identifier="soup_cookie_new" version="2.24">
  3568. <doc xml:space="preserve">Creates a new #SoupCookie with the given attributes. (Use
  3569. soup_cookie_set_secure() and soup_cookie_set_http_only() if you
  3570. need to set those attributes on the returned cookie.)
  3571. If @domain starts with ".", that indicates a domain (which matches
  3572. the string after the ".", or any hostname that has @domain as a
  3573. suffix). Otherwise, it is a hostname and must match exactly.
  3574. @max_age is used to set the "expires" attribute on the cookie; pass
  3575. -1 to not include the attribute (indicating that the cookie expires
  3576. with the current session), 0 for an already-expired cookie, or a
  3577. lifetime in seconds. You can use the constants
  3578. %SOUP_COOKIE_MAX_AGE_ONE_HOUR, %SOUP_COOKIE_MAX_AGE_ONE_DAY,
  3579. %SOUP_COOKIE_MAX_AGE_ONE_WEEK and %SOUP_COOKIE_MAX_AGE_ONE_YEAR (or
  3580. multiples thereof) to calculate this value. (If you really care
  3581. about setting the exact time that the cookie will expire, use
  3582. soup_cookie_set_expires().)</doc>
  3583. <return-value transfer-ownership="full">
  3584. <doc xml:space="preserve">a new #SoupCookie.</doc>
  3585. <type name="Cookie" c:type="SoupCookie*"/>
  3586. </return-value>
  3587. <parameters>
  3588. <parameter name="name" transfer-ownership="none">
  3589. <doc xml:space="preserve">cookie name</doc>
  3590. <type name="utf8" c:type="const char*"/>
  3591. </parameter>
  3592. <parameter name="value" transfer-ownership="none">
  3593. <doc xml:space="preserve">cookie value</doc>
  3594. <type name="utf8" c:type="const char*"/>
  3595. </parameter>
  3596. <parameter name="domain" transfer-ownership="none">
  3597. <doc xml:space="preserve">cookie domain or hostname</doc>
  3598. <type name="utf8" c:type="const char*"/>
  3599. </parameter>
  3600. <parameter name="path" transfer-ownership="none">
  3601. <doc xml:space="preserve">cookie path, or %NULL</doc>
  3602. <type name="utf8" c:type="const char*"/>
  3603. </parameter>
  3604. <parameter name="max_age" transfer-ownership="none">
  3605. <doc xml:space="preserve">max age of the cookie, or -1 for a session cookie</doc>
  3606. <type name="gint" c:type="int"/>
  3607. </parameter>
  3608. </parameters>
  3609. </constructor>
  3610. <method name="applies_to_uri"
  3611. c:identifier="soup_cookie_applies_to_uri"
  3612. version="2.24">
  3613. <doc xml:space="preserve">Tests if @cookie should be sent to @uri.
  3614. (At the moment, this does not check that @cookie's domain matches
  3615. @uri, because it assumes that the caller has already done that.
  3616. But don't rely on that; it may change in the future.)</doc>
  3617. <return-value transfer-ownership="none">
  3618. <doc xml:space="preserve">%TRUE if @cookie should be sent to @uri, %FALSE if
  3619. not</doc>
  3620. <type name="gboolean" c:type="gboolean"/>
  3621. </return-value>
  3622. <parameters>
  3623. <instance-parameter name="cookie" transfer-ownership="none">
  3624. <doc xml:space="preserve">a #SoupCookie</doc>
  3625. <type name="Cookie" c:type="SoupCookie*"/>
  3626. </instance-parameter>
  3627. <parameter name="uri" transfer-ownership="none">
  3628. <doc xml:space="preserve">a #SoupURI</doc>
  3629. <type name="URI" c:type="SoupURI*"/>
  3630. </parameter>
  3631. </parameters>
  3632. </method>
  3633. <method name="copy" c:identifier="soup_cookie_copy" version="2.24">
  3634. <doc xml:space="preserve">Copies @cookie.</doc>
  3635. <return-value transfer-ownership="full">
  3636. <doc xml:space="preserve">a copy of @cookie</doc>
  3637. <type name="Cookie" c:type="SoupCookie*"/>
  3638. </return-value>
  3639. <parameters>
  3640. <instance-parameter name="cookie" transfer-ownership="none">
  3641. <doc xml:space="preserve">a #SoupCookie</doc>
  3642. <type name="Cookie" c:type="SoupCookie*"/>
  3643. </instance-parameter>
  3644. </parameters>
  3645. </method>
  3646. <method name="domain_matches"
  3647. c:identifier="soup_cookie_domain_matches"
  3648. version="2.30">
  3649. <doc xml:space="preserve">Checks if the @cookie's domain and @host match in the sense that
  3650. @cookie should be sent when making a request to @host, or that
  3651. @cookie should be accepted when receiving a response from @host.</doc>
  3652. <return-value transfer-ownership="none">
  3653. <doc xml:space="preserve">%TRUE if the domains match, %FALSE otherwise</doc>
  3654. <type name="gboolean" c:type="gboolean"/>
  3655. </return-value>
  3656. <parameters>
  3657. <instance-parameter name="cookie" transfer-ownership="none">
  3658. <doc xml:space="preserve">a #SoupCookie</doc>
  3659. <type name="Cookie" c:type="SoupCookie*"/>
  3660. </instance-parameter>
  3661. <parameter name="host" transfer-ownership="none">
  3662. <doc xml:space="preserve">a URI</doc>
  3663. <type name="utf8" c:type="const char*"/>
  3664. </parameter>
  3665. </parameters>
  3666. </method>
  3667. <method name="equal" c:identifier="soup_cookie_equal" version="2.24">
  3668. <doc xml:space="preserve">Tests if @cookie1 and @cookie2 are equal.
  3669. Note that currently, this does not check that the cookie domains
  3670. match. This may change in the future.</doc>
  3671. <return-value transfer-ownership="none">
  3672. <doc xml:space="preserve">whether the cookies are equal.</doc>
  3673. <type name="gboolean" c:type="gboolean"/>
  3674. </return-value>
  3675. <parameters>
  3676. <instance-parameter name="cookie1" transfer-ownership="none">
  3677. <doc xml:space="preserve">a #SoupCookie</doc>
  3678. <type name="Cookie" c:type="SoupCookie*"/>
  3679. </instance-parameter>
  3680. <parameter name="cookie2" transfer-ownership="none">
  3681. <doc xml:space="preserve">a #SoupCookie</doc>
  3682. <type name="Cookie" c:type="SoupCookie*"/>
  3683. </parameter>
  3684. </parameters>
  3685. </method>
  3686. <method name="free" c:identifier="soup_cookie_free" version="2.24">
  3687. <doc xml:space="preserve">Frees @cookie</doc>
  3688. <return-value transfer-ownership="none">
  3689. <type name="none" c:type="void"/>
  3690. </return-value>
  3691. <parameters>
  3692. <instance-parameter name="cookie" transfer-ownership="none">
  3693. <doc xml:space="preserve">a #SoupCookie</doc>
  3694. <type name="Cookie" c:type="SoupCookie*"/>
  3695. </instance-parameter>
  3696. </parameters>
  3697. </method>
  3698. <method name="get_domain"
  3699. c:identifier="soup_cookie_get_domain"
  3700. version="2.32">
  3701. <doc xml:space="preserve">Gets @cookie's domain</doc>
  3702. <return-value transfer-ownership="none">
  3703. <doc xml:space="preserve">@cookie's domain</doc>
  3704. <type name="utf8" c:type="const char*"/>
  3705. </return-value>
  3706. <parameters>
  3707. <instance-parameter name="cookie" transfer-ownership="none">
  3708. <doc xml:space="preserve">a #SoupCookie</doc>
  3709. <type name="Cookie" c:type="SoupCookie*"/>
  3710. </instance-parameter>
  3711. </parameters>
  3712. </method>
  3713. <method name="get_expires"
  3714. c:identifier="soup_cookie_get_expires"
  3715. version="2.32">
  3716. <doc xml:space="preserve">Gets @cookie's expiration time</doc>
  3717. <return-value transfer-ownership="none">
  3718. <doc xml:space="preserve">@cookie's expiration time, which is
  3719. owned by @cookie and should not be modified or freed.</doc>
  3720. <type name="Date" c:type="SoupDate*"/>
  3721. </return-value>
  3722. <parameters>
  3723. <instance-parameter name="cookie" transfer-ownership="none">
  3724. <doc xml:space="preserve">a #SoupCookie</doc>
  3725. <type name="Cookie" c:type="SoupCookie*"/>
  3726. </instance-parameter>
  3727. </parameters>
  3728. </method>
  3729. <method name="get_http_only"
  3730. c:identifier="soup_cookie_get_http_only"
  3731. version="2.32">
  3732. <doc xml:space="preserve">Gets @cookie's HttpOnly attribute</doc>
  3733. <return-value transfer-ownership="none">
  3734. <doc xml:space="preserve">@cookie's HttpOnly attribute</doc>
  3735. <type name="gboolean" c:type="gboolean"/>
  3736. </return-value>
  3737. <parameters>
  3738. <instance-parameter name="cookie" transfer-ownership="none">
  3739. <doc xml:space="preserve">a #SoupCookie</doc>
  3740. <type name="Cookie" c:type="SoupCookie*"/>
  3741. </instance-parameter>
  3742. </parameters>
  3743. </method>
  3744. <method name="get_name"
  3745. c:identifier="soup_cookie_get_name"
  3746. version="2.32">
  3747. <doc xml:space="preserve">Gets @cookie's name</doc>
  3748. <return-value transfer-ownership="none">
  3749. <doc xml:space="preserve">@cookie's name</doc>
  3750. <type name="utf8" c:type="const char*"/>
  3751. </return-value>
  3752. <parameters>
  3753. <instance-parameter name="cookie" transfer-ownership="none">
  3754. <doc xml:space="preserve">a #SoupCookie</doc>
  3755. <type name="Cookie" c:type="SoupCookie*"/>
  3756. </instance-parameter>
  3757. </parameters>
  3758. </method>
  3759. <method name="get_path"
  3760. c:identifier="soup_cookie_get_path"
  3761. version="2.32">
  3762. <doc xml:space="preserve">Gets @cookie's path</doc>
  3763. <return-value transfer-ownership="none">
  3764. <doc xml:space="preserve">@cookie's path</doc>
  3765. <type name="utf8" c:type="const char*"/>
  3766. </return-value>
  3767. <parameters>
  3768. <instance-parameter name="cookie" transfer-ownership="none">
  3769. <doc xml:space="preserve">a #SoupCookie</doc>
  3770. <type name="Cookie" c:type="SoupCookie*"/>
  3771. </instance-parameter>
  3772. </parameters>
  3773. </method>
  3774. <method name="get_secure"
  3775. c:identifier="soup_cookie_get_secure"
  3776. version="2.32">
  3777. <doc xml:space="preserve">Gets @cookie's secure attribute</doc>
  3778. <return-value transfer-ownership="none">
  3779. <doc xml:space="preserve">@cookie's secure attribute</doc>
  3780. <type name="gboolean" c:type="gboolean"/>
  3781. </return-value>
  3782. <parameters>
  3783. <instance-parameter name="cookie" transfer-ownership="none">
  3784. <doc xml:space="preserve">a #SoupCookie</doc>
  3785. <type name="Cookie" c:type="SoupCookie*"/>
  3786. </instance-parameter>
  3787. </parameters>
  3788. </method>
  3789. <method name="get_value"
  3790. c:identifier="soup_cookie_get_value"
  3791. version="2.32">
  3792. <doc xml:space="preserve">Gets @cookie's value</doc>
  3793. <return-value transfer-ownership="none">
  3794. <doc xml:space="preserve">@cookie's value</doc>
  3795. <type name="utf8" c:type="const char*"/>
  3796. </return-value>
  3797. <parameters>
  3798. <instance-parameter name="cookie" transfer-ownership="none">
  3799. <doc xml:space="preserve">a #SoupCookie</doc>
  3800. <type name="Cookie" c:type="SoupCookie*"/>
  3801. </instance-parameter>
  3802. </parameters>
  3803. </method>
  3804. <method name="set_domain"
  3805. c:identifier="soup_cookie_set_domain"
  3806. version="2.24">
  3807. <doc xml:space="preserve">Sets @cookie's domain to @domain</doc>
  3808. <return-value transfer-ownership="none">
  3809. <type name="none" c:type="void"/>
  3810. </return-value>
  3811. <parameters>
  3812. <instance-parameter name="cookie" transfer-ownership="none">
  3813. <doc xml:space="preserve">a #SoupCookie</doc>
  3814. <type name="Cookie" c:type="SoupCookie*"/>
  3815. </instance-parameter>
  3816. <parameter name="domain" transfer-ownership="none">
  3817. <doc xml:space="preserve">the new domain</doc>
  3818. <type name="utf8" c:type="const char*"/>
  3819. </parameter>
  3820. </parameters>
  3821. </method>
  3822. <method name="set_expires"
  3823. c:identifier="soup_cookie_set_expires"
  3824. version="2.24">
  3825. <doc xml:space="preserve">Sets @cookie's expiration time to @expires. If @expires is %NULL,
  3826. @cookie will be a session cookie and will expire at the end of the
  3827. client's session.
  3828. (This sets the same property as soup_cookie_set_max_age().)</doc>
  3829. <return-value transfer-ownership="none">
  3830. <type name="none" c:type="void"/>
  3831. </return-value>
  3832. <parameters>
  3833. <instance-parameter name="cookie" transfer-ownership="none">
  3834. <doc xml:space="preserve">a #SoupCookie</doc>
  3835. <type name="Cookie" c:type="SoupCookie*"/>
  3836. </instance-parameter>
  3837. <parameter name="expires" transfer-ownership="none">
  3838. <doc xml:space="preserve">the new expiration time, or %NULL</doc>
  3839. <type name="Date" c:type="SoupDate*"/>
  3840. </parameter>
  3841. </parameters>
  3842. </method>
  3843. <method name="set_http_only"
  3844. c:identifier="soup_cookie_set_http_only"
  3845. version="2.24">
  3846. <doc xml:space="preserve">Sets @cookie's HttpOnly attribute to @http_only. If %TRUE, @cookie
  3847. will be marked as "http only", meaning it should not be exposed to
  3848. web page scripts or other untrusted code.</doc>
  3849. <return-value transfer-ownership="none">
  3850. <type name="none" c:type="void"/>
  3851. </return-value>
  3852. <parameters>
  3853. <instance-parameter name="cookie" transfer-ownership="none">
  3854. <doc xml:space="preserve">a #SoupCookie</doc>
  3855. <type name="Cookie" c:type="SoupCookie*"/>
  3856. </instance-parameter>
  3857. <parameter name="http_only" transfer-ownership="none">
  3858. <doc xml:space="preserve">the new value for the HttpOnly attribute</doc>
  3859. <type name="gboolean" c:type="gboolean"/>
  3860. </parameter>
  3861. </parameters>
  3862. </method>
  3863. <method name="set_max_age"
  3864. c:identifier="soup_cookie_set_max_age"
  3865. version="2.24">
  3866. <doc xml:space="preserve">Sets @cookie's max age to @max_age. If @max_age is -1, the cookie
  3867. is a session cookie, and will expire at the end of the client's
  3868. session. Otherwise, it is the number of seconds until the cookie
  3869. expires. You can use the constants %SOUP_COOKIE_MAX_AGE_ONE_HOUR,
  3870. %SOUP_COOKIE_MAX_AGE_ONE_DAY, %SOUP_COOKIE_MAX_AGE_ONE_WEEK and
  3871. %SOUP_COOKIE_MAX_AGE_ONE_YEAR (or multiples thereof) to calculate
  3872. this value. (A value of 0 indicates that the cookie should be
  3873. considered already-expired.)
  3874. (This sets the same property as soup_cookie_set_expires().)</doc>
  3875. <return-value transfer-ownership="none">
  3876. <type name="none" c:type="void"/>
  3877. </return-value>
  3878. <parameters>
  3879. <instance-parameter name="cookie" transfer-ownership="none">
  3880. <doc xml:space="preserve">a #SoupCookie</doc>
  3881. <type name="Cookie" c:type="SoupCookie*"/>
  3882. </instance-parameter>
  3883. <parameter name="max_age" transfer-ownership="none">
  3884. <doc xml:space="preserve">the new max age</doc>
  3885. <type name="gint" c:type="int"/>
  3886. </parameter>
  3887. </parameters>
  3888. </method>
  3889. <method name="set_name"
  3890. c:identifier="soup_cookie_set_name"
  3891. version="2.24">
  3892. <doc xml:space="preserve">Sets @cookie's name to @name</doc>
  3893. <return-value transfer-ownership="none">
  3894. <type name="none" c:type="void"/>
  3895. </return-value>
  3896. <parameters>
  3897. <instance-parameter name="cookie" transfer-ownership="none">
  3898. <doc xml:space="preserve">a #SoupCookie</doc>
  3899. <type name="Cookie" c:type="SoupCookie*"/>
  3900. </instance-parameter>
  3901. <parameter name="name" transfer-ownership="none">
  3902. <doc xml:space="preserve">the new name</doc>
  3903. <type name="utf8" c:type="const char*"/>
  3904. </parameter>
  3905. </parameters>
  3906. </method>
  3907. <method name="set_path"
  3908. c:identifier="soup_cookie_set_path"
  3909. version="2.24">
  3910. <doc xml:space="preserve">Sets @cookie's path to @path</doc>
  3911. <return-value transfer-ownership="none">
  3912. <type name="none" c:type="void"/>
  3913. </return-value>
  3914. <parameters>
  3915. <instance-parameter name="cookie" transfer-ownership="none">
  3916. <doc xml:space="preserve">a #SoupCookie</doc>
  3917. <type name="Cookie" c:type="SoupCookie*"/>
  3918. </instance-parameter>
  3919. <parameter name="path" transfer-ownership="none">
  3920. <doc xml:space="preserve">the new path</doc>
  3921. <type name="utf8" c:type="const char*"/>
  3922. </parameter>
  3923. </parameters>
  3924. </method>
  3925. <method name="set_secure"
  3926. c:identifier="soup_cookie_set_secure"
  3927. version="2.24">
  3928. <doc xml:space="preserve">Sets @cookie's secure attribute to @secure. If %TRUE, @cookie will
  3929. only be transmitted from the client to the server over secure
  3930. (https) connections.</doc>
  3931. <return-value transfer-ownership="none">
  3932. <type name="none" c:type="void"/>
  3933. </return-value>
  3934. <parameters>
  3935. <instance-parameter name="cookie" transfer-ownership="none">
  3936. <doc xml:space="preserve">a #SoupCookie</doc>
  3937. <type name="Cookie" c:type="SoupCookie*"/>
  3938. </instance-parameter>
  3939. <parameter name="secure" transfer-ownership="none">
  3940. <doc xml:space="preserve">the new value for the secure attribute</doc>
  3941. <type name="gboolean" c:type="gboolean"/>
  3942. </parameter>
  3943. </parameters>
  3944. </method>
  3945. <method name="set_value"
  3946. c:identifier="soup_cookie_set_value"
  3947. version="2.24">
  3948. <doc xml:space="preserve">Sets @cookie's value to @value</doc>
  3949. <return-value transfer-ownership="none">
  3950. <type name="none" c:type="void"/>
  3951. </return-value>
  3952. <parameters>
  3953. <instance-parameter name="cookie" transfer-ownership="none">
  3954. <doc xml:space="preserve">a #SoupCookie</doc>
  3955. <type name="Cookie" c:type="SoupCookie*"/>
  3956. </instance-parameter>
  3957. <parameter name="value" transfer-ownership="none">
  3958. <doc xml:space="preserve">the new value</doc>
  3959. <type name="utf8" c:type="const char*"/>
  3960. </parameter>
  3961. </parameters>
  3962. </method>
  3963. <method name="to_cookie_header"
  3964. c:identifier="soup_cookie_to_cookie_header"
  3965. version="2.24">
  3966. <doc xml:space="preserve">Serializes @cookie in the format used by the Cookie header (ie, for
  3967. returning a cookie from a #SoupSession to a server).</doc>
  3968. <return-value transfer-ownership="full">
  3969. <doc xml:space="preserve">the header</doc>
  3970. <type name="utf8" c:type="char*"/>
  3971. </return-value>
  3972. <parameters>
  3973. <instance-parameter name="cookie" transfer-ownership="none">
  3974. <doc xml:space="preserve">a #SoupCookie</doc>
  3975. <type name="Cookie" c:type="SoupCookie*"/>
  3976. </instance-parameter>
  3977. </parameters>
  3978. </method>
  3979. <method name="to_set_cookie_header"
  3980. c:identifier="soup_cookie_to_set_cookie_header"
  3981. version="2.24">
  3982. <doc xml:space="preserve">Serializes @cookie in the format used by the Set-Cookie header
  3983. (ie, for sending a cookie from a #SoupServer to a client).</doc>
  3984. <return-value transfer-ownership="full">
  3985. <doc xml:space="preserve">the header</doc>
  3986. <type name="utf8" c:type="char*"/>
  3987. </return-value>
  3988. <parameters>
  3989. <instance-parameter name="cookie" transfer-ownership="none">
  3990. <doc xml:space="preserve">a #SoupCookie</doc>
  3991. <type name="Cookie" c:type="SoupCookie*"/>
  3992. </instance-parameter>
  3993. </parameters>
  3994. </method>
  3995. <function name="parse" c:identifier="soup_cookie_parse" version="2.24">
  3996. <doc xml:space="preserve">Parses @header and returns a #SoupCookie. (If @header contains
  3997. multiple cookies, only the first one will be parsed.)
  3998. If @header does not have "path" or "domain" attributes, they will
  3999. be defaulted from @origin. If @origin is %NULL, path will default
  4000. to "/", but domain will be left as %NULL. Note that this is not a
  4001. valid state for a #SoupCookie, and you will need to fill in some
  4002. appropriate string for the domain if you want to actually make use
  4003. of the cookie.</doc>
  4004. <return-value transfer-ownership="full" nullable="1">
  4005. <doc xml:space="preserve">a new #SoupCookie, or %NULL if it could
  4006. not be parsed, or contained an illegal "domain" attribute for a
  4007. cookie originating from @origin.</doc>
  4008. <type name="Cookie" c:type="SoupCookie*"/>
  4009. </return-value>
  4010. <parameters>
  4011. <parameter name="header" transfer-ownership="none">
  4012. <doc xml:space="preserve">a cookie string (eg, the value of a Set-Cookie header)</doc>
  4013. <type name="utf8" c:type="const char*"/>
  4014. </parameter>
  4015. <parameter name="origin" transfer-ownership="none">
  4016. <doc xml:space="preserve">origin of the cookie, or %NULL</doc>
  4017. <type name="URI" c:type="SoupURI*"/>
  4018. </parameter>
  4019. </parameters>
  4020. </function>
  4021. </record>
  4022. <class name="CookieJar"
  4023. c:symbol-prefix="cookie_jar"
  4024. c:type="SoupCookieJar"
  4025. parent="GObject.Object"
  4026. glib:type-name="SoupCookieJar"
  4027. glib:get-type="soup_cookie_jar_get_type"
  4028. glib:type-struct="CookieJarClass">
  4029. <implements name="SessionFeature"/>
  4030. <constructor name="new"
  4031. c:identifier="soup_cookie_jar_new"
  4032. version="2.24">
  4033. <doc xml:space="preserve">Creates a new #SoupCookieJar. The base #SoupCookieJar class does
  4034. not support persistent storage of cookies; use a subclass for that.</doc>
  4035. <return-value transfer-ownership="full">
  4036. <doc xml:space="preserve">a new #SoupCookieJar</doc>
  4037. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4038. </return-value>
  4039. </constructor>
  4040. <virtual-method name="changed">
  4041. <return-value transfer-ownership="none">
  4042. <type name="none" c:type="void"/>
  4043. </return-value>
  4044. <parameters>
  4045. <instance-parameter name="jar" transfer-ownership="none">
  4046. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4047. </instance-parameter>
  4048. <parameter name="old_cookie" transfer-ownership="none">
  4049. <type name="Cookie" c:type="SoupCookie*"/>
  4050. </parameter>
  4051. <parameter name="new_cookie" transfer-ownership="none">
  4052. <type name="Cookie" c:type="SoupCookie*"/>
  4053. </parameter>
  4054. </parameters>
  4055. </virtual-method>
  4056. <virtual-method name="is_persistent"
  4057. invoker="is_persistent"
  4058. version="2.40">
  4059. <doc xml:space="preserve">Gets whether @jar stores cookies persistenly.</doc>
  4060. <return-value transfer-ownership="none">
  4061. <doc xml:space="preserve">%TRUE if @jar storage is persistent or %FALSE otherwise.</doc>
  4062. <type name="gboolean" c:type="gboolean"/>
  4063. </return-value>
  4064. <parameters>
  4065. <instance-parameter name="jar" transfer-ownership="none">
  4066. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4067. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4068. </instance-parameter>
  4069. </parameters>
  4070. </virtual-method>
  4071. <virtual-method name="save" invoker="save" version="2.24" deprecated="1">
  4072. <doc xml:space="preserve">This function exists for backward compatibility, but does not do
  4073. anything any more; cookie jars are saved automatically when they
  4074. are changed.</doc>
  4075. <doc-deprecated xml:space="preserve">This is a no-op.</doc-deprecated>
  4076. <return-value transfer-ownership="none">
  4077. <type name="none" c:type="void"/>
  4078. </return-value>
  4079. <parameters>
  4080. <instance-parameter name="jar" transfer-ownership="none">
  4081. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4082. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4083. </instance-parameter>
  4084. </parameters>
  4085. </virtual-method>
  4086. <method name="add_cookie"
  4087. c:identifier="soup_cookie_jar_add_cookie"
  4088. version="2.26">
  4089. <doc xml:space="preserve">Adds @cookie to @jar, emitting the 'changed' signal if we are modifying
  4090. an existing cookie or adding a valid new cookie ('valid' means
  4091. that the cookie's expire date is not in the past).
  4092. @cookie will be 'stolen' by the jar, so don't free it afterwards.</doc>
  4093. <return-value transfer-ownership="none">
  4094. <type name="none" c:type="void"/>
  4095. </return-value>
  4096. <parameters>
  4097. <instance-parameter name="jar" transfer-ownership="none">
  4098. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4099. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4100. </instance-parameter>
  4101. <parameter name="cookie" transfer-ownership="full">
  4102. <doc xml:space="preserve">a #SoupCookie</doc>
  4103. <type name="Cookie" c:type="SoupCookie*"/>
  4104. </parameter>
  4105. </parameters>
  4106. </method>
  4107. <method name="add_cookie_with_first_party"
  4108. c:identifier="soup_cookie_jar_add_cookie_with_first_party"
  4109. version="2.40">
  4110. <doc xml:space="preserve">Adds @cookie to @jar, emitting the 'changed' signal if we are modifying
  4111. an existing cookie or adding a valid new cookie ('valid' means
  4112. that the cookie's expire date is not in the past).
  4113. @first_party will be used to reject cookies coming from third party
  4114. resources in case such a security policy is set in the @jar.
  4115. @cookie will be 'stolen' by the jar, so don't free it afterwards.</doc>
  4116. <return-value transfer-ownership="none">
  4117. <type name="none" c:type="void"/>
  4118. </return-value>
  4119. <parameters>
  4120. <instance-parameter name="jar" transfer-ownership="none">
  4121. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4122. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4123. </instance-parameter>
  4124. <parameter name="first_party" transfer-ownership="none">
  4125. <doc xml:space="preserve">the URI for the main document</doc>
  4126. <type name="URI" c:type="SoupURI*"/>
  4127. </parameter>
  4128. <parameter name="cookie" transfer-ownership="full">
  4129. <doc xml:space="preserve">a #SoupCookie</doc>
  4130. <type name="Cookie" c:type="SoupCookie*"/>
  4131. </parameter>
  4132. </parameters>
  4133. </method>
  4134. <method name="all_cookies"
  4135. c:identifier="soup_cookie_jar_all_cookies"
  4136. version="2.26">
  4137. <doc xml:space="preserve">Constructs a #GSList with every cookie inside the @jar.
  4138. The cookies in the list are a copy of the original, so
  4139. you have to free them when you are done with them.</doc>
  4140. <return-value transfer-ownership="full">
  4141. <doc xml:space="preserve">a #GSList
  4142. with all the cookies in the @jar.</doc>
  4143. <type name="GLib.SList" c:type="GSList*">
  4144. <type name="Cookie"/>
  4145. </type>
  4146. </return-value>
  4147. <parameters>
  4148. <instance-parameter name="jar" transfer-ownership="none">
  4149. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4150. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4151. </instance-parameter>
  4152. </parameters>
  4153. </method>
  4154. <method name="delete_cookie"
  4155. c:identifier="soup_cookie_jar_delete_cookie"
  4156. version="2.26">
  4157. <doc xml:space="preserve">Deletes @cookie from @jar, emitting the 'changed' signal.</doc>
  4158. <return-value transfer-ownership="none">
  4159. <type name="none" c:type="void"/>
  4160. </return-value>
  4161. <parameters>
  4162. <instance-parameter name="jar" transfer-ownership="none">
  4163. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4164. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4165. </instance-parameter>
  4166. <parameter name="cookie" transfer-ownership="none">
  4167. <doc xml:space="preserve">a #SoupCookie</doc>
  4168. <type name="Cookie" c:type="SoupCookie*"/>
  4169. </parameter>
  4170. </parameters>
  4171. </method>
  4172. <method name="get_accept_policy"
  4173. c:identifier="soup_cookie_jar_get_accept_policy"
  4174. version="2.30">
  4175. <doc xml:space="preserve">Gets @jar's #SoupCookieJarAcceptPolicy</doc>
  4176. <return-value transfer-ownership="none">
  4177. <doc xml:space="preserve">the #SoupCookieJarAcceptPolicy set in the @jar</doc>
  4178. <type name="CookieJarAcceptPolicy"
  4179. c:type="SoupCookieJarAcceptPolicy"/>
  4180. </return-value>
  4181. <parameters>
  4182. <instance-parameter name="jar" transfer-ownership="none">
  4183. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4184. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4185. </instance-parameter>
  4186. </parameters>
  4187. </method>
  4188. <method name="get_cookie_list"
  4189. c:identifier="soup_cookie_jar_get_cookie_list"
  4190. version="2.40">
  4191. <doc xml:space="preserve">Retrieves the list of cookies that would be sent with a request to @uri
  4192. as a #GSList of #SoupCookie objects.
  4193. If @for_http is %TRUE, the return value will include cookies marked
  4194. "HttpOnly" (that is, cookies that the server wishes to keep hidden
  4195. from client-side scripting operations such as the JavaScript
  4196. document.cookies property). Since #SoupCookieJar sets the Cookie
  4197. header itself when making the actual HTTP request, you should
  4198. almost certainly be setting @for_http to %FALSE if you are calling
  4199. this.</doc>
  4200. <return-value transfer-ownership="full">
  4201. <doc xml:space="preserve">a #GSList
  4202. with the cookies in the @jar that would be sent with a request to @uri.</doc>
  4203. <type name="GLib.SList" c:type="GSList*">
  4204. <type name="Cookie"/>
  4205. </type>
  4206. </return-value>
  4207. <parameters>
  4208. <instance-parameter name="jar" transfer-ownership="none">
  4209. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4210. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4211. </instance-parameter>
  4212. <parameter name="uri" transfer-ownership="none">
  4213. <doc xml:space="preserve">a #SoupURI</doc>
  4214. <type name="URI" c:type="SoupURI*"/>
  4215. </parameter>
  4216. <parameter name="for_http" transfer-ownership="none">
  4217. <doc xml:space="preserve">whether or not the return value is being passed directly
  4218. to an HTTP operation</doc>
  4219. <type name="gboolean" c:type="gboolean"/>
  4220. </parameter>
  4221. </parameters>
  4222. </method>
  4223. <method name="get_cookies"
  4224. c:identifier="soup_cookie_jar_get_cookies"
  4225. version="2.24">
  4226. <doc xml:space="preserve">Retrieves (in Cookie-header form) the list of cookies that would
  4227. be sent with a request to @uri.
  4228. If @for_http is %TRUE, the return value will include cookies marked
  4229. "HttpOnly" (that is, cookies that the server wishes to keep hidden
  4230. from client-side scripting operations such as the JavaScript
  4231. document.cookies property). Since #SoupCookieJar sets the Cookie
  4232. header itself when making the actual HTTP request, you should
  4233. almost certainly be setting @for_http to %FALSE if you are calling
  4234. this.</doc>
  4235. <return-value transfer-ownership="full" nullable="1">
  4236. <doc xml:space="preserve">the cookies, in string form, or %NULL if
  4237. there are no cookies for @uri.</doc>
  4238. <type name="utf8" c:type="char*"/>
  4239. </return-value>
  4240. <parameters>
  4241. <instance-parameter name="jar" transfer-ownership="none">
  4242. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4243. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4244. </instance-parameter>
  4245. <parameter name="uri" transfer-ownership="none">
  4246. <doc xml:space="preserve">a #SoupURI</doc>
  4247. <type name="URI" c:type="SoupURI*"/>
  4248. </parameter>
  4249. <parameter name="for_http" transfer-ownership="none">
  4250. <doc xml:space="preserve">whether or not the return value is being passed directly
  4251. to an HTTP operation</doc>
  4252. <type name="gboolean" c:type="gboolean"/>
  4253. </parameter>
  4254. </parameters>
  4255. </method>
  4256. <method name="is_persistent"
  4257. c:identifier="soup_cookie_jar_is_persistent"
  4258. version="2.40">
  4259. <doc xml:space="preserve">Gets whether @jar stores cookies persistenly.</doc>
  4260. <return-value transfer-ownership="none">
  4261. <doc xml:space="preserve">%TRUE if @jar storage is persistent or %FALSE otherwise.</doc>
  4262. <type name="gboolean" c:type="gboolean"/>
  4263. </return-value>
  4264. <parameters>
  4265. <instance-parameter name="jar" transfer-ownership="none">
  4266. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4267. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4268. </instance-parameter>
  4269. </parameters>
  4270. </method>
  4271. <method name="save"
  4272. c:identifier="soup_cookie_jar_save"
  4273. version="2.24"
  4274. deprecated="1">
  4275. <doc xml:space="preserve">This function exists for backward compatibility, but does not do
  4276. anything any more; cookie jars are saved automatically when they
  4277. are changed.</doc>
  4278. <doc-deprecated xml:space="preserve">This is a no-op.</doc-deprecated>
  4279. <return-value transfer-ownership="none">
  4280. <type name="none" c:type="void"/>
  4281. </return-value>
  4282. <parameters>
  4283. <instance-parameter name="jar" transfer-ownership="none">
  4284. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4285. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4286. </instance-parameter>
  4287. </parameters>
  4288. </method>
  4289. <method name="set_accept_policy"
  4290. c:identifier="soup_cookie_jar_set_accept_policy"
  4291. version="2.30">
  4292. <doc xml:space="preserve">Sets @policy as the cookie acceptance policy for @jar.</doc>
  4293. <return-value transfer-ownership="none">
  4294. <type name="none" c:type="void"/>
  4295. </return-value>
  4296. <parameters>
  4297. <instance-parameter name="jar" transfer-ownership="none">
  4298. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4299. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4300. </instance-parameter>
  4301. <parameter name="policy" transfer-ownership="none">
  4302. <doc xml:space="preserve">a #SoupCookieJarAcceptPolicy</doc>
  4303. <type name="CookieJarAcceptPolicy"
  4304. c:type="SoupCookieJarAcceptPolicy"/>
  4305. </parameter>
  4306. </parameters>
  4307. </method>
  4308. <method name="set_cookie"
  4309. c:identifier="soup_cookie_jar_set_cookie"
  4310. version="2.24">
  4311. <doc xml:space="preserve">Adds @cookie to @jar, exactly as though it had appeared in a
  4312. Set-Cookie header returned from a request to @uri.
  4313. Keep in mind that if the #SoupCookieJarAcceptPolicy
  4314. %SOUP_COOKIE_JAR_ACCEPT_NO_THIRD_PARTY is set you'll need to use
  4315. soup_cookie_jar_set_cookie_with_first_party(), otherwise the jar
  4316. will have no way of knowing if the cookie is being set by a third
  4317. party or not.</doc>
  4318. <return-value transfer-ownership="none">
  4319. <type name="none" c:type="void"/>
  4320. </return-value>
  4321. <parameters>
  4322. <instance-parameter name="jar" transfer-ownership="none">
  4323. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4324. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4325. </instance-parameter>
  4326. <parameter name="uri" transfer-ownership="none">
  4327. <doc xml:space="preserve">the URI setting the cookie</doc>
  4328. <type name="URI" c:type="SoupURI*"/>
  4329. </parameter>
  4330. <parameter name="cookie" transfer-ownership="none">
  4331. <doc xml:space="preserve">the stringified cookie to set</doc>
  4332. <type name="utf8" c:type="const char*"/>
  4333. </parameter>
  4334. </parameters>
  4335. </method>
  4336. <method name="set_cookie_with_first_party"
  4337. c:identifier="soup_cookie_jar_set_cookie_with_first_party"
  4338. version="2.30">
  4339. <doc xml:space="preserve">Adds @cookie to @jar, exactly as though it had appeared in a
  4340. Set-Cookie header returned from a request to @uri. @first_party
  4341. will be used to reject cookies coming from third party resources in
  4342. case such a security policy is set in the @jar.</doc>
  4343. <return-value transfer-ownership="none">
  4344. <type name="none" c:type="void"/>
  4345. </return-value>
  4346. <parameters>
  4347. <instance-parameter name="jar" transfer-ownership="none">
  4348. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4349. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4350. </instance-parameter>
  4351. <parameter name="uri" transfer-ownership="none">
  4352. <doc xml:space="preserve">the URI setting the cookie</doc>
  4353. <type name="URI" c:type="SoupURI*"/>
  4354. </parameter>
  4355. <parameter name="first_party" transfer-ownership="none">
  4356. <doc xml:space="preserve">the URI for the main document</doc>
  4357. <type name="URI" c:type="SoupURI*"/>
  4358. </parameter>
  4359. <parameter name="cookie" transfer-ownership="none">
  4360. <doc xml:space="preserve">the stringified cookie to set</doc>
  4361. <type name="utf8" c:type="const char*"/>
  4362. </parameter>
  4363. </parameters>
  4364. </method>
  4365. <property name="accept-policy"
  4366. version="2.30"
  4367. writable="1"
  4368. transfer-ownership="none">
  4369. <doc xml:space="preserve">The policy the jar should follow to accept or reject cookies</doc>
  4370. <type name="CookieJarAcceptPolicy"/>
  4371. </property>
  4372. <property name="read-only"
  4373. writable="1"
  4374. construct-only="1"
  4375. transfer-ownership="none">
  4376. <type name="gboolean" c:type="gboolean"/>
  4377. </property>
  4378. <field name="parent">
  4379. <type name="GObject.Object" c:type="GObject"/>
  4380. </field>
  4381. <glib:signal name="changed" when="first">
  4382. <doc xml:space="preserve">Emitted when @jar changes. If a cookie has been added,
  4383. @new_cookie will contain the newly-added cookie and
  4384. @old_cookie will be %NULL. If a cookie has been deleted,
  4385. @old_cookie will contain the to-be-deleted cookie and
  4386. @new_cookie will be %NULL. If a cookie has been changed,
  4387. @old_cookie will contain its old value, and @new_cookie its
  4388. new value.</doc>
  4389. <return-value transfer-ownership="none">
  4390. <type name="none" c:type="void"/>
  4391. </return-value>
  4392. <parameters>
  4393. <parameter name="old_cookie" transfer-ownership="none">
  4394. <doc xml:space="preserve">the old #SoupCookie value</doc>
  4395. <type name="Cookie"/>
  4396. </parameter>
  4397. <parameter name="new_cookie" transfer-ownership="none">
  4398. <doc xml:space="preserve">the new #SoupCookie value</doc>
  4399. <type name="Cookie"/>
  4400. </parameter>
  4401. </parameters>
  4402. </glib:signal>
  4403. </class>
  4404. <enumeration name="CookieJarAcceptPolicy"
  4405. version="2.30"
  4406. glib:type-name="SoupCookieJarAcceptPolicy"
  4407. glib:get-type="soup_cookie_jar_accept_policy_get_type"
  4408. c:type="SoupCookieJarAcceptPolicy">
  4409. <doc xml:space="preserve">The policy for accepting or rejecting cookies returned in
  4410. responses.</doc>
  4411. <member name="always"
  4412. value="0"
  4413. c:identifier="SOUP_COOKIE_JAR_ACCEPT_ALWAYS"
  4414. glib:nick="always">
  4415. <doc xml:space="preserve">accept all cookies unconditionally.</doc>
  4416. </member>
  4417. <member name="never"
  4418. value="1"
  4419. c:identifier="SOUP_COOKIE_JAR_ACCEPT_NEVER"
  4420. glib:nick="never">
  4421. <doc xml:space="preserve">reject all cookies unconditionally.</doc>
  4422. </member>
  4423. <member name="no_third_party"
  4424. value="2"
  4425. c:identifier="SOUP_COOKIE_JAR_ACCEPT_NO_THIRD_PARTY"
  4426. glib:nick="no-third-party">
  4427. <doc xml:space="preserve">accept all cookies set by
  4428. the main document loaded in the application using libsoup. An
  4429. example of the most common case, web browsers, would be: If
  4430. http://www.example.com is the page loaded, accept all cookies set
  4431. by example.com, but if a resource from http://www.third-party.com
  4432. is loaded from that page reject any cookie that it could try to
  4433. set. For libsoup to be able to tell apart first party cookies from
  4434. the rest, the application must call soup_message_set_first_party()
  4435. on each outgoing #SoupMessage, setting the #SoupURI of the main
  4436. document. If no first party is set in a message when this policy is
  4437. in effect, cookies will be assumed to be third party by default.</doc>
  4438. </member>
  4439. </enumeration>
  4440. <record name="CookieJarClass"
  4441. c:type="SoupCookieJarClass"
  4442. glib:is-gtype-struct-for="CookieJar">
  4443. <field name="parent_class">
  4444. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  4445. </field>
  4446. <field name="save">
  4447. <callback name="save">
  4448. <return-value transfer-ownership="none">
  4449. <type name="none" c:type="void"/>
  4450. </return-value>
  4451. <parameters>
  4452. <parameter name="jar" transfer-ownership="none">
  4453. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4454. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4455. </parameter>
  4456. </parameters>
  4457. </callback>
  4458. </field>
  4459. <field name="is_persistent">
  4460. <callback name="is_persistent">
  4461. <return-value transfer-ownership="none">
  4462. <doc xml:space="preserve">%TRUE if @jar storage is persistent or %FALSE otherwise.</doc>
  4463. <type name="gboolean" c:type="gboolean"/>
  4464. </return-value>
  4465. <parameters>
  4466. <parameter name="jar" transfer-ownership="none">
  4467. <doc xml:space="preserve">a #SoupCookieJar</doc>
  4468. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4469. </parameter>
  4470. </parameters>
  4471. </callback>
  4472. </field>
  4473. <field name="changed">
  4474. <callback name="changed">
  4475. <return-value transfer-ownership="none">
  4476. <type name="none" c:type="void"/>
  4477. </return-value>
  4478. <parameters>
  4479. <parameter name="jar" transfer-ownership="none">
  4480. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4481. </parameter>
  4482. <parameter name="old_cookie" transfer-ownership="none">
  4483. <type name="Cookie" c:type="SoupCookie*"/>
  4484. </parameter>
  4485. <parameter name="new_cookie" transfer-ownership="none">
  4486. <type name="Cookie" c:type="SoupCookie*"/>
  4487. </parameter>
  4488. </parameters>
  4489. </callback>
  4490. </field>
  4491. <field name="_libsoup_reserved1" introspectable="0">
  4492. <callback name="_libsoup_reserved1">
  4493. <return-value transfer-ownership="none">
  4494. <type name="none" c:type="void"/>
  4495. </return-value>
  4496. </callback>
  4497. </field>
  4498. <field name="_libsoup_reserved2" introspectable="0">
  4499. <callback name="_libsoup_reserved2">
  4500. <return-value transfer-ownership="none">
  4501. <type name="none" c:type="void"/>
  4502. </return-value>
  4503. </callback>
  4504. </field>
  4505. </record>
  4506. <class name="CookieJarDB"
  4507. c:symbol-prefix="cookie_jar_db"
  4508. c:type="SoupCookieJarDB"
  4509. parent="CookieJar"
  4510. glib:type-name="SoupCookieJarDB"
  4511. glib:get-type="soup_cookie_jar_db_get_type"
  4512. glib:type-struct="CookieJarDBClass">
  4513. <implements name="SessionFeature"/>
  4514. <constructor name="new"
  4515. c:identifier="soup_cookie_jar_db_new"
  4516. version="2.42">
  4517. <doc xml:space="preserve">Creates a #SoupCookieJarDB.
  4518. @filename will be read in at startup to create an initial set of
  4519. cookies. If @read_only is %FALSE, then the non-session cookies will
  4520. be written to @filename when the 'changed' signal is emitted from
  4521. the jar. (If @read_only is %TRUE, then the cookie jar will only be
  4522. used for this session, and changes made to it will be lost when the
  4523. jar is destroyed.)</doc>
  4524. <return-value transfer-ownership="full">
  4525. <doc xml:space="preserve">the new #SoupCookieJar</doc>
  4526. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4527. </return-value>
  4528. <parameters>
  4529. <parameter name="filename" transfer-ownership="none">
  4530. <doc xml:space="preserve">the filename to read to/write from, or %NULL</doc>
  4531. <type name="utf8" c:type="const char*"/>
  4532. </parameter>
  4533. <parameter name="read_only" transfer-ownership="none">
  4534. <doc xml:space="preserve">%TRUE if @filename is read-only</doc>
  4535. <type name="gboolean" c:type="gboolean"/>
  4536. </parameter>
  4537. </parameters>
  4538. </constructor>
  4539. <property name="filename"
  4540. writable="1"
  4541. construct-only="1"
  4542. transfer-ownership="none">
  4543. <type name="utf8" c:type="gchar*"/>
  4544. </property>
  4545. <field name="parent">
  4546. <type name="CookieJar" c:type="SoupCookieJar"/>
  4547. </field>
  4548. </class>
  4549. <record name="CookieJarDBClass"
  4550. c:type="SoupCookieJarDBClass"
  4551. glib:is-gtype-struct-for="CookieJarDB">
  4552. <field name="parent_class">
  4553. <type name="CookieJarClass" c:type="SoupCookieJarClass"/>
  4554. </field>
  4555. <field name="_libsoup_reserved1" introspectable="0">
  4556. <callback name="_libsoup_reserved1">
  4557. <return-value transfer-ownership="none">
  4558. <type name="none" c:type="void"/>
  4559. </return-value>
  4560. </callback>
  4561. </field>
  4562. <field name="_libsoup_reserved2" introspectable="0">
  4563. <callback name="_libsoup_reserved2">
  4564. <return-value transfer-ownership="none">
  4565. <type name="none" c:type="void"/>
  4566. </return-value>
  4567. </callback>
  4568. </field>
  4569. <field name="_libsoup_reserved3" introspectable="0">
  4570. <callback name="_libsoup_reserved3">
  4571. <return-value transfer-ownership="none">
  4572. <type name="none" c:type="void"/>
  4573. </return-value>
  4574. </callback>
  4575. </field>
  4576. <field name="_libsoup_reserved4" introspectable="0">
  4577. <callback name="_libsoup_reserved4">
  4578. <return-value transfer-ownership="none">
  4579. <type name="none" c:type="void"/>
  4580. </return-value>
  4581. </callback>
  4582. </field>
  4583. </record>
  4584. <class name="CookieJarText"
  4585. c:symbol-prefix="cookie_jar_text"
  4586. c:type="SoupCookieJarText"
  4587. parent="CookieJar"
  4588. glib:type-name="SoupCookieJarText"
  4589. glib:get-type="soup_cookie_jar_text_get_type"
  4590. glib:type-struct="CookieJarTextClass">
  4591. <implements name="SessionFeature"/>
  4592. <constructor name="new"
  4593. c:identifier="soup_cookie_jar_text_new"
  4594. version="2.26">
  4595. <doc xml:space="preserve">Creates a #SoupCookieJarText.
  4596. @filename will be read in at startup to create an initial set of
  4597. cookies. If @read_only is %FALSE, then the non-session cookies will
  4598. be written to @filename when the 'changed' signal is emitted from
  4599. the jar. (If @read_only is %TRUE, then the cookie jar will only be
  4600. used for this session, and changes made to it will be lost when the
  4601. jar is destroyed.)</doc>
  4602. <return-value transfer-ownership="full">
  4603. <doc xml:space="preserve">the new #SoupCookieJar</doc>
  4604. <type name="CookieJar" c:type="SoupCookieJar*"/>
  4605. </return-value>
  4606. <parameters>
  4607. <parameter name="filename" transfer-ownership="none">
  4608. <doc xml:space="preserve">the filename to read to/write from</doc>
  4609. <type name="utf8" c:type="const char*"/>
  4610. </parameter>
  4611. <parameter name="read_only" transfer-ownership="none">
  4612. <doc xml:space="preserve">%TRUE if @filename is read-only</doc>
  4613. <type name="gboolean" c:type="gboolean"/>
  4614. </parameter>
  4615. </parameters>
  4616. </constructor>
  4617. <property name="filename"
  4618. writable="1"
  4619. construct-only="1"
  4620. transfer-ownership="none">
  4621. <type name="utf8" c:type="gchar*"/>
  4622. </property>
  4623. <field name="parent">
  4624. <type name="CookieJar" c:type="SoupCookieJar"/>
  4625. </field>
  4626. </class>
  4627. <record name="CookieJarTextClass"
  4628. c:type="SoupCookieJarTextClass"
  4629. glib:is-gtype-struct-for="CookieJarText">
  4630. <field name="parent_class">
  4631. <type name="CookieJarClass" c:type="SoupCookieJarClass"/>
  4632. </field>
  4633. <field name="_libsoup_reserved1" introspectable="0">
  4634. <callback name="_libsoup_reserved1">
  4635. <return-value transfer-ownership="none">
  4636. <type name="none" c:type="void"/>
  4637. </return-value>
  4638. </callback>
  4639. </field>
  4640. <field name="_libsoup_reserved2" introspectable="0">
  4641. <callback name="_libsoup_reserved2">
  4642. <return-value transfer-ownership="none">
  4643. <type name="none" c:type="void"/>
  4644. </return-value>
  4645. </callback>
  4646. </field>
  4647. <field name="_libsoup_reserved3" introspectable="0">
  4648. <callback name="_libsoup_reserved3">
  4649. <return-value transfer-ownership="none">
  4650. <type name="none" c:type="void"/>
  4651. </return-value>
  4652. </callback>
  4653. </field>
  4654. <field name="_libsoup_reserved4" introspectable="0">
  4655. <callback name="_libsoup_reserved4">
  4656. <return-value transfer-ownership="none">
  4657. <type name="none" c:type="void"/>
  4658. </return-value>
  4659. </callback>
  4660. </field>
  4661. </record>
  4662. <constant name="DATE_H" value="1" c:type="SOUP_DATE_H">
  4663. <type name="gint" c:type="gint"/>
  4664. </constant>
  4665. <record name="Date"
  4666. c:type="SoupDate"
  4667. glib:type-name="SoupDate"
  4668. glib:get-type="soup_date_get_type"
  4669. c:symbol-prefix="date">
  4670. <doc xml:space="preserve">A date and time. The date is assumed to be in the (proleptic)
  4671. Gregorian calendar. The time is in UTC if @utc is %TRUE. Otherwise,
  4672. the time is a local time, and @offset gives the offset from UTC in
  4673. minutes (such that adding @offset to the time would give the
  4674. correct UTC time). If @utc is %FALSE and @offset is 0, then the
  4675. %SoupDate represents a "floating" time with no associated timezone
  4676. information.</doc>
  4677. <field name="year" writable="1">
  4678. <doc xml:space="preserve">the year, 1 to 9999</doc>
  4679. <type name="gint" c:type="int"/>
  4680. </field>
  4681. <field name="month" writable="1">
  4682. <doc xml:space="preserve">the month, 1 to 12</doc>
  4683. <type name="gint" c:type="int"/>
  4684. </field>
  4685. <field name="day" writable="1">
  4686. <doc xml:space="preserve">day of the month, 1 to 31</doc>
  4687. <type name="gint" c:type="int"/>
  4688. </field>
  4689. <field name="hour" writable="1">
  4690. <doc xml:space="preserve">hour of the day, 0 to 23</doc>
  4691. <type name="gint" c:type="int"/>
  4692. </field>
  4693. <field name="minute" writable="1">
  4694. <doc xml:space="preserve">minute, 0 to 59</doc>
  4695. <type name="gint" c:type="int"/>
  4696. </field>
  4697. <field name="second" writable="1">
  4698. <doc xml:space="preserve">second, 0 to 59 (or up to 61 in the case of leap seconds)</doc>
  4699. <type name="gint" c:type="int"/>
  4700. </field>
  4701. <field name="utc" writable="1">
  4702. <doc xml:space="preserve">%TRUE if the date is in UTC</doc>
  4703. <type name="gboolean" c:type="gboolean"/>
  4704. </field>
  4705. <field name="offset" writable="1">
  4706. <doc xml:space="preserve">offset from UTC</doc>
  4707. <type name="gint" c:type="int"/>
  4708. </field>
  4709. <constructor name="new" c:identifier="soup_date_new">
  4710. <doc xml:space="preserve">Creates a #SoupDate representing the indicated time, UTC.</doc>
  4711. <return-value transfer-ownership="full">
  4712. <doc xml:space="preserve">a new #SoupDate</doc>
  4713. <type name="Date" c:type="SoupDate*"/>
  4714. </return-value>
  4715. <parameters>
  4716. <parameter name="year" transfer-ownership="none">
  4717. <doc xml:space="preserve">the year (1-9999)</doc>
  4718. <type name="gint" c:type="int"/>
  4719. </parameter>
  4720. <parameter name="month" transfer-ownership="none">
  4721. <doc xml:space="preserve">the month (1-12)</doc>
  4722. <type name="gint" c:type="int"/>
  4723. </parameter>
  4724. <parameter name="day" transfer-ownership="none">
  4725. <doc xml:space="preserve">the day of the month (1-31, as appropriate for @month)</doc>
  4726. <type name="gint" c:type="int"/>
  4727. </parameter>
  4728. <parameter name="hour" transfer-ownership="none">
  4729. <doc xml:space="preserve">the hour (0-23)</doc>
  4730. <type name="gint" c:type="int"/>
  4731. </parameter>
  4732. <parameter name="minute" transfer-ownership="none">
  4733. <doc xml:space="preserve">the minute (0-59)</doc>
  4734. <type name="gint" c:type="int"/>
  4735. </parameter>
  4736. <parameter name="second" transfer-ownership="none">
  4737. <doc xml:space="preserve">the second (0-59, or up to 61 for leap seconds)</doc>
  4738. <type name="gint" c:type="int"/>
  4739. </parameter>
  4740. </parameters>
  4741. </constructor>
  4742. <constructor name="new_from_now" c:identifier="soup_date_new_from_now">
  4743. <doc xml:space="preserve">Creates a #SoupDate representing a time @offset_seconds after the
  4744. current time (or before it, if @offset_seconds is negative). If
  4745. offset_seconds is 0, returns the current time.
  4746. If @offset_seconds would indicate a time not expressible as a
  4747. &lt;type&gt;time_t&lt;/type&gt;, the return value will be clamped into range.</doc>
  4748. <return-value transfer-ownership="full">
  4749. <doc xml:space="preserve">a new #SoupDate</doc>
  4750. <type name="Date" c:type="SoupDate*"/>
  4751. </return-value>
  4752. <parameters>
  4753. <parameter name="offset_seconds" transfer-ownership="none">
  4754. <doc xml:space="preserve">offset from current time</doc>
  4755. <type name="gint" c:type="int"/>
  4756. </parameter>
  4757. </parameters>
  4758. </constructor>
  4759. <constructor name="new_from_string"
  4760. c:identifier="soup_date_new_from_string">
  4761. <doc xml:space="preserve">Parses @date_string and tries to extract a date from it. This
  4762. recognizes all of the "HTTP-date" formats from RFC 2616, all ISO
  4763. 8601 formats containing both a time and a date, RFC 2822 dates,
  4764. and reasonable approximations thereof. (Eg, it is lenient about
  4765. whitespace, leading "0"s, etc.)</doc>
  4766. <return-value transfer-ownership="full" nullable="1">
  4767. <doc xml:space="preserve">a new #SoupDate, or %NULL if @date_string
  4768. could not be parsed.</doc>
  4769. <type name="Date" c:type="SoupDate*"/>
  4770. </return-value>
  4771. <parameters>
  4772. <parameter name="date_string" transfer-ownership="none">
  4773. <doc xml:space="preserve">the date in some plausible format</doc>
  4774. <type name="utf8" c:type="const char*"/>
  4775. </parameter>
  4776. </parameters>
  4777. </constructor>
  4778. <constructor name="new_from_time_t"
  4779. c:identifier="soup_date_new_from_time_t">
  4780. <doc xml:space="preserve">Creates a #SoupDate corresponding to @when</doc>
  4781. <return-value transfer-ownership="full">
  4782. <doc xml:space="preserve">a new #SoupDate</doc>
  4783. <type name="Date" c:type="SoupDate*"/>
  4784. </return-value>
  4785. <parameters>
  4786. <parameter name="when" transfer-ownership="none">
  4787. <doc xml:space="preserve">a &lt;type&gt;time_t&lt;/type&gt;</doc>
  4788. <type name="glong" c:type="time_t"/>
  4789. </parameter>
  4790. </parameters>
  4791. </constructor>
  4792. <method name="copy" c:identifier="soup_date_copy" version="2.24">
  4793. <doc xml:space="preserve">Copies @date.</doc>
  4794. <return-value transfer-ownership="full">
  4795. <type name="Date" c:type="SoupDate*"/>
  4796. </return-value>
  4797. <parameters>
  4798. <instance-parameter name="date" transfer-ownership="none">
  4799. <doc xml:space="preserve">a #SoupDate</doc>
  4800. <type name="Date" c:type="SoupDate*"/>
  4801. </instance-parameter>
  4802. </parameters>
  4803. </method>
  4804. <method name="free" c:identifier="soup_date_free" version="2.24">
  4805. <doc xml:space="preserve">Frees @date.</doc>
  4806. <return-value transfer-ownership="none">
  4807. <type name="none" c:type="void"/>
  4808. </return-value>
  4809. <parameters>
  4810. <instance-parameter name="date" transfer-ownership="none">
  4811. <doc xml:space="preserve">a #SoupDate</doc>
  4812. <type name="Date" c:type="SoupDate*"/>
  4813. </instance-parameter>
  4814. </parameters>
  4815. </method>
  4816. <method name="get_day" c:identifier="soup_date_get_day" version="2.32">
  4817. <doc xml:space="preserve">Gets @date's day.</doc>
  4818. <return-value transfer-ownership="none">
  4819. <doc xml:space="preserve">@date's day</doc>
  4820. <type name="gint" c:type="int"/>
  4821. </return-value>
  4822. <parameters>
  4823. <instance-parameter name="date" transfer-ownership="none">
  4824. <doc xml:space="preserve">a #SoupDate</doc>
  4825. <type name="Date" c:type="SoupDate*"/>
  4826. </instance-parameter>
  4827. </parameters>
  4828. </method>
  4829. <method name="get_hour" c:identifier="soup_date_get_hour" version="2.32">
  4830. <doc xml:space="preserve">Gets @date's hour.</doc>
  4831. <return-value transfer-ownership="none">
  4832. <doc xml:space="preserve">@date's hour</doc>
  4833. <type name="gint" c:type="int"/>
  4834. </return-value>
  4835. <parameters>
  4836. <instance-parameter name="date" transfer-ownership="none">
  4837. <doc xml:space="preserve">a #SoupDate</doc>
  4838. <type name="Date" c:type="SoupDate*"/>
  4839. </instance-parameter>
  4840. </parameters>
  4841. </method>
  4842. <method name="get_minute"
  4843. c:identifier="soup_date_get_minute"
  4844. version="2.32">
  4845. <doc xml:space="preserve">Gets @date's minute.</doc>
  4846. <return-value transfer-ownership="none">
  4847. <doc xml:space="preserve">@date's minute</doc>
  4848. <type name="gint" c:type="int"/>
  4849. </return-value>
  4850. <parameters>
  4851. <instance-parameter name="date" transfer-ownership="none">
  4852. <doc xml:space="preserve">a #SoupDate</doc>
  4853. <type name="Date" c:type="SoupDate*"/>
  4854. </instance-parameter>
  4855. </parameters>
  4856. </method>
  4857. <method name="get_month"
  4858. c:identifier="soup_date_get_month"
  4859. version="2.32">
  4860. <doc xml:space="preserve">Gets @date's month.</doc>
  4861. <return-value transfer-ownership="none">
  4862. <doc xml:space="preserve">@date's month</doc>
  4863. <type name="gint" c:type="int"/>
  4864. </return-value>
  4865. <parameters>
  4866. <instance-parameter name="date" transfer-ownership="none">
  4867. <doc xml:space="preserve">a #SoupDate</doc>
  4868. <type name="Date" c:type="SoupDate*"/>
  4869. </instance-parameter>
  4870. </parameters>
  4871. </method>
  4872. <method name="get_offset"
  4873. c:identifier="soup_date_get_offset"
  4874. version="2.32">
  4875. <doc xml:space="preserve">Gets @date's offset from UTC.</doc>
  4876. <return-value transfer-ownership="none">
  4877. <doc xml:space="preserve">@date's offset from UTC. If soup_date_get_utc()
  4878. returns %FALSE but soup_date_get_offset() returns 0, that means the
  4879. date is a "floating" time with no associated offset information.</doc>
  4880. <type name="gint" c:type="int"/>
  4881. </return-value>
  4882. <parameters>
  4883. <instance-parameter name="date" transfer-ownership="none">
  4884. <doc xml:space="preserve">a #SoupDate</doc>
  4885. <type name="Date" c:type="SoupDate*"/>
  4886. </instance-parameter>
  4887. </parameters>
  4888. </method>
  4889. <method name="get_second"
  4890. c:identifier="soup_date_get_second"
  4891. version="2.32">
  4892. <doc xml:space="preserve">Gets @date's second.</doc>
  4893. <return-value transfer-ownership="none">
  4894. <doc xml:space="preserve">@date's second</doc>
  4895. <type name="gint" c:type="int"/>
  4896. </return-value>
  4897. <parameters>
  4898. <instance-parameter name="date" transfer-ownership="none">
  4899. <doc xml:space="preserve">a #SoupDate</doc>
  4900. <type name="Date" c:type="SoupDate*"/>
  4901. </instance-parameter>
  4902. </parameters>
  4903. </method>
  4904. <method name="get_utc" c:identifier="soup_date_get_utc" version="2.32">
  4905. <doc xml:space="preserve">Gets @date's UTC flag</doc>
  4906. <return-value transfer-ownership="none">
  4907. <doc xml:space="preserve">%TRUE if @date is UTC.</doc>
  4908. <type name="gint" c:type="int"/>
  4909. </return-value>
  4910. <parameters>
  4911. <instance-parameter name="date" transfer-ownership="none">
  4912. <doc xml:space="preserve">a #SoupDate</doc>
  4913. <type name="Date" c:type="SoupDate*"/>
  4914. </instance-parameter>
  4915. </parameters>
  4916. </method>
  4917. <method name="get_year" c:identifier="soup_date_get_year" version="2.32">
  4918. <doc xml:space="preserve">Gets @date's year.</doc>
  4919. <return-value transfer-ownership="none">
  4920. <doc xml:space="preserve">@date's year</doc>
  4921. <type name="gint" c:type="int"/>
  4922. </return-value>
  4923. <parameters>
  4924. <instance-parameter name="date" transfer-ownership="none">
  4925. <doc xml:space="preserve">a #SoupDate</doc>
  4926. <type name="Date" c:type="SoupDate*"/>
  4927. </instance-parameter>
  4928. </parameters>
  4929. </method>
  4930. <method name="is_past" c:identifier="soup_date_is_past" version="2.24">
  4931. <doc xml:space="preserve">Determines if @date is in the past.</doc>
  4932. <return-value transfer-ownership="none">
  4933. <doc xml:space="preserve">%TRUE if @date is in the past</doc>
  4934. <type name="gboolean" c:type="gboolean"/>
  4935. </return-value>
  4936. <parameters>
  4937. <instance-parameter name="date" transfer-ownership="none">
  4938. <doc xml:space="preserve">a #SoupDate</doc>
  4939. <type name="Date" c:type="SoupDate*"/>
  4940. </instance-parameter>
  4941. </parameters>
  4942. </method>
  4943. <method name="to_string" c:identifier="soup_date_to_string">
  4944. <doc xml:space="preserve">Converts @date to a string in the format described by @format.</doc>
  4945. <return-value transfer-ownership="full">
  4946. <doc xml:space="preserve">@date as a string</doc>
  4947. <type name="utf8" c:type="char*"/>
  4948. </return-value>
  4949. <parameters>
  4950. <instance-parameter name="date" transfer-ownership="none">
  4951. <doc xml:space="preserve">a #SoupDate</doc>
  4952. <type name="Date" c:type="SoupDate*"/>
  4953. </instance-parameter>
  4954. <parameter name="format" transfer-ownership="none">
  4955. <doc xml:space="preserve">the format to generate the date in</doc>
  4956. <type name="DateFormat" c:type="SoupDateFormat"/>
  4957. </parameter>
  4958. </parameters>
  4959. </method>
  4960. <method name="to_time_t" c:identifier="soup_date_to_time_t">
  4961. <doc xml:space="preserve">Converts @date to a &lt;type&gt;time_t&lt;/type&gt;.
  4962. If @date is not representable as a &lt;type&gt;time_t&lt;/type&gt;, it will be
  4963. clamped into range. (In particular, some HTTP cookies have
  4964. expiration dates after "Y2.038k" (2038-01-19T03:14:07Z).)</doc>
  4965. <return-value transfer-ownership="none">
  4966. <doc xml:space="preserve">@date as a &lt;type&gt;time_t&lt;/type&gt;</doc>
  4967. <type name="glong" c:type="time_t"/>
  4968. </return-value>
  4969. <parameters>
  4970. <instance-parameter name="date" transfer-ownership="none">
  4971. <doc xml:space="preserve">a #SoupDate</doc>
  4972. <type name="Date" c:type="SoupDate*"/>
  4973. </instance-parameter>
  4974. </parameters>
  4975. </method>
  4976. <method name="to_timeval"
  4977. c:identifier="soup_date_to_timeval"
  4978. version="2.24">
  4979. <doc xml:space="preserve">Converts @date to a #GTimeVal.</doc>
  4980. <return-value transfer-ownership="none">
  4981. <type name="none" c:type="void"/>
  4982. </return-value>
  4983. <parameters>
  4984. <instance-parameter name="date" transfer-ownership="none">
  4985. <doc xml:space="preserve">a #SoupDate</doc>
  4986. <type name="Date" c:type="SoupDate*"/>
  4987. </instance-parameter>
  4988. <parameter name="time"
  4989. direction="out"
  4990. caller-allocates="1"
  4991. transfer-ownership="none">
  4992. <doc xml:space="preserve">a #GTimeVal structure in which to store the converted time.</doc>
  4993. <type name="GLib.TimeVal" c:type="GTimeVal*"/>
  4994. </parameter>
  4995. </parameters>
  4996. </method>
  4997. </record>
  4998. <enumeration name="DateFormat"
  4999. glib:type-name="SoupDateFormat"
  5000. glib:get-type="soup_date_format_get_type"
  5001. c:type="SoupDateFormat">
  5002. <doc xml:space="preserve">Date formats that soup_date_to_string() can use.
  5003. @SOUP_DATE_HTTP and @SOUP_DATE_COOKIE always coerce the time to
  5004. UTC. @SOUP_DATE_ISO8601_XMLRPC uses the time as given, ignoring the
  5005. offset completely. @SOUP_DATE_RFC2822 and the other ISO 8601
  5006. variants use the local time, appending the offset information if
  5007. available.
  5008. This enum may be extended with more values in future releases.</doc>
  5009. <member name="http"
  5010. value="1"
  5011. c:identifier="SOUP_DATE_HTTP"
  5012. glib:nick="http">
  5013. <doc xml:space="preserve">RFC 1123 format, used by the HTTP "Date" header. Eg
  5014. "Sun, 06 Nov 1994 08:49:37 GMT"</doc>
  5015. </member>
  5016. <member name="cookie"
  5017. value="2"
  5018. c:identifier="SOUP_DATE_COOKIE"
  5019. glib:nick="cookie">
  5020. <doc xml:space="preserve">The format for the "Expires" timestamp in the
  5021. Netscape cookie specification. Eg, "Sun, 06-Nov-1994 08:49:37 GMT".</doc>
  5022. </member>
  5023. <member name="rfc2822"
  5024. value="3"
  5025. c:identifier="SOUP_DATE_RFC2822"
  5026. glib:nick="rfc2822">
  5027. <doc xml:space="preserve">RFC 2822 format, eg "Sun, 6 Nov 1994 09:49:37 -0100"</doc>
  5028. </member>
  5029. <member name="iso8601_compact"
  5030. value="4"
  5031. c:identifier="SOUP_DATE_ISO8601_COMPACT"
  5032. glib:nick="iso8601-compact">
  5033. <doc xml:space="preserve">ISO 8601 date/time with no optional
  5034. punctuation. Eg, "19941106T094937-0100".</doc>
  5035. </member>
  5036. <member name="iso8601_full"
  5037. value="5"
  5038. c:identifier="SOUP_DATE_ISO8601_FULL"
  5039. glib:nick="iso8601-full">
  5040. <doc xml:space="preserve">ISO 8601 date/time with all optional
  5041. punctuation. Eg, "1994-11-06T09:49:37-01:00".</doc>
  5042. </member>
  5043. <member name="iso8601"
  5044. value="5"
  5045. c:identifier="SOUP_DATE_ISO8601"
  5046. glib:nick="iso8601">
  5047. <doc xml:space="preserve">An alias for @SOUP_DATE_ISO8601_FULL.</doc>
  5048. </member>
  5049. <member name="iso8601_xmlrpc"
  5050. value="6"
  5051. c:identifier="SOUP_DATE_ISO8601_XMLRPC"
  5052. glib:nick="iso8601-xmlrpc">
  5053. <doc xml:space="preserve">ISO 8601 date/time as used by XML-RPC.
  5054. Eg, "19941106T09:49:37".</doc>
  5055. </member>
  5056. </enumeration>
  5057. <enumeration name="Encoding"
  5058. glib:type-name="SoupEncoding"
  5059. glib:get-type="soup_encoding_get_type"
  5060. c:type="SoupEncoding">
  5061. <doc xml:space="preserve">How a message body is encoded for transport</doc>
  5062. <member name="unrecognized"
  5063. value="0"
  5064. c:identifier="SOUP_ENCODING_UNRECOGNIZED"
  5065. glib:nick="unrecognized">
  5066. <doc xml:space="preserve">unknown / error</doc>
  5067. </member>
  5068. <member name="none"
  5069. value="1"
  5070. c:identifier="SOUP_ENCODING_NONE"
  5071. glib:nick="none">
  5072. <doc xml:space="preserve">no body is present (which is not the same as a
  5073. 0-length body, and only occurs in certain places)</doc>
  5074. </member>
  5075. <member name="content_length"
  5076. value="2"
  5077. c:identifier="SOUP_ENCODING_CONTENT_LENGTH"
  5078. glib:nick="content-length">
  5079. <doc xml:space="preserve">Content-Length encoding</doc>
  5080. </member>
  5081. <member name="eof"
  5082. value="3"
  5083. c:identifier="SOUP_ENCODING_EOF"
  5084. glib:nick="eof">
  5085. <doc xml:space="preserve">Response body ends when the connection is closed</doc>
  5086. </member>
  5087. <member name="chunked"
  5088. value="4"
  5089. c:identifier="SOUP_ENCODING_CHUNKED"
  5090. glib:nick="chunked">
  5091. <doc xml:space="preserve">chunked encoding (currently only supported
  5092. for response)</doc>
  5093. </member>
  5094. <member name="byteranges"
  5095. value="5"
  5096. c:identifier="SOUP_ENCODING_BYTERANGES"
  5097. glib:nick="byteranges">
  5098. <doc xml:space="preserve">multipart/byteranges (Reserved for future
  5099. use: NOT CURRENTLY IMPLEMENTED)</doc>
  5100. </member>
  5101. </enumeration>
  5102. <bitfield name="Expectation"
  5103. glib:type-name="SoupExpectation"
  5104. glib:get-type="soup_expectation_get_type"
  5105. c:type="SoupExpectation">
  5106. <doc xml:space="preserve">Represents the parsed value of the "Expect" header.</doc>
  5107. <member name="unrecognized"
  5108. value="1"
  5109. c:identifier="SOUP_EXPECTATION_UNRECOGNIZED"
  5110. glib:nick="unrecognized">
  5111. <doc xml:space="preserve">any unrecognized expectation</doc>
  5112. </member>
  5113. <member name="continue"
  5114. value="2"
  5115. c:identifier="SOUP_EXPECTATION_CONTINUE"
  5116. glib:nick="continue">
  5117. <doc xml:space="preserve">"100-continue"</doc>
  5118. </member>
  5119. </bitfield>
  5120. <constant name="FORM_H" value="1" c:type="SOUP_FORM_H">
  5121. <type name="gint" c:type="gint"/>
  5122. </constant>
  5123. <constant name="FORM_MIME_TYPE_MULTIPART"
  5124. value="multipart/form-data"
  5125. c:type="SOUP_FORM_MIME_TYPE_MULTIPART"
  5126. version="2.26">
  5127. <doc xml:space="preserve">A macro containing the value
  5128. &lt;literal&gt;"multipart/form-data"&lt;/literal&gt;; the MIME type used for
  5129. posting form data that contains files to be uploaded.</doc>
  5130. <type name="utf8" c:type="gchar*"/>
  5131. </constant>
  5132. <constant name="FORM_MIME_TYPE_URLENCODED"
  5133. value="application/x-www-form-urlencoded"
  5134. c:type="SOUP_FORM_MIME_TYPE_URLENCODED"
  5135. version="2.26">
  5136. <doc xml:space="preserve">A macro containing the value
  5137. &lt;literal&gt;"application/x-www-form-urlencoded"&lt;/literal&gt;; the default
  5138. MIME type for POSTing HTML form data.</doc>
  5139. <type name="utf8" c:type="gchar*"/>
  5140. </constant>
  5141. <constant name="HEADERS_H" value="1" c:type="SOUP_HEADERS_H">
  5142. <type name="gint" c:type="gint"/>
  5143. </constant>
  5144. <enumeration name="HTTPVersion"
  5145. glib:type-name="SoupHTTPVersion"
  5146. glib:get-type="soup_http_version_get_type"
  5147. c:type="SoupHTTPVersion">
  5148. <doc xml:space="preserve">Indicates the HTTP protocol version being used.</doc>
  5149. <member name="http_1_0"
  5150. value="0"
  5151. c:identifier="SOUP_HTTP_1_0"
  5152. glib:nick="http-1-0">
  5153. <doc xml:space="preserve">HTTP 1.0 (RFC 1945)</doc>
  5154. </member>
  5155. <member name="http_1_1"
  5156. value="1"
  5157. c:identifier="SOUP_HTTP_1_1"
  5158. glib:nick="http-1-1">
  5159. <doc xml:space="preserve">HTTP 1.1 (RFC 2616)</doc>
  5160. </member>
  5161. </enumeration>
  5162. <enumeration name="KnownStatusCode"
  5163. glib:type-name="SoupKnownStatusCode"
  5164. glib:get-type="soup_known_status_code_get_type"
  5165. c:type="SoupKnownStatusCode">
  5166. <member name="none"
  5167. value="0"
  5168. c:identifier="SOUP_KNOWN_STATUS_CODE_NONE"
  5169. glib:nick="none">
  5170. </member>
  5171. <member name="cancelled"
  5172. value="1"
  5173. c:identifier="SOUP_KNOWN_STATUS_CODE_CANCELLED"
  5174. glib:nick="cancelled">
  5175. </member>
  5176. <member name="cant_resolve"
  5177. value="2"
  5178. c:identifier="SOUP_KNOWN_STATUS_CODE_CANT_RESOLVE"
  5179. glib:nick="cant-resolve">
  5180. </member>
  5181. <member name="cant_resolve_proxy"
  5182. value="3"
  5183. c:identifier="SOUP_KNOWN_STATUS_CODE_CANT_RESOLVE_PROXY"
  5184. glib:nick="cant-resolve-proxy">
  5185. </member>
  5186. <member name="cant_connect"
  5187. value="4"
  5188. c:identifier="SOUP_KNOWN_STATUS_CODE_CANT_CONNECT"
  5189. glib:nick="cant-connect">
  5190. </member>
  5191. <member name="cant_connect_proxy"
  5192. value="5"
  5193. c:identifier="SOUP_KNOWN_STATUS_CODE_CANT_CONNECT_PROXY"
  5194. glib:nick="cant-connect-proxy">
  5195. </member>
  5196. <member name="ssl_failed"
  5197. value="6"
  5198. c:identifier="SOUP_KNOWN_STATUS_CODE_SSL_FAILED"
  5199. glib:nick="ssl-failed">
  5200. </member>
  5201. <member name="io_error"
  5202. value="7"
  5203. c:identifier="SOUP_KNOWN_STATUS_CODE_IO_ERROR"
  5204. glib:nick="io-error">
  5205. </member>
  5206. <member name="malformed"
  5207. value="8"
  5208. c:identifier="SOUP_KNOWN_STATUS_CODE_MALFORMED"
  5209. glib:nick="malformed">
  5210. </member>
  5211. <member name="try_again"
  5212. value="9"
  5213. c:identifier="SOUP_KNOWN_STATUS_CODE_TRY_AGAIN"
  5214. glib:nick="try-again">
  5215. </member>
  5216. <member name="too_many_redirects"
  5217. value="10"
  5218. c:identifier="SOUP_KNOWN_STATUS_CODE_TOO_MANY_REDIRECTS"
  5219. glib:nick="too-many-redirects">
  5220. </member>
  5221. <member name="tls_failed"
  5222. value="11"
  5223. c:identifier="SOUP_KNOWN_STATUS_CODE_TLS_FAILED"
  5224. glib:nick="tls-failed">
  5225. </member>
  5226. <member name="continue"
  5227. value="100"
  5228. c:identifier="SOUP_KNOWN_STATUS_CODE_CONTINUE"
  5229. glib:nick="continue">
  5230. </member>
  5231. <member name="switching_protocols"
  5232. value="101"
  5233. c:identifier="SOUP_KNOWN_STATUS_CODE_SWITCHING_PROTOCOLS"
  5234. glib:nick="switching-protocols">
  5235. </member>
  5236. <member name="processing"
  5237. value="102"
  5238. c:identifier="SOUP_KNOWN_STATUS_CODE_PROCESSING"
  5239. glib:nick="processing">
  5240. </member>
  5241. <member name="ok"
  5242. value="200"
  5243. c:identifier="SOUP_KNOWN_STATUS_CODE_OK"
  5244. glib:nick="ok">
  5245. </member>
  5246. <member name="created"
  5247. value="201"
  5248. c:identifier="SOUP_KNOWN_STATUS_CODE_CREATED"
  5249. glib:nick="created">
  5250. </member>
  5251. <member name="accepted"
  5252. value="202"
  5253. c:identifier="SOUP_KNOWN_STATUS_CODE_ACCEPTED"
  5254. glib:nick="accepted">
  5255. </member>
  5256. <member name="non_authoritative"
  5257. value="203"
  5258. c:identifier="SOUP_KNOWN_STATUS_CODE_NON_AUTHORITATIVE"
  5259. glib:nick="non-authoritative">
  5260. </member>
  5261. <member name="no_content"
  5262. value="204"
  5263. c:identifier="SOUP_KNOWN_STATUS_CODE_NO_CONTENT"
  5264. glib:nick="no-content">
  5265. </member>
  5266. <member name="reset_content"
  5267. value="205"
  5268. c:identifier="SOUP_KNOWN_STATUS_CODE_RESET_CONTENT"
  5269. glib:nick="reset-content">
  5270. </member>
  5271. <member name="partial_content"
  5272. value="206"
  5273. c:identifier="SOUP_KNOWN_STATUS_CODE_PARTIAL_CONTENT"
  5274. glib:nick="partial-content">
  5275. </member>
  5276. <member name="multi_status"
  5277. value="207"
  5278. c:identifier="SOUP_KNOWN_STATUS_CODE_MULTI_STATUS"
  5279. glib:nick="multi-status">
  5280. </member>
  5281. <member name="multiple_choices"
  5282. value="300"
  5283. c:identifier="SOUP_KNOWN_STATUS_CODE_MULTIPLE_CHOICES"
  5284. glib:nick="multiple-choices">
  5285. </member>
  5286. <member name="moved_permanently"
  5287. value="301"
  5288. c:identifier="SOUP_KNOWN_STATUS_CODE_MOVED_PERMANENTLY"
  5289. glib:nick="moved-permanently">
  5290. </member>
  5291. <member name="found"
  5292. value="302"
  5293. c:identifier="SOUP_KNOWN_STATUS_CODE_FOUND"
  5294. glib:nick="found">
  5295. </member>
  5296. <member name="moved_temporarily"
  5297. value="302"
  5298. c:identifier="SOUP_KNOWN_STATUS_CODE_MOVED_TEMPORARILY"
  5299. glib:nick="moved-temporarily">
  5300. </member>
  5301. <member name="see_other"
  5302. value="303"
  5303. c:identifier="SOUP_KNOWN_STATUS_CODE_SEE_OTHER"
  5304. glib:nick="see-other">
  5305. </member>
  5306. <member name="not_modified"
  5307. value="304"
  5308. c:identifier="SOUP_KNOWN_STATUS_CODE_NOT_MODIFIED"
  5309. glib:nick="not-modified">
  5310. </member>
  5311. <member name="use_proxy"
  5312. value="305"
  5313. c:identifier="SOUP_KNOWN_STATUS_CODE_USE_PROXY"
  5314. glib:nick="use-proxy">
  5315. </member>
  5316. <member name="not_appearing_in_this_protocol"
  5317. value="306"
  5318. c:identifier="SOUP_KNOWN_STATUS_CODE_NOT_APPEARING_IN_THIS_PROTOCOL"
  5319. glib:nick="not-appearing-in-this-protocol">
  5320. </member>
  5321. <member name="temporary_redirect"
  5322. value="307"
  5323. c:identifier="SOUP_KNOWN_STATUS_CODE_TEMPORARY_REDIRECT"
  5324. glib:nick="temporary-redirect">
  5325. </member>
  5326. <member name="bad_request"
  5327. value="400"
  5328. c:identifier="SOUP_KNOWN_STATUS_CODE_BAD_REQUEST"
  5329. glib:nick="bad-request">
  5330. </member>
  5331. <member name="unauthorized"
  5332. value="401"
  5333. c:identifier="SOUP_KNOWN_STATUS_CODE_UNAUTHORIZED"
  5334. glib:nick="unauthorized">
  5335. </member>
  5336. <member name="payment_required"
  5337. value="402"
  5338. c:identifier="SOUP_KNOWN_STATUS_CODE_PAYMENT_REQUIRED"
  5339. glib:nick="payment-required">
  5340. </member>
  5341. <member name="forbidden"
  5342. value="403"
  5343. c:identifier="SOUP_KNOWN_STATUS_CODE_FORBIDDEN"
  5344. glib:nick="forbidden">
  5345. </member>
  5346. <member name="not_found"
  5347. value="404"
  5348. c:identifier="SOUP_KNOWN_STATUS_CODE_NOT_FOUND"
  5349. glib:nick="not-found">
  5350. </member>
  5351. <member name="method_not_allowed"
  5352. value="405"
  5353. c:identifier="SOUP_KNOWN_STATUS_CODE_METHOD_NOT_ALLOWED"
  5354. glib:nick="method-not-allowed">
  5355. </member>
  5356. <member name="not_acceptable"
  5357. value="406"
  5358. c:identifier="SOUP_KNOWN_STATUS_CODE_NOT_ACCEPTABLE"
  5359. glib:nick="not-acceptable">
  5360. </member>
  5361. <member name="proxy_authentication_required"
  5362. value="407"
  5363. c:identifier="SOUP_KNOWN_STATUS_CODE_PROXY_AUTHENTICATION_REQUIRED"
  5364. glib:nick="proxy-authentication-required">
  5365. </member>
  5366. <member name="proxy_unauthorized"
  5367. value="407"
  5368. c:identifier="SOUP_KNOWN_STATUS_CODE_PROXY_UNAUTHORIZED"
  5369. glib:nick="proxy-unauthorized">
  5370. </member>
  5371. <member name="request_timeout"
  5372. value="408"
  5373. c:identifier="SOUP_KNOWN_STATUS_CODE_REQUEST_TIMEOUT"
  5374. glib:nick="request-timeout">
  5375. </member>
  5376. <member name="conflict"
  5377. value="409"
  5378. c:identifier="SOUP_KNOWN_STATUS_CODE_CONFLICT"
  5379. glib:nick="conflict">
  5380. </member>
  5381. <member name="gone"
  5382. value="410"
  5383. c:identifier="SOUP_KNOWN_STATUS_CODE_GONE"
  5384. glib:nick="gone">
  5385. </member>
  5386. <member name="length_required"
  5387. value="411"
  5388. c:identifier="SOUP_KNOWN_STATUS_CODE_LENGTH_REQUIRED"
  5389. glib:nick="length-required">
  5390. </member>
  5391. <member name="precondition_failed"
  5392. value="412"
  5393. c:identifier="SOUP_KNOWN_STATUS_CODE_PRECONDITION_FAILED"
  5394. glib:nick="precondition-failed">
  5395. </member>
  5396. <member name="request_entity_too_large"
  5397. value="413"
  5398. c:identifier="SOUP_KNOWN_STATUS_CODE_REQUEST_ENTITY_TOO_LARGE"
  5399. glib:nick="request-entity-too-large">
  5400. </member>
  5401. <member name="request_uri_too_long"
  5402. value="414"
  5403. c:identifier="SOUP_KNOWN_STATUS_CODE_REQUEST_URI_TOO_LONG"
  5404. glib:nick="request-uri-too-long">
  5405. </member>
  5406. <member name="unsupported_media_type"
  5407. value="415"
  5408. c:identifier="SOUP_KNOWN_STATUS_CODE_UNSUPPORTED_MEDIA_TYPE"
  5409. glib:nick="unsupported-media-type">
  5410. </member>
  5411. <member name="requested_range_not_satisfiable"
  5412. value="416"
  5413. c:identifier="SOUP_KNOWN_STATUS_CODE_REQUESTED_RANGE_NOT_SATISFIABLE"
  5414. glib:nick="requested-range-not-satisfiable">
  5415. </member>
  5416. <member name="invalid_range"
  5417. value="416"
  5418. c:identifier="SOUP_KNOWN_STATUS_CODE_INVALID_RANGE"
  5419. glib:nick="invalid-range">
  5420. </member>
  5421. <member name="expectation_failed"
  5422. value="417"
  5423. c:identifier="SOUP_KNOWN_STATUS_CODE_EXPECTATION_FAILED"
  5424. glib:nick="expectation-failed">
  5425. </member>
  5426. <member name="unprocessable_entity"
  5427. value="422"
  5428. c:identifier="SOUP_KNOWN_STATUS_CODE_UNPROCESSABLE_ENTITY"
  5429. glib:nick="unprocessable-entity">
  5430. </member>
  5431. <member name="locked"
  5432. value="423"
  5433. c:identifier="SOUP_KNOWN_STATUS_CODE_LOCKED"
  5434. glib:nick="locked">
  5435. </member>
  5436. <member name="failed_dependency"
  5437. value="424"
  5438. c:identifier="SOUP_KNOWN_STATUS_CODE_FAILED_DEPENDENCY"
  5439. glib:nick="failed-dependency">
  5440. </member>
  5441. <member name="internal_server_error"
  5442. value="500"
  5443. c:identifier="SOUP_KNOWN_STATUS_CODE_INTERNAL_SERVER_ERROR"
  5444. glib:nick="internal-server-error">
  5445. </member>
  5446. <member name="not_implemented"
  5447. value="501"
  5448. c:identifier="SOUP_KNOWN_STATUS_CODE_NOT_IMPLEMENTED"
  5449. glib:nick="not-implemented">
  5450. </member>
  5451. <member name="bad_gateway"
  5452. value="502"
  5453. c:identifier="SOUP_KNOWN_STATUS_CODE_BAD_GATEWAY"
  5454. glib:nick="bad-gateway">
  5455. </member>
  5456. <member name="service_unavailable"
  5457. value="503"
  5458. c:identifier="SOUP_KNOWN_STATUS_CODE_SERVICE_UNAVAILABLE"
  5459. glib:nick="service-unavailable">
  5460. </member>
  5461. <member name="gateway_timeout"
  5462. value="504"
  5463. c:identifier="SOUP_KNOWN_STATUS_CODE_GATEWAY_TIMEOUT"
  5464. glib:nick="gateway-timeout">
  5465. </member>
  5466. <member name="http_version_not_supported"
  5467. value="505"
  5468. c:identifier="SOUP_KNOWN_STATUS_CODE_HTTP_VERSION_NOT_SUPPORTED"
  5469. glib:nick="http-version-not-supported">
  5470. </member>
  5471. <member name="insufficient_storage"
  5472. value="507"
  5473. c:identifier="SOUP_KNOWN_STATUS_CODE_INSUFFICIENT_STORAGE"
  5474. glib:nick="insufficient-storage">
  5475. </member>
  5476. <member name="not_extended"
  5477. value="510"
  5478. c:identifier="SOUP_KNOWN_STATUS_CODE_NOT_EXTENDED"
  5479. glib:nick="not-extended">
  5480. </member>
  5481. </enumeration>
  5482. <constant name="LOGGER_H" value="1" c:type="SOUP_LOGGER_H">
  5483. <type name="gint" c:type="gint"/>
  5484. </constant>
  5485. <class name="Logger"
  5486. c:symbol-prefix="logger"
  5487. c:type="SoupLogger"
  5488. parent="GObject.Object"
  5489. glib:type-name="SoupLogger"
  5490. glib:get-type="soup_logger_get_type"
  5491. glib:type-struct="LoggerClass">
  5492. <implements name="SessionFeature"/>
  5493. <constructor name="new" c:identifier="soup_logger_new">
  5494. <doc xml:space="preserve">Creates a new #SoupLogger with the given debug level. If @level is
  5495. %SOUP_LOGGER_LOG_BODY, @max_body_size gives the maximum number of
  5496. bytes of the body that will be logged. (-1 means "no limit".)
  5497. If you need finer control over what message parts are and aren't
  5498. logged, use soup_logger_set_request_filter() and
  5499. soup_logger_set_response_filter().</doc>
  5500. <return-value transfer-ownership="full">
  5501. <doc xml:space="preserve">a new #SoupLogger</doc>
  5502. <type name="Logger" c:type="SoupLogger*"/>
  5503. </return-value>
  5504. <parameters>
  5505. <parameter name="level" transfer-ownership="none">
  5506. <doc xml:space="preserve">the debug level</doc>
  5507. <type name="LoggerLogLevel" c:type="SoupLoggerLogLevel"/>
  5508. </parameter>
  5509. <parameter name="max_body_size" transfer-ownership="none">
  5510. <doc xml:space="preserve">the maximum body size to output, or -1</doc>
  5511. <type name="gint" c:type="int"/>
  5512. </parameter>
  5513. </parameters>
  5514. </constructor>
  5515. <method name="attach" c:identifier="soup_logger_attach" deprecated="1">
  5516. <doc xml:space="preserve">Sets @logger to watch @session and print debug information for
  5517. its messages.
  5518. (The session will take a reference on @logger, which will be
  5519. removed when you call soup_logger_detach(), or when the session is
  5520. destroyed.)</doc>
  5521. <doc-deprecated xml:space="preserve">Use soup_session_add_feature() instead.</doc-deprecated>
  5522. <return-value transfer-ownership="none">
  5523. <type name="none" c:type="void"/>
  5524. </return-value>
  5525. <parameters>
  5526. <instance-parameter name="logger" transfer-ownership="none">
  5527. <doc xml:space="preserve">a #SoupLogger</doc>
  5528. <type name="Logger" c:type="SoupLogger*"/>
  5529. </instance-parameter>
  5530. <parameter name="session" transfer-ownership="none">
  5531. <doc xml:space="preserve">a #SoupSession</doc>
  5532. <type name="Session" c:type="SoupSession*"/>
  5533. </parameter>
  5534. </parameters>
  5535. </method>
  5536. <method name="detach" c:identifier="soup_logger_detach" deprecated="1">
  5537. <doc xml:space="preserve">Stops @logger from watching @session.</doc>
  5538. <doc-deprecated xml:space="preserve">Use soup_session_remove_feature() instead.</doc-deprecated>
  5539. <return-value transfer-ownership="none">
  5540. <type name="none" c:type="void"/>
  5541. </return-value>
  5542. <parameters>
  5543. <instance-parameter name="logger" transfer-ownership="none">
  5544. <doc xml:space="preserve">a #SoupLogger</doc>
  5545. <type name="Logger" c:type="SoupLogger*"/>
  5546. </instance-parameter>
  5547. <parameter name="session" transfer-ownership="none">
  5548. <doc xml:space="preserve">a #SoupSession</doc>
  5549. <type name="Session" c:type="SoupSession*"/>
  5550. </parameter>
  5551. </parameters>
  5552. </method>
  5553. <method name="set_printer" c:identifier="soup_logger_set_printer">
  5554. <doc xml:space="preserve">Sets up an alternate log printing routine, if you don't want
  5555. the log to go to &lt;literal&gt;stdout&lt;/literal&gt;.</doc>
  5556. <return-value transfer-ownership="none">
  5557. <type name="none" c:type="void"/>
  5558. </return-value>
  5559. <parameters>
  5560. <instance-parameter name="logger" transfer-ownership="none">
  5561. <doc xml:space="preserve">a #SoupLogger</doc>
  5562. <type name="Logger" c:type="SoupLogger*"/>
  5563. </instance-parameter>
  5564. <parameter name="printer"
  5565. transfer-ownership="none"
  5566. scope="notified"
  5567. closure="1"
  5568. destroy="2">
  5569. <doc xml:space="preserve">the callback for printing logging output</doc>
  5570. <type name="LoggerPrinter" c:type="SoupLoggerPrinter"/>
  5571. </parameter>
  5572. <parameter name="printer_data"
  5573. transfer-ownership="none"
  5574. nullable="1"
  5575. allow-none="1">
  5576. <doc xml:space="preserve">data to pass to the callback</doc>
  5577. <type name="gpointer" c:type="gpointer"/>
  5578. </parameter>
  5579. <parameter name="destroy" transfer-ownership="none" scope="async">
  5580. <doc xml:space="preserve">a #GDestroyNotify to free @printer_data</doc>
  5581. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  5582. </parameter>
  5583. </parameters>
  5584. </method>
  5585. <method name="set_request_filter"
  5586. c:identifier="soup_logger_set_request_filter">
  5587. <doc xml:space="preserve">Sets up a filter to determine the log level for a given request.
  5588. For each HTTP request @logger will invoke @request_filter to
  5589. determine how much (if any) of that request to log. (If you do not
  5590. set a request filter, @logger will just always log requests at the
  5591. level passed to soup_logger_new().)</doc>
  5592. <return-value transfer-ownership="none">
  5593. <type name="none" c:type="void"/>
  5594. </return-value>
  5595. <parameters>
  5596. <instance-parameter name="logger" transfer-ownership="none">
  5597. <doc xml:space="preserve">a #SoupLogger</doc>
  5598. <type name="Logger" c:type="SoupLogger*"/>
  5599. </instance-parameter>
  5600. <parameter name="request_filter"
  5601. transfer-ownership="none"
  5602. scope="notified"
  5603. closure="1"
  5604. destroy="2">
  5605. <doc xml:space="preserve">the callback for request debugging</doc>
  5606. <type name="LoggerFilter" c:type="SoupLoggerFilter"/>
  5607. </parameter>
  5608. <parameter name="filter_data"
  5609. transfer-ownership="none"
  5610. nullable="1"
  5611. allow-none="1">
  5612. <doc xml:space="preserve">data to pass to the callback</doc>
  5613. <type name="gpointer" c:type="gpointer"/>
  5614. </parameter>
  5615. <parameter name="destroy" transfer-ownership="none" scope="async">
  5616. <doc xml:space="preserve">a #GDestroyNotify to free @filter_data</doc>
  5617. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  5618. </parameter>
  5619. </parameters>
  5620. </method>
  5621. <method name="set_response_filter"
  5622. c:identifier="soup_logger_set_response_filter">
  5623. <doc xml:space="preserve">Sets up a filter to determine the log level for a given response.
  5624. For each HTTP response @logger will invoke @response_filter to
  5625. determine how much (if any) of that response to log. (If you do not
  5626. set a response filter, @logger will just always log responses at
  5627. the level passed to soup_logger_new().)</doc>
  5628. <return-value transfer-ownership="none">
  5629. <type name="none" c:type="void"/>
  5630. </return-value>
  5631. <parameters>
  5632. <instance-parameter name="logger" transfer-ownership="none">
  5633. <doc xml:space="preserve">a #SoupLogger</doc>
  5634. <type name="Logger" c:type="SoupLogger*"/>
  5635. </instance-parameter>
  5636. <parameter name="response_filter"
  5637. transfer-ownership="none"
  5638. scope="notified"
  5639. closure="1"
  5640. destroy="2">
  5641. <doc xml:space="preserve">the callback for response debugging</doc>
  5642. <type name="LoggerFilter" c:type="SoupLoggerFilter"/>
  5643. </parameter>
  5644. <parameter name="filter_data"
  5645. transfer-ownership="none"
  5646. nullable="1"
  5647. allow-none="1">
  5648. <doc xml:space="preserve">data to pass to the callback</doc>
  5649. <type name="gpointer" c:type="gpointer"/>
  5650. </parameter>
  5651. <parameter name="destroy" transfer-ownership="none" scope="async">
  5652. <doc xml:space="preserve">a #GDestroyNotify to free @filter_data</doc>
  5653. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  5654. </parameter>
  5655. </parameters>
  5656. </method>
  5657. <field name="parent">
  5658. <type name="GObject.Object" c:type="GObject"/>
  5659. </field>
  5660. </class>
  5661. <record name="LoggerClass"
  5662. c:type="SoupLoggerClass"
  5663. glib:is-gtype-struct-for="Logger">
  5664. <field name="parent_class">
  5665. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  5666. </field>
  5667. <field name="_libsoup_reserved1" introspectable="0">
  5668. <callback name="_libsoup_reserved1">
  5669. <return-value transfer-ownership="none">
  5670. <type name="none" c:type="void"/>
  5671. </return-value>
  5672. </callback>
  5673. </field>
  5674. <field name="_libsoup_reserved2" introspectable="0">
  5675. <callback name="_libsoup_reserved2">
  5676. <return-value transfer-ownership="none">
  5677. <type name="none" c:type="void"/>
  5678. </return-value>
  5679. </callback>
  5680. </field>
  5681. <field name="_libsoup_reserved3" introspectable="0">
  5682. <callback name="_libsoup_reserved3">
  5683. <return-value transfer-ownership="none">
  5684. <type name="none" c:type="void"/>
  5685. </return-value>
  5686. </callback>
  5687. </field>
  5688. <field name="_libsoup_reserved4" introspectable="0">
  5689. <callback name="_libsoup_reserved4">
  5690. <return-value transfer-ownership="none">
  5691. <type name="none" c:type="void"/>
  5692. </return-value>
  5693. </callback>
  5694. </field>
  5695. </record>
  5696. <callback name="LoggerFilter" c:type="SoupLoggerFilter">
  5697. <doc xml:space="preserve">The prototype for a logging filter. The filter callback will be
  5698. invoked for each request or response, and should analyze it and
  5699. return a #SoupLoggerLogLevel value indicating how much of the
  5700. message to log. Eg, it might choose between %SOUP_LOGGER_LOG_BODY
  5701. and %SOUP_LOGGER_LOG_HEADERS depending on the Content-Type.</doc>
  5702. <return-value transfer-ownership="none">
  5703. <doc xml:space="preserve">a #SoupLoggerLogLevel value indicating how much of
  5704. the message to log</doc>
  5705. <type name="LoggerLogLevel" c:type="SoupLoggerLogLevel"/>
  5706. </return-value>
  5707. <parameters>
  5708. <parameter name="logger" transfer-ownership="none">
  5709. <doc xml:space="preserve">the #SoupLogger</doc>
  5710. <type name="Logger" c:type="SoupLogger*"/>
  5711. </parameter>
  5712. <parameter name="msg" transfer-ownership="none">
  5713. <doc xml:space="preserve">the message being logged</doc>
  5714. <type name="Message" c:type="SoupMessage*"/>
  5715. </parameter>
  5716. <parameter name="user_data"
  5717. transfer-ownership="none"
  5718. nullable="1"
  5719. allow-none="1"
  5720. closure="2">
  5721. <doc xml:space="preserve">the data passed to soup_logger_set_request_filter()
  5722. or soup_logger_set_response_filter()</doc>
  5723. <type name="gpointer" c:type="gpointer"/>
  5724. </parameter>
  5725. </parameters>
  5726. </callback>
  5727. <enumeration name="LoggerLogLevel"
  5728. glib:type-name="SoupLoggerLogLevel"
  5729. glib:get-type="soup_logger_log_level_get_type"
  5730. c:type="SoupLoggerLogLevel">
  5731. <doc xml:space="preserve">Describes the level of logging output to provide.</doc>
  5732. <member name="none"
  5733. value="0"
  5734. c:identifier="SOUP_LOGGER_LOG_NONE"
  5735. glib:nick="none">
  5736. <doc xml:space="preserve">No logging</doc>
  5737. </member>
  5738. <member name="minimal"
  5739. value="1"
  5740. c:identifier="SOUP_LOGGER_LOG_MINIMAL"
  5741. glib:nick="minimal">
  5742. <doc xml:space="preserve">Log the Request-Line or Status-Line and
  5743. the Soup-Debug pseudo-headers</doc>
  5744. </member>
  5745. <member name="headers"
  5746. value="2"
  5747. c:identifier="SOUP_LOGGER_LOG_HEADERS"
  5748. glib:nick="headers">
  5749. <doc xml:space="preserve">Log the full request/response headers</doc>
  5750. </member>
  5751. <member name="body"
  5752. value="3"
  5753. c:identifier="SOUP_LOGGER_LOG_BODY"
  5754. glib:nick="body">
  5755. <doc xml:space="preserve">Log the full headers and request/response
  5756. bodies.</doc>
  5757. </member>
  5758. </enumeration>
  5759. <callback name="LoggerPrinter" c:type="SoupLoggerPrinter">
  5760. <doc xml:space="preserve">The prototype for a custom printing callback.
  5761. @level indicates what kind of information is being printed. Eg, it
  5762. will be %SOUP_LOGGER_LOG_HEADERS if @data is header data.
  5763. @direction is either '&lt;', '&gt;', or ' ', and @data is the single line
  5764. to print; the printer is expected to add a terminating newline.
  5765. To get the effect of the default printer, you would do:
  5766. &lt;informalexample&gt;&lt;programlisting&gt;
  5767. printf ("%c %s\n", direction, data);
  5768. &lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
  5769. <return-value transfer-ownership="none">
  5770. <type name="none" c:type="void"/>
  5771. </return-value>
  5772. <parameters>
  5773. <parameter name="logger" transfer-ownership="none">
  5774. <doc xml:space="preserve">the #SoupLogger</doc>
  5775. <type name="Logger" c:type="SoupLogger*"/>
  5776. </parameter>
  5777. <parameter name="level" transfer-ownership="none">
  5778. <doc xml:space="preserve">the level of the information being printed.</doc>
  5779. <type name="LoggerLogLevel" c:type="SoupLoggerLogLevel"/>
  5780. </parameter>
  5781. <parameter name="direction" transfer-ownership="none">
  5782. <doc xml:space="preserve">a single-character prefix to @data</doc>
  5783. <type name="gchar" c:type="char"/>
  5784. </parameter>
  5785. <parameter name="data" transfer-ownership="none">
  5786. <doc xml:space="preserve">data to print</doc>
  5787. <type name="utf8" c:type="const char*"/>
  5788. </parameter>
  5789. <parameter name="user_data"
  5790. transfer-ownership="none"
  5791. nullable="1"
  5792. allow-none="1"
  5793. closure="4">
  5794. <doc xml:space="preserve">the data passed to soup_logger_set_printer()</doc>
  5795. <type name="gpointer" c:type="gpointer"/>
  5796. </parameter>
  5797. </parameters>
  5798. </callback>
  5799. <constant name="MESSAGE_BODY_H" value="1" c:type="SOUP_MESSAGE_BODY_H">
  5800. <type name="gint" c:type="gint"/>
  5801. </constant>
  5802. <constant name="MESSAGE_FIRST_PARTY"
  5803. value="first-party"
  5804. c:type="SOUP_MESSAGE_FIRST_PARTY"
  5805. version="2.30">
  5806. <doc xml:space="preserve">Alias for the #SoupMessage:first-party property. (The
  5807. #SoupURI loaded in the application when the message was
  5808. queued.)</doc>
  5809. <type name="utf8" c:type="gchar*"/>
  5810. </constant>
  5811. <constant name="MESSAGE_FLAGS" value="flags" c:type="SOUP_MESSAGE_FLAGS">
  5812. <doc xml:space="preserve">Alias for the #SoupMessage:flags property. (The message's
  5813. #SoupMessageFlags.)</doc>
  5814. <type name="utf8" c:type="gchar*"/>
  5815. </constant>
  5816. <constant name="MESSAGE_H" value="1" c:type="SOUP_MESSAGE_H">
  5817. <type name="gint" c:type="gint"/>
  5818. </constant>
  5819. <constant name="MESSAGE_HEADERS_H"
  5820. value="1"
  5821. c:type="SOUP_MESSAGE_HEADERS_H">
  5822. <type name="gint" c:type="gint"/>
  5823. </constant>
  5824. <constant name="MESSAGE_HTTP_VERSION"
  5825. value="http-version"
  5826. c:type="SOUP_MESSAGE_HTTP_VERSION">
  5827. <doc xml:space="preserve">Alias for the #SoupMessage:http-version property. (The
  5828. message's #SoupHTTPVersion.)</doc>
  5829. <type name="utf8" c:type="gchar*"/>
  5830. </constant>
  5831. <constant name="MESSAGE_METHOD"
  5832. value="method"
  5833. c:type="SOUP_MESSAGE_METHOD">
  5834. <doc xml:space="preserve">Alias for the #SoupMessage:method property. (The message's
  5835. HTTP method.)</doc>
  5836. <type name="utf8" c:type="gchar*"/>
  5837. </constant>
  5838. <constant name="MESSAGE_PRIORITY"
  5839. value="priority"
  5840. c:type="SOUP_MESSAGE_PRIORITY"
  5841. version="2.44">
  5842. <doc xml:space="preserve">Sets the priority of the #SoupMessage. See
  5843. soup_message_set_priority() for further details.</doc>
  5844. <type name="utf8" c:type="gchar*"/>
  5845. </constant>
  5846. <constant name="MESSAGE_REASON_PHRASE"
  5847. value="reason-phrase"
  5848. c:type="SOUP_MESSAGE_REASON_PHRASE">
  5849. <doc xml:space="preserve">Alias for the #SoupMessage:reason-phrase property. (The
  5850. message's HTTP response reason phrase.)</doc>
  5851. <type name="utf8" c:type="gchar*"/>
  5852. </constant>
  5853. <constant name="MESSAGE_REQUEST_BODY"
  5854. value="request-body"
  5855. c:type="SOUP_MESSAGE_REQUEST_BODY">
  5856. <doc xml:space="preserve">Alias for the #SoupMessage:request-body property. (The
  5857. message's HTTP request body.)</doc>
  5858. <type name="utf8" c:type="gchar*"/>
  5859. </constant>
  5860. <constant name="MESSAGE_REQUEST_BODY_DATA"
  5861. value="request-body-data"
  5862. c:type="SOUP_MESSAGE_REQUEST_BODY_DATA"
  5863. version="2.46">
  5864. <doc xml:space="preserve">Alias for the #SoupMessage:request-body-data property. (The
  5865. message's HTTP request body, as a #GBytes.)</doc>
  5866. <type name="utf8" c:type="gchar*"/>
  5867. </constant>
  5868. <constant name="MESSAGE_REQUEST_HEADERS"
  5869. value="request-headers"
  5870. c:type="SOUP_MESSAGE_REQUEST_HEADERS">
  5871. <doc xml:space="preserve">Alias for the #SoupMessage:request-headers property. (The
  5872. message's HTTP request headers.)</doc>
  5873. <type name="utf8" c:type="gchar*"/>
  5874. </constant>
  5875. <constant name="MESSAGE_RESPONSE_BODY"
  5876. value="response-body"
  5877. c:type="SOUP_MESSAGE_RESPONSE_BODY">
  5878. <doc xml:space="preserve">Alias for the #SoupMessage:response-body property. (The
  5879. message's HTTP response body.)</doc>
  5880. <type name="utf8" c:type="gchar*"/>
  5881. </constant>
  5882. <constant name="MESSAGE_RESPONSE_BODY_DATA"
  5883. value="response-body-data"
  5884. c:type="SOUP_MESSAGE_RESPONSE_BODY_DATA"
  5885. version="2.46">
  5886. <doc xml:space="preserve">Alias for the #SoupMessage:response-body-data property. (The
  5887. message's HTTP response body, as a #GBytes.)</doc>
  5888. <type name="utf8" c:type="gchar*"/>
  5889. </constant>
  5890. <constant name="MESSAGE_RESPONSE_HEADERS"
  5891. value="response-headers"
  5892. c:type="SOUP_MESSAGE_RESPONSE_HEADERS">
  5893. <doc xml:space="preserve">Alias for the #SoupMessage:response-headers property. (The
  5894. message's HTTP response headers.)</doc>
  5895. <type name="utf8" c:type="gchar*"/>
  5896. </constant>
  5897. <constant name="MESSAGE_SERVER_SIDE"
  5898. value="server-side"
  5899. c:type="SOUP_MESSAGE_SERVER_SIDE">
  5900. <doc xml:space="preserve">Alias for the #SoupMessage:server-side property. (%TRUE if
  5901. the message was created by #SoupServer.)</doc>
  5902. <type name="utf8" c:type="gchar*"/>
  5903. </constant>
  5904. <constant name="MESSAGE_STATUS_CODE"
  5905. value="status-code"
  5906. c:type="SOUP_MESSAGE_STATUS_CODE">
  5907. <doc xml:space="preserve">Alias for the #SoupMessage:status-code property. (The
  5908. message's HTTP response status code.)</doc>
  5909. <type name="utf8" c:type="gchar*"/>
  5910. </constant>
  5911. <constant name="MESSAGE_TLS_CERTIFICATE"
  5912. value="tls-certificate"
  5913. c:type="SOUP_MESSAGE_TLS_CERTIFICATE"
  5914. version="2.34">
  5915. <doc xml:space="preserve">Alias for the #SoupMessage:tls-certificate property. (The
  5916. TLS certificate associated with the message, if any.)</doc>
  5917. <type name="utf8" c:type="gchar*"/>
  5918. </constant>
  5919. <constant name="MESSAGE_TLS_ERRORS"
  5920. value="tls-errors"
  5921. c:type="SOUP_MESSAGE_TLS_ERRORS"
  5922. version="2.34">
  5923. <doc xml:space="preserve">Alias for the #SoupMessage:tls-errors property. (The
  5924. verification errors on #SoupMessage:tls-certificate.)</doc>
  5925. <type name="utf8" c:type="gchar*"/>
  5926. </constant>
  5927. <constant name="MESSAGE_URI" value="uri" c:type="SOUP_MESSAGE_URI">
  5928. <doc xml:space="preserve">Alias for the #SoupMessage:uri property. (The message's
  5929. #SoupURI.)</doc>
  5930. <type name="utf8" c:type="gchar*"/>
  5931. </constant>
  5932. <constant name="METHOD_H" value="1" c:type="SOUP_METHOD_H">
  5933. <type name="gint" c:type="gint"/>
  5934. </constant>
  5935. <constant name="MISC_H" value="1" c:type="SOUP_MISC_H">
  5936. <type name="gint" c:type="gint"/>
  5937. </constant>
  5938. <constant name="MULTIPART_H" value="1" c:type="SOUP_MULTIPART_H">
  5939. <type name="gint" c:type="gint"/>
  5940. </constant>
  5941. <constant name="MULTIPART_INPUT_STREAM_H"
  5942. value="1"
  5943. c:type="SOUP_MULTIPART_INPUT_STREAM_H">
  5944. <type name="gint" c:type="gint"/>
  5945. </constant>
  5946. <enumeration name="MemoryUse"
  5947. glib:type-name="SoupMemoryUse"
  5948. glib:get-type="soup_memory_use_get_type"
  5949. c:type="SoupMemoryUse">
  5950. <doc xml:space="preserve">Describes how #SoupBuffer should use the data passed in by the
  5951. caller.
  5952. See also soup_buffer_new_with_owner(), which allows to you create a
  5953. buffer containing data which is owned by another object.</doc>
  5954. <member name="static"
  5955. value="0"
  5956. c:identifier="SOUP_MEMORY_STATIC"
  5957. glib:nick="static">
  5958. <doc xml:space="preserve">The memory is statically allocated and
  5959. constant; libsoup can use the passed-in buffer directly and not
  5960. need to worry about it being modified or freed.</doc>
  5961. </member>
  5962. <member name="take"
  5963. value="1"
  5964. c:identifier="SOUP_MEMORY_TAKE"
  5965. glib:nick="take">
  5966. <doc xml:space="preserve">The caller has allocated the memory for the
  5967. #SoupBuffer's use; libsoup will assume ownership of it and free it
  5968. (with g_free()) when it is done with it.</doc>
  5969. </member>
  5970. <member name="copy"
  5971. value="2"
  5972. c:identifier="SOUP_MEMORY_COPY"
  5973. glib:nick="copy">
  5974. <doc xml:space="preserve">The passed-in data belongs to the caller; the
  5975. #SoupBuffer will copy it into new memory, leaving the caller free
  5976. to reuse the original memory.</doc>
  5977. </member>
  5978. <member name="temporary"
  5979. value="3"
  5980. c:identifier="SOUP_MEMORY_TEMPORARY"
  5981. glib:nick="temporary">
  5982. <doc xml:space="preserve">The passed-in data belongs to the caller,
  5983. but will remain valid for the lifetime of the #SoupBuffer. The
  5984. difference between this and @SOUP_MEMORY_STATIC is that if you copy
  5985. a @SOUP_MEMORY_TEMPORARY buffer, it will make a copy of the memory
  5986. as well, rather than reusing the original memory.</doc>
  5987. </member>
  5988. </enumeration>
  5989. <class name="Message"
  5990. c:symbol-prefix="message"
  5991. c:type="SoupMessage"
  5992. parent="GObject.Object"
  5993. glib:type-name="SoupMessage"
  5994. glib:get-type="soup_message_get_type"
  5995. glib:type-struct="MessageClass">
  5996. <doc xml:space="preserve">Represents an HTTP message being sent or received.
  5997. @status_code will normally be a #SoupStatus value, eg,
  5998. %SOUP_STATUS_OK, though of course it might actually be an unknown
  5999. status code. @reason_phrase is the actual text returned from the
  6000. server, which may or may not correspond to the "standard"
  6001. description of @status_code. At any rate, it is almost certainly
  6002. not localized, and not very descriptive even if it is in the user's
  6003. language; you should not use @reason_phrase in user-visible
  6004. messages. Rather, you should look at @status_code, and determine an
  6005. end-user-appropriate message based on that and on what you were
  6006. trying to do.
  6007. As described in the #SoupMessageBody documentation, the
  6008. @request_body and @response_body &lt;literal&gt;data&lt;/literal&gt; fields
  6009. will not necessarily be filled in at all times. When the body
  6010. fields are filled in, they will be terminated with a '\0' byte
  6011. (which is not included in the &lt;literal&gt;length&lt;/literal&gt;), so you
  6012. can use them as ordinary C strings (assuming that you know that the
  6013. body doesn't have any other '\0' bytes).
  6014. For a client-side #SoupMessage, @request_body's
  6015. &lt;literal&gt;data&lt;/literal&gt; is usually filled in right before libsoup
  6016. writes the request to the network, but you should not count on
  6017. this; use soup_message_body_flatten() if you want to ensure that
  6018. &lt;literal&gt;data&lt;/literal&gt; is filled in. If you are not using
  6019. #SoupRequest to read the response, then @response_body's
  6020. &lt;literal&gt;data&lt;/literal&gt; will be filled in before
  6021. #SoupMessage::finished is emitted. (If you are using #SoupRequest,
  6022. then the message body is not accumulated by default, so
  6023. @response_body's &lt;literal&gt;data&lt;/literal&gt; will always be %NULL.)
  6024. For a server-side #SoupMessage, @request_body's %data will be
  6025. filled in before #SoupMessage::got_body is emitted.
  6026. To prevent the %data field from being filled in at all (eg, if you
  6027. are handling the data from a #SoupMessage::got_chunk, and so don't
  6028. need to see it all at the end), call
  6029. soup_message_body_set_accumulate() on @response_body or
  6030. @request_body as appropriate, passing %FALSE.</doc>
  6031. <constructor name="new" c:identifier="soup_message_new">
  6032. <doc xml:space="preserve">Creates a new empty #SoupMessage, which will connect to @uri</doc>
  6033. <return-value transfer-ownership="full" nullable="1">
  6034. <doc xml:space="preserve">the new #SoupMessage (or %NULL if @uri
  6035. could not be parsed).</doc>
  6036. <type name="Message" c:type="SoupMessage*"/>
  6037. </return-value>
  6038. <parameters>
  6039. <parameter name="method" transfer-ownership="none">
  6040. <doc xml:space="preserve">the HTTP method for the created request</doc>
  6041. <type name="utf8" c:type="const char*"/>
  6042. </parameter>
  6043. <parameter name="uri_string" transfer-ownership="none">
  6044. <doc xml:space="preserve">the destination endpoint (as a string)</doc>
  6045. <type name="utf8" c:type="const char*"/>
  6046. </parameter>
  6047. </parameters>
  6048. </constructor>
  6049. <constructor name="new_from_uri"
  6050. c:identifier="soup_message_new_from_uri">
  6051. <doc xml:space="preserve">Creates a new empty #SoupMessage, which will connect to @uri</doc>
  6052. <return-value transfer-ownership="full">
  6053. <doc xml:space="preserve">the new #SoupMessage</doc>
  6054. <type name="Message" c:type="SoupMessage*"/>
  6055. </return-value>
  6056. <parameters>
  6057. <parameter name="method" transfer-ownership="none">
  6058. <doc xml:space="preserve">the HTTP method for the created request</doc>
  6059. <type name="utf8" c:type="const char*"/>
  6060. </parameter>
  6061. <parameter name="uri" transfer-ownership="none">
  6062. <doc xml:space="preserve">the destination endpoint (as a #SoupURI)</doc>
  6063. <type name="URI" c:type="SoupURI*"/>
  6064. </parameter>
  6065. </parameters>
  6066. </constructor>
  6067. <virtual-method name="finished" invoker="finished">
  6068. <return-value transfer-ownership="none">
  6069. <type name="none" c:type="void"/>
  6070. </return-value>
  6071. <parameters>
  6072. <instance-parameter name="msg" transfer-ownership="none">
  6073. <type name="Message" c:type="SoupMessage*"/>
  6074. </instance-parameter>
  6075. </parameters>
  6076. </virtual-method>
  6077. <virtual-method name="got_body" invoker="got_body">
  6078. <return-value transfer-ownership="none">
  6079. <type name="none" c:type="void"/>
  6080. </return-value>
  6081. <parameters>
  6082. <instance-parameter name="msg" transfer-ownership="none">
  6083. <type name="Message" c:type="SoupMessage*"/>
  6084. </instance-parameter>
  6085. </parameters>
  6086. </virtual-method>
  6087. <virtual-method name="got_chunk" invoker="got_chunk">
  6088. <return-value transfer-ownership="none">
  6089. <type name="none" c:type="void"/>
  6090. </return-value>
  6091. <parameters>
  6092. <instance-parameter name="msg" transfer-ownership="none">
  6093. <type name="Message" c:type="SoupMessage*"/>
  6094. </instance-parameter>
  6095. <parameter name="chunk" transfer-ownership="none">
  6096. <type name="Buffer" c:type="SoupBuffer*"/>
  6097. </parameter>
  6098. </parameters>
  6099. </virtual-method>
  6100. <virtual-method name="got_headers" invoker="got_headers">
  6101. <return-value transfer-ownership="none">
  6102. <type name="none" c:type="void"/>
  6103. </return-value>
  6104. <parameters>
  6105. <instance-parameter name="msg" transfer-ownership="none">
  6106. <type name="Message" c:type="SoupMessage*"/>
  6107. </instance-parameter>
  6108. </parameters>
  6109. </virtual-method>
  6110. <virtual-method name="got_informational" invoker="got_informational">
  6111. <return-value transfer-ownership="none">
  6112. <type name="none" c:type="void"/>
  6113. </return-value>
  6114. <parameters>
  6115. <instance-parameter name="msg" transfer-ownership="none">
  6116. <type name="Message" c:type="SoupMessage*"/>
  6117. </instance-parameter>
  6118. </parameters>
  6119. </virtual-method>
  6120. <virtual-method name="restarted" invoker="restarted">
  6121. <return-value transfer-ownership="none">
  6122. <type name="none" c:type="void"/>
  6123. </return-value>
  6124. <parameters>
  6125. <instance-parameter name="msg" transfer-ownership="none">
  6126. <type name="Message" c:type="SoupMessage*"/>
  6127. </instance-parameter>
  6128. </parameters>
  6129. </virtual-method>
  6130. <virtual-method name="starting" invoker="starting">
  6131. <return-value transfer-ownership="none">
  6132. <type name="none" c:type="void"/>
  6133. </return-value>
  6134. <parameters>
  6135. <instance-parameter name="msg" transfer-ownership="none">
  6136. <type name="Message" c:type="SoupMessage*"/>
  6137. </instance-parameter>
  6138. </parameters>
  6139. </virtual-method>
  6140. <virtual-method name="wrote_body" invoker="wrote_body">
  6141. <return-value transfer-ownership="none">
  6142. <type name="none" c:type="void"/>
  6143. </return-value>
  6144. <parameters>
  6145. <instance-parameter name="msg" transfer-ownership="none">
  6146. <type name="Message" c:type="SoupMessage*"/>
  6147. </instance-parameter>
  6148. </parameters>
  6149. </virtual-method>
  6150. <virtual-method name="wrote_chunk" invoker="wrote_chunk">
  6151. <return-value transfer-ownership="none">
  6152. <type name="none" c:type="void"/>
  6153. </return-value>
  6154. <parameters>
  6155. <instance-parameter name="msg" transfer-ownership="none">
  6156. <type name="Message" c:type="SoupMessage*"/>
  6157. </instance-parameter>
  6158. </parameters>
  6159. </virtual-method>
  6160. <virtual-method name="wrote_headers" invoker="wrote_headers">
  6161. <return-value transfer-ownership="none">
  6162. <type name="none" c:type="void"/>
  6163. </return-value>
  6164. <parameters>
  6165. <instance-parameter name="msg" transfer-ownership="none">
  6166. <type name="Message" c:type="SoupMessage*"/>
  6167. </instance-parameter>
  6168. </parameters>
  6169. </virtual-method>
  6170. <virtual-method name="wrote_informational" invoker="wrote_informational">
  6171. <return-value transfer-ownership="none">
  6172. <type name="none" c:type="void"/>
  6173. </return-value>
  6174. <parameters>
  6175. <instance-parameter name="msg" transfer-ownership="none">
  6176. <type name="Message" c:type="SoupMessage*"/>
  6177. </instance-parameter>
  6178. </parameters>
  6179. </virtual-method>
  6180. <method name="add_header_handler"
  6181. c:identifier="soup_message_add_header_handler"
  6182. introspectable="0">
  6183. <doc xml:space="preserve">Adds a signal handler to @msg for @signal, as with
  6184. g_signal_connect(), but the @callback will only be run if @msg's
  6185. incoming messages headers (that is, the
  6186. &lt;literal&gt;request_headers&lt;/literal&gt; for a client #SoupMessage, or
  6187. the &lt;literal&gt;response_headers&lt;/literal&gt; for a server #SoupMessage)
  6188. contain a header named @header.</doc>
  6189. <return-value transfer-ownership="none">
  6190. <doc xml:space="preserve">the handler ID from g_signal_connect()</doc>
  6191. <type name="guint" c:type="guint"/>
  6192. </return-value>
  6193. <parameters>
  6194. <instance-parameter name="msg" transfer-ownership="none">
  6195. <doc xml:space="preserve">a #SoupMessage</doc>
  6196. <type name="Message" c:type="SoupMessage*"/>
  6197. </instance-parameter>
  6198. <parameter name="signal" transfer-ownership="none">
  6199. <doc xml:space="preserve">signal to connect the handler to.</doc>
  6200. <type name="utf8" c:type="const char*"/>
  6201. </parameter>
  6202. <parameter name="header" transfer-ownership="none">
  6203. <doc xml:space="preserve">HTTP response header to match against</doc>
  6204. <type name="utf8" c:type="const char*"/>
  6205. </parameter>
  6206. <parameter name="callback" transfer-ownership="none" closure="3">
  6207. <doc xml:space="preserve">the header handler</doc>
  6208. <type name="GObject.Callback" c:type="GCallback"/>
  6209. </parameter>
  6210. <parameter name="user_data"
  6211. transfer-ownership="none"
  6212. nullable="1"
  6213. allow-none="1">
  6214. <doc xml:space="preserve">data to pass to @handler_cb</doc>
  6215. <type name="gpointer" c:type="gpointer"/>
  6216. </parameter>
  6217. </parameters>
  6218. </method>
  6219. <method name="add_status_code_handler"
  6220. c:identifier="soup_message_add_status_code_handler"
  6221. introspectable="0">
  6222. <doc xml:space="preserve">Adds a signal handler to @msg for @signal, as with
  6223. g_signal_connect(), but the @callback will only be run if @msg has
  6224. the status @status_code.
  6225. @signal must be a signal that will be emitted after @msg's status
  6226. is set. For a client #SoupMessage, this means it can't be a "wrote"
  6227. signal. For a server #SoupMessage, this means it can't be a "got"
  6228. signal.</doc>
  6229. <return-value transfer-ownership="none">
  6230. <doc xml:space="preserve">the handler ID from g_signal_connect()</doc>
  6231. <type name="guint" c:type="guint"/>
  6232. </return-value>
  6233. <parameters>
  6234. <instance-parameter name="msg" transfer-ownership="none">
  6235. <doc xml:space="preserve">a #SoupMessage</doc>
  6236. <type name="Message" c:type="SoupMessage*"/>
  6237. </instance-parameter>
  6238. <parameter name="signal" transfer-ownership="none">
  6239. <doc xml:space="preserve">signal to connect the handler to.</doc>
  6240. <type name="utf8" c:type="const char*"/>
  6241. </parameter>
  6242. <parameter name="status_code" transfer-ownership="none">
  6243. <doc xml:space="preserve">status code to match against</doc>
  6244. <type name="guint" c:type="guint"/>
  6245. </parameter>
  6246. <parameter name="callback" transfer-ownership="none" closure="3">
  6247. <doc xml:space="preserve">the header handler</doc>
  6248. <type name="GObject.Callback" c:type="GCallback"/>
  6249. </parameter>
  6250. <parameter name="user_data"
  6251. transfer-ownership="none"
  6252. nullable="1"
  6253. allow-none="1">
  6254. <doc xml:space="preserve">data to pass to @handler_cb</doc>
  6255. <type name="gpointer" c:type="gpointer"/>
  6256. </parameter>
  6257. </parameters>
  6258. </method>
  6259. <method name="content_sniffed"
  6260. c:identifier="soup_message_content_sniffed">
  6261. <return-value transfer-ownership="none">
  6262. <type name="none" c:type="void"/>
  6263. </return-value>
  6264. <parameters>
  6265. <instance-parameter name="msg" transfer-ownership="none">
  6266. <type name="Message" c:type="SoupMessage*"/>
  6267. </instance-parameter>
  6268. <parameter name="content_type" transfer-ownership="none">
  6269. <type name="utf8" c:type="const char*"/>
  6270. </parameter>
  6271. <parameter name="params" transfer-ownership="none">
  6272. <type name="GLib.HashTable" c:type="GHashTable*">
  6273. <type name="gpointer" c:type="gpointer"/>
  6274. <type name="gpointer" c:type="gpointer"/>
  6275. </type>
  6276. </parameter>
  6277. </parameters>
  6278. </method>
  6279. <method name="disable_feature"
  6280. c:identifier="soup_message_disable_feature"
  6281. version="2.28">
  6282. <doc xml:space="preserve">This disables the actions of #SoupSessionFeature&lt;!-- --&gt;s with the
  6283. given @feature_type (or a subclass of that type) on @msg, so that
  6284. @msg is processed as though the feature(s) hadn't been added to the
  6285. session. Eg, passing #SOUP_TYPE_CONTENT_SNIFFER for @feature_type
  6286. will disable Content-Type sniffing on the message.
  6287. You must call this before queueing @msg on a session; calling it on
  6288. a message that has already been queued is undefined. In particular,
  6289. you cannot call this on a message that is being requeued after a
  6290. redirect or authentication.</doc>
  6291. <return-value transfer-ownership="none">
  6292. <type name="none" c:type="void"/>
  6293. </return-value>
  6294. <parameters>
  6295. <instance-parameter name="msg" transfer-ownership="none">
  6296. <doc xml:space="preserve">a #SoupMessage</doc>
  6297. <type name="Message" c:type="SoupMessage*"/>
  6298. </instance-parameter>
  6299. <parameter name="feature_type" transfer-ownership="none">
  6300. <doc xml:space="preserve">the #GType of a #SoupSessionFeature</doc>
  6301. <type name="GType" c:type="GType"/>
  6302. </parameter>
  6303. </parameters>
  6304. </method>
  6305. <method name="finished" c:identifier="soup_message_finished">
  6306. <return-value transfer-ownership="none">
  6307. <type name="none" c:type="void"/>
  6308. </return-value>
  6309. <parameters>
  6310. <instance-parameter name="msg" transfer-ownership="none">
  6311. <type name="Message" c:type="SoupMessage*"/>
  6312. </instance-parameter>
  6313. </parameters>
  6314. </method>
  6315. <method name="get_address"
  6316. c:identifier="soup_message_get_address"
  6317. version="2.26">
  6318. <doc xml:space="preserve">Gets the address @msg's URI points to. After first setting the
  6319. URI on a message, this will be unresolved, although the message's
  6320. session will resolve it before sending the message.</doc>
  6321. <return-value transfer-ownership="none">
  6322. <doc xml:space="preserve">the address @msg's URI points to</doc>
  6323. <type name="Address" c:type="SoupAddress*"/>
  6324. </return-value>
  6325. <parameters>
  6326. <instance-parameter name="msg" transfer-ownership="none">
  6327. <doc xml:space="preserve">a #SoupMessage</doc>
  6328. <type name="Message" c:type="SoupMessage*"/>
  6329. </instance-parameter>
  6330. </parameters>
  6331. </method>
  6332. <method name="get_first_party"
  6333. c:identifier="soup_message_get_first_party"
  6334. version="2.30">
  6335. <doc xml:space="preserve">Gets @msg's first-party #SoupURI</doc>
  6336. <return-value transfer-ownership="none">
  6337. <doc xml:space="preserve">the @msg's first party #SoupURI</doc>
  6338. <type name="URI" c:type="SoupURI*"/>
  6339. </return-value>
  6340. <parameters>
  6341. <instance-parameter name="msg" transfer-ownership="none">
  6342. <doc xml:space="preserve">a #SoupMessage</doc>
  6343. <type name="Message" c:type="SoupMessage*"/>
  6344. </instance-parameter>
  6345. </parameters>
  6346. </method>
  6347. <method name="get_flags" c:identifier="soup_message_get_flags">
  6348. <doc xml:space="preserve">Gets the flags on @msg</doc>
  6349. <return-value transfer-ownership="none">
  6350. <doc xml:space="preserve">the flags</doc>
  6351. <type name="MessageFlags" c:type="SoupMessageFlags"/>
  6352. </return-value>
  6353. <parameters>
  6354. <instance-parameter name="msg" transfer-ownership="none">
  6355. <doc xml:space="preserve">a #SoupMessage</doc>
  6356. <type name="Message" c:type="SoupMessage*"/>
  6357. </instance-parameter>
  6358. </parameters>
  6359. </method>
  6360. <method name="get_http_version"
  6361. c:identifier="soup_message_get_http_version">
  6362. <doc xml:space="preserve">Gets the HTTP version of @msg. This is the minimum of the
  6363. version from the request and the version from the response.</doc>
  6364. <return-value transfer-ownership="none">
  6365. <doc xml:space="preserve">the HTTP version</doc>
  6366. <type name="HTTPVersion" c:type="SoupHTTPVersion"/>
  6367. </return-value>
  6368. <parameters>
  6369. <instance-parameter name="msg" transfer-ownership="none">
  6370. <doc xml:space="preserve">a #SoupMessage</doc>
  6371. <type name="Message" c:type="SoupMessage*"/>
  6372. </instance-parameter>
  6373. </parameters>
  6374. </method>
  6375. <method name="get_https_status"
  6376. c:identifier="soup_message_get_https_status"
  6377. version="2.34">
  6378. <doc xml:space="preserve">If @msg is using https (or attempted to use https but got
  6379. %SOUP_STATUS_SSL_FAILED), this retrieves the #GTlsCertificate
  6380. associated with its connection, and the #GTlsCertificateFlags
  6381. showing what problems, if any, have been found with that
  6382. certificate.
  6383. &lt;note&gt;&lt;para&gt;This is only meaningful with messages processed by a #SoupSession and is
  6384. not useful for messages received by a #SoupServer&lt;/para&gt;&lt;/note&gt;</doc>
  6385. <return-value transfer-ownership="none">
  6386. <doc xml:space="preserve">%TRUE if @msg used/attempted https, %FALSE if not</doc>
  6387. <type name="gboolean" c:type="gboolean"/>
  6388. </return-value>
  6389. <parameters>
  6390. <instance-parameter name="msg" transfer-ownership="none">
  6391. <doc xml:space="preserve">a #SoupMessage</doc>
  6392. <type name="Message" c:type="SoupMessage*"/>
  6393. </instance-parameter>
  6394. <parameter name="certificate"
  6395. direction="out"
  6396. caller-allocates="0"
  6397. transfer-ownership="none">
  6398. <doc xml:space="preserve">@msg's TLS certificate</doc>
  6399. <type name="Gio.TlsCertificate" c:type="GTlsCertificate**"/>
  6400. </parameter>
  6401. <parameter name="errors"
  6402. direction="out"
  6403. caller-allocates="0"
  6404. transfer-ownership="full">
  6405. <doc xml:space="preserve">the verification status of @certificate</doc>
  6406. <type name="Gio.TlsCertificateFlags"
  6407. c:type="GTlsCertificateFlags*"/>
  6408. </parameter>
  6409. </parameters>
  6410. </method>
  6411. <method name="get_priority"
  6412. c:identifier="soup_message_get_priority"
  6413. version="2.44">
  6414. <doc xml:space="preserve">Retrieves the #SoupMessagePriority. If not set this value defaults
  6415. to #SOUP_MESSAGE_PRIORITY_NORMAL.</doc>
  6416. <return-value transfer-ownership="none">
  6417. <doc xml:space="preserve">the priority of the message.</doc>
  6418. <type name="MessagePriority" c:type="SoupMessagePriority"/>
  6419. </return-value>
  6420. <parameters>
  6421. <instance-parameter name="msg" transfer-ownership="none">
  6422. <doc xml:space="preserve">a #SoupMessage</doc>
  6423. <type name="Message" c:type="SoupMessage*"/>
  6424. </instance-parameter>
  6425. </parameters>
  6426. </method>
  6427. <method name="get_soup_request"
  6428. c:identifier="soup_message_get_soup_request"
  6429. version="2.42">
  6430. <doc xml:space="preserve">If @msg is associated with a #SoupRequest, this returns that
  6431. request. Otherwise it returns %NULL.</doc>
  6432. <return-value transfer-ownership="none">
  6433. <doc xml:space="preserve">@msg's associated #SoupRequest</doc>
  6434. <type name="Request" c:type="SoupRequest*"/>
  6435. </return-value>
  6436. <parameters>
  6437. <instance-parameter name="msg" transfer-ownership="none">
  6438. <doc xml:space="preserve">a #SoupMessage</doc>
  6439. <type name="Message" c:type="SoupMessage*"/>
  6440. </instance-parameter>
  6441. </parameters>
  6442. </method>
  6443. <method name="get_uri" c:identifier="soup_message_get_uri">
  6444. <doc xml:space="preserve">Gets @msg's URI</doc>
  6445. <return-value transfer-ownership="none">
  6446. <doc xml:space="preserve">the URI @msg is targeted for.</doc>
  6447. <type name="URI" c:type="SoupURI*"/>
  6448. </return-value>
  6449. <parameters>
  6450. <instance-parameter name="msg" transfer-ownership="none">
  6451. <doc xml:space="preserve">a #SoupMessage</doc>
  6452. <type name="Message" c:type="SoupMessage*"/>
  6453. </instance-parameter>
  6454. </parameters>
  6455. </method>
  6456. <method name="got_body" c:identifier="soup_message_got_body">
  6457. <return-value transfer-ownership="none">
  6458. <type name="none" c:type="void"/>
  6459. </return-value>
  6460. <parameters>
  6461. <instance-parameter name="msg" transfer-ownership="none">
  6462. <type name="Message" c:type="SoupMessage*"/>
  6463. </instance-parameter>
  6464. </parameters>
  6465. </method>
  6466. <method name="got_chunk" c:identifier="soup_message_got_chunk">
  6467. <return-value transfer-ownership="none">
  6468. <type name="none" c:type="void"/>
  6469. </return-value>
  6470. <parameters>
  6471. <instance-parameter name="msg" transfer-ownership="none">
  6472. <type name="Message" c:type="SoupMessage*"/>
  6473. </instance-parameter>
  6474. <parameter name="chunk" transfer-ownership="none">
  6475. <type name="Buffer" c:type="SoupBuffer*"/>
  6476. </parameter>
  6477. </parameters>
  6478. </method>
  6479. <method name="got_headers" c:identifier="soup_message_got_headers">
  6480. <return-value transfer-ownership="none">
  6481. <type name="none" c:type="void"/>
  6482. </return-value>
  6483. <parameters>
  6484. <instance-parameter name="msg" transfer-ownership="none">
  6485. <type name="Message" c:type="SoupMessage*"/>
  6486. </instance-parameter>
  6487. </parameters>
  6488. </method>
  6489. <method name="got_informational"
  6490. c:identifier="soup_message_got_informational">
  6491. <return-value transfer-ownership="none">
  6492. <type name="none" c:type="void"/>
  6493. </return-value>
  6494. <parameters>
  6495. <instance-parameter name="msg" transfer-ownership="none">
  6496. <type name="Message" c:type="SoupMessage*"/>
  6497. </instance-parameter>
  6498. </parameters>
  6499. </method>
  6500. <method name="is_keepalive" c:identifier="soup_message_is_keepalive">
  6501. <doc xml:space="preserve">Determines whether or not @msg's connection can be kept alive for
  6502. further requests after processing @msg, based on the HTTP version,
  6503. Connection header, etc.</doc>
  6504. <return-value transfer-ownership="none">
  6505. <doc xml:space="preserve">%TRUE or %FALSE.</doc>
  6506. <type name="gboolean" c:type="gboolean"/>
  6507. </return-value>
  6508. <parameters>
  6509. <instance-parameter name="msg" transfer-ownership="none">
  6510. <doc xml:space="preserve">a #SoupMessage</doc>
  6511. <type name="Message" c:type="SoupMessage*"/>
  6512. </instance-parameter>
  6513. </parameters>
  6514. </method>
  6515. <method name="restarted" c:identifier="soup_message_restarted">
  6516. <return-value transfer-ownership="none">
  6517. <type name="none" c:type="void"/>
  6518. </return-value>
  6519. <parameters>
  6520. <instance-parameter name="msg" transfer-ownership="none">
  6521. <type name="Message" c:type="SoupMessage*"/>
  6522. </instance-parameter>
  6523. </parameters>
  6524. </method>
  6525. <method name="set_chunk_allocator"
  6526. c:identifier="soup_message_set_chunk_allocator"
  6527. deprecated="1">
  6528. <doc xml:space="preserve">Sets an alternate chunk-allocation function to use when reading
  6529. @msg's body when using the traditional (ie,
  6530. non-#SoupRequest&lt;!-- --&gt;-based) API. Every time data is available
  6531. to read, libsoup will call @allocator, which should return a
  6532. #SoupBuffer. (See #SoupChunkAllocator for additional details.)
  6533. Libsoup will then read data from the network into that buffer, and
  6534. update the buffer's &lt;literal&gt;length&lt;/literal&gt; to indicate how much
  6535. data it read.
  6536. Generally, a custom chunk allocator would be used in conjunction
  6537. with soup_message_body_set_accumulate() %FALSE and
  6538. #SoupMessage::got_chunk, as part of a strategy to avoid unnecessary
  6539. copying of data. However, you cannot assume that every call to the
  6540. allocator will be followed by a call to your
  6541. #SoupMessage::got_chunk handler; if an I/O error occurs, then the
  6542. buffer will be unreffed without ever having been used. If your
  6543. buffer-allocation strategy requires special cleanup, use
  6544. soup_buffer_new_with_owner() rather than doing the cleanup from the
  6545. #SoupMessage::got_chunk handler.
  6546. The other thing to remember when using non-accumulating message
  6547. bodies is that the buffer passed to the #SoupMessage::got_chunk
  6548. handler will be unreffed after the handler returns, just as it
  6549. would be in the non-custom-allocated case. If you want to hand the
  6550. chunk data off to some other part of your program to use later,
  6551. you'll need to ref the #SoupBuffer (or its owner, in the
  6552. soup_buffer_new_with_owner() case) to ensure that the data remains
  6553. valid.</doc>
  6554. <doc-deprecated xml:space="preserve">#SoupRequest provides a much simpler API that lets you
  6555. read the response directly into your own buffers without needing to
  6556. mess with callbacks, pausing/unpausing, etc.</doc-deprecated>
  6557. <return-value transfer-ownership="none">
  6558. <type name="none" c:type="void"/>
  6559. </return-value>
  6560. <parameters>
  6561. <instance-parameter name="msg" transfer-ownership="none">
  6562. <doc xml:space="preserve">a #SoupMessage</doc>
  6563. <type name="Message" c:type="SoupMessage*"/>
  6564. </instance-parameter>
  6565. <parameter name="allocator"
  6566. transfer-ownership="none"
  6567. scope="notified"
  6568. closure="1"
  6569. destroy="2">
  6570. <doc xml:space="preserve">the chunk allocator callback</doc>
  6571. <type name="ChunkAllocator" c:type="SoupChunkAllocator"/>
  6572. </parameter>
  6573. <parameter name="user_data"
  6574. transfer-ownership="none"
  6575. nullable="1"
  6576. allow-none="1">
  6577. <doc xml:space="preserve">data to pass to @allocator</doc>
  6578. <type name="gpointer" c:type="gpointer"/>
  6579. </parameter>
  6580. <parameter name="destroy_notify"
  6581. transfer-ownership="none"
  6582. scope="async">
  6583. <doc xml:space="preserve">destroy notifier to free @user_data when @msg is
  6584. destroyed</doc>
  6585. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  6586. </parameter>
  6587. </parameters>
  6588. </method>
  6589. <method name="set_first_party"
  6590. c:identifier="soup_message_set_first_party"
  6591. version="2.30">
  6592. <doc xml:space="preserve">Sets @first_party as the main document #SoupURI for @msg. For
  6593. details of when and how this is used refer to the documentation for
  6594. #SoupCookieJarAcceptPolicy.</doc>
  6595. <return-value transfer-ownership="none">
  6596. <type name="none" c:type="void"/>
  6597. </return-value>
  6598. <parameters>
  6599. <instance-parameter name="msg" transfer-ownership="none">
  6600. <doc xml:space="preserve">a #SoupMessage</doc>
  6601. <type name="Message" c:type="SoupMessage*"/>
  6602. </instance-parameter>
  6603. <parameter name="first_party" transfer-ownership="none">
  6604. <doc xml:space="preserve">the #SoupURI for the @msg's first party</doc>
  6605. <type name="URI" c:type="SoupURI*"/>
  6606. </parameter>
  6607. </parameters>
  6608. </method>
  6609. <method name="set_flags" c:identifier="soup_message_set_flags">
  6610. <doc xml:space="preserve">Sets the specified flags on @msg.</doc>
  6611. <return-value transfer-ownership="none">
  6612. <type name="none" c:type="void"/>
  6613. </return-value>
  6614. <parameters>
  6615. <instance-parameter name="msg" transfer-ownership="none">
  6616. <doc xml:space="preserve">a #SoupMessage</doc>
  6617. <type name="Message" c:type="SoupMessage*"/>
  6618. </instance-parameter>
  6619. <parameter name="flags" transfer-ownership="none">
  6620. <doc xml:space="preserve">a set of #SoupMessageFlags values</doc>
  6621. <type name="MessageFlags" c:type="SoupMessageFlags"/>
  6622. </parameter>
  6623. </parameters>
  6624. </method>
  6625. <method name="set_http_version"
  6626. c:identifier="soup_message_set_http_version">
  6627. <doc xml:space="preserve">Sets the HTTP version on @msg. The default version is
  6628. %SOUP_HTTP_1_1. Setting it to %SOUP_HTTP_1_0 will prevent certain
  6629. functionality from being used.</doc>
  6630. <return-value transfer-ownership="none">
  6631. <type name="none" c:type="void"/>
  6632. </return-value>
  6633. <parameters>
  6634. <instance-parameter name="msg" transfer-ownership="none">
  6635. <doc xml:space="preserve">a #SoupMessage</doc>
  6636. <type name="Message" c:type="SoupMessage*"/>
  6637. </instance-parameter>
  6638. <parameter name="version" transfer-ownership="none">
  6639. <doc xml:space="preserve">the HTTP version</doc>
  6640. <type name="HTTPVersion" c:type="SoupHTTPVersion"/>
  6641. </parameter>
  6642. </parameters>
  6643. </method>
  6644. <method name="set_priority"
  6645. c:identifier="soup_message_set_priority"
  6646. version="2.44">
  6647. <doc xml:space="preserve">Sets the priority of a message. Note that this won't have any
  6648. effect unless used before the message is added to the session's
  6649. message processing queue.
  6650. The message will be placed just before any other previously added
  6651. message with lower priority (messages with the same priority are
  6652. processed on a FIFO basis).
  6653. Setting priorities does not currently work with #SoupSessionSync
  6654. (or with synchronous messages on a plain #SoupSession) because in
  6655. the synchronous/blocking case, priority ends up being determined
  6656. semi-randomly by thread scheduling.</doc>
  6657. <return-value transfer-ownership="none">
  6658. <type name="none" c:type="void"/>
  6659. </return-value>
  6660. <parameters>
  6661. <instance-parameter name="msg" transfer-ownership="none">
  6662. <doc xml:space="preserve">a #SoupMessage</doc>
  6663. <type name="Message" c:type="SoupMessage*"/>
  6664. </instance-parameter>
  6665. <parameter name="priority" transfer-ownership="none">
  6666. <doc xml:space="preserve">the #SoupMessagePriority</doc>
  6667. <type name="MessagePriority" c:type="SoupMessagePriority"/>
  6668. </parameter>
  6669. </parameters>
  6670. </method>
  6671. <method name="set_redirect"
  6672. c:identifier="soup_message_set_redirect"
  6673. version="2.38">
  6674. <doc xml:space="preserve">Sets @msg's status_code to @status_code and adds a Location header
  6675. pointing to @redirect_uri. Use this from a #SoupServer when you
  6676. want to redirect the client to another URI.
  6677. @redirect_uri can be a relative URI, in which case it is
  6678. interpreted relative to @msg's current URI. In particular, if
  6679. @redirect_uri is just a path, it will replace the path
  6680. &lt;emphasis&gt;and query&lt;/emphasis&gt; of @msg's URI.</doc>
  6681. <return-value transfer-ownership="none">
  6682. <type name="none" c:type="void"/>
  6683. </return-value>
  6684. <parameters>
  6685. <instance-parameter name="msg" transfer-ownership="none">
  6686. <doc xml:space="preserve">a #SoupMessage</doc>
  6687. <type name="Message" c:type="SoupMessage*"/>
  6688. </instance-parameter>
  6689. <parameter name="status_code" transfer-ownership="none">
  6690. <doc xml:space="preserve">a 3xx status code</doc>
  6691. <type name="guint" c:type="guint"/>
  6692. </parameter>
  6693. <parameter name="redirect_uri" transfer-ownership="none">
  6694. <doc xml:space="preserve">the URI to redirect @msg to</doc>
  6695. <type name="utf8" c:type="const char*"/>
  6696. </parameter>
  6697. </parameters>
  6698. </method>
  6699. <method name="set_request" c:identifier="soup_message_set_request">
  6700. <doc xml:space="preserve">Convenience function to set the request body of a #SoupMessage. If
  6701. @content_type is %NULL, the request body must be empty as well.</doc>
  6702. <return-value transfer-ownership="none">
  6703. <type name="none" c:type="void"/>
  6704. </return-value>
  6705. <parameters>
  6706. <instance-parameter name="msg" transfer-ownership="none">
  6707. <doc xml:space="preserve">the message</doc>
  6708. <type name="Message" c:type="SoupMessage*"/>
  6709. </instance-parameter>
  6710. <parameter name="content_type"
  6711. transfer-ownership="none"
  6712. nullable="1"
  6713. allow-none="1">
  6714. <doc xml:space="preserve">MIME Content-Type of the body</doc>
  6715. <type name="utf8" c:type="const char*"/>
  6716. </parameter>
  6717. <parameter name="req_use" transfer-ownership="none">
  6718. <doc xml:space="preserve">a #SoupMemoryUse describing how to handle @req_body</doc>
  6719. <type name="MemoryUse" c:type="SoupMemoryUse"/>
  6720. </parameter>
  6721. <parameter name="req_body"
  6722. transfer-ownership="none"
  6723. nullable="1"
  6724. allow-none="1">
  6725. <doc xml:space="preserve">
  6726. a data buffer containing the body of the message request.</doc>
  6727. <array length="3" zero-terminated="0" c:type="char*">
  6728. <type name="guint8"/>
  6729. </array>
  6730. </parameter>
  6731. <parameter name="req_length" transfer-ownership="none">
  6732. <doc xml:space="preserve">the byte length of @req_body.</doc>
  6733. <type name="gsize" c:type="gsize"/>
  6734. </parameter>
  6735. </parameters>
  6736. </method>
  6737. <method name="set_response" c:identifier="soup_message_set_response">
  6738. <doc xml:space="preserve">Convenience function to set the response body of a #SoupMessage. If
  6739. @content_type is %NULL, the response body must be empty as well.</doc>
  6740. <return-value transfer-ownership="none">
  6741. <type name="none" c:type="void"/>
  6742. </return-value>
  6743. <parameters>
  6744. <instance-parameter name="msg" transfer-ownership="none">
  6745. <doc xml:space="preserve">the message</doc>
  6746. <type name="Message" c:type="SoupMessage*"/>
  6747. </instance-parameter>
  6748. <parameter name="content_type"
  6749. transfer-ownership="none"
  6750. nullable="1"
  6751. allow-none="1">
  6752. <doc xml:space="preserve">MIME Content-Type of the body</doc>
  6753. <type name="utf8" c:type="const char*"/>
  6754. </parameter>
  6755. <parameter name="resp_use" transfer-ownership="none">
  6756. <doc xml:space="preserve">a #SoupMemoryUse describing how to handle @resp_body</doc>
  6757. <type name="MemoryUse" c:type="SoupMemoryUse"/>
  6758. </parameter>
  6759. <parameter name="resp_body"
  6760. transfer-ownership="none"
  6761. nullable="1"
  6762. allow-none="1">
  6763. <doc xml:space="preserve">
  6764. a data buffer containing the body of the message response.</doc>
  6765. <array length="3" zero-terminated="0" c:type="char*">
  6766. <type name="guint8"/>
  6767. </array>
  6768. </parameter>
  6769. <parameter name="resp_length" transfer-ownership="none">
  6770. <doc xml:space="preserve">the byte length of @resp_body.</doc>
  6771. <type name="gsize" c:type="gsize"/>
  6772. </parameter>
  6773. </parameters>
  6774. </method>
  6775. <method name="set_status" c:identifier="soup_message_set_status">
  6776. <doc xml:space="preserve">Sets @msg's status code to @status_code. If @status_code is a
  6777. known value, it will also set @msg's reason_phrase.</doc>
  6778. <return-value transfer-ownership="none">
  6779. <type name="none" c:type="void"/>
  6780. </return-value>
  6781. <parameters>
  6782. <instance-parameter name="msg" transfer-ownership="none">
  6783. <doc xml:space="preserve">a #SoupMessage</doc>
  6784. <type name="Message" c:type="SoupMessage*"/>
  6785. </instance-parameter>
  6786. <parameter name="status_code" transfer-ownership="none">
  6787. <doc xml:space="preserve">an HTTP status code</doc>
  6788. <type name="guint" c:type="guint"/>
  6789. </parameter>
  6790. </parameters>
  6791. </method>
  6792. <method name="set_status_full"
  6793. c:identifier="soup_message_set_status_full">
  6794. <doc xml:space="preserve">Sets @msg's status code and reason phrase.</doc>
  6795. <return-value transfer-ownership="none">
  6796. <type name="none" c:type="void"/>
  6797. </return-value>
  6798. <parameters>
  6799. <instance-parameter name="msg" transfer-ownership="none">
  6800. <doc xml:space="preserve">a #SoupMessage</doc>
  6801. <type name="Message" c:type="SoupMessage*"/>
  6802. </instance-parameter>
  6803. <parameter name="status_code" transfer-ownership="none">
  6804. <doc xml:space="preserve">an HTTP status code</doc>
  6805. <type name="guint" c:type="guint"/>
  6806. </parameter>
  6807. <parameter name="reason_phrase" transfer-ownership="none">
  6808. <doc xml:space="preserve">a description of the status</doc>
  6809. <type name="utf8" c:type="const char*"/>
  6810. </parameter>
  6811. </parameters>
  6812. </method>
  6813. <method name="set_uri" c:identifier="soup_message_set_uri">
  6814. <doc xml:space="preserve">Sets @msg's URI to @uri. If @msg has already been sent and you want
  6815. to re-send it with the new URI, you need to call
  6816. soup_session_requeue_message().</doc>
  6817. <return-value transfer-ownership="none">
  6818. <type name="none" c:type="void"/>
  6819. </return-value>
  6820. <parameters>
  6821. <instance-parameter name="msg" transfer-ownership="none">
  6822. <doc xml:space="preserve">a #SoupMessage</doc>
  6823. <type name="Message" c:type="SoupMessage*"/>
  6824. </instance-parameter>
  6825. <parameter name="uri" transfer-ownership="none">
  6826. <doc xml:space="preserve">the new #SoupURI</doc>
  6827. <type name="URI" c:type="SoupURI*"/>
  6828. </parameter>
  6829. </parameters>
  6830. </method>
  6831. <method name="starting" c:identifier="soup_message_starting">
  6832. <return-value transfer-ownership="none">
  6833. <type name="none" c:type="void"/>
  6834. </return-value>
  6835. <parameters>
  6836. <instance-parameter name="msg" transfer-ownership="none">
  6837. <type name="Message" c:type="SoupMessage*"/>
  6838. </instance-parameter>
  6839. </parameters>
  6840. </method>
  6841. <method name="wrote_body" c:identifier="soup_message_wrote_body">
  6842. <return-value transfer-ownership="none">
  6843. <type name="none" c:type="void"/>
  6844. </return-value>
  6845. <parameters>
  6846. <instance-parameter name="msg" transfer-ownership="none">
  6847. <type name="Message" c:type="SoupMessage*"/>
  6848. </instance-parameter>
  6849. </parameters>
  6850. </method>
  6851. <method name="wrote_body_data"
  6852. c:identifier="soup_message_wrote_body_data">
  6853. <return-value transfer-ownership="none">
  6854. <type name="none" c:type="void"/>
  6855. </return-value>
  6856. <parameters>
  6857. <instance-parameter name="msg" transfer-ownership="none">
  6858. <type name="Message" c:type="SoupMessage*"/>
  6859. </instance-parameter>
  6860. <parameter name="chunk" transfer-ownership="none">
  6861. <type name="Buffer" c:type="SoupBuffer*"/>
  6862. </parameter>
  6863. </parameters>
  6864. </method>
  6865. <method name="wrote_chunk" c:identifier="soup_message_wrote_chunk">
  6866. <return-value transfer-ownership="none">
  6867. <type name="none" c:type="void"/>
  6868. </return-value>
  6869. <parameters>
  6870. <instance-parameter name="msg" transfer-ownership="none">
  6871. <type name="Message" c:type="SoupMessage*"/>
  6872. </instance-parameter>
  6873. </parameters>
  6874. </method>
  6875. <method name="wrote_headers" c:identifier="soup_message_wrote_headers">
  6876. <return-value transfer-ownership="none">
  6877. <type name="none" c:type="void"/>
  6878. </return-value>
  6879. <parameters>
  6880. <instance-parameter name="msg" transfer-ownership="none">
  6881. <type name="Message" c:type="SoupMessage*"/>
  6882. </instance-parameter>
  6883. </parameters>
  6884. </method>
  6885. <method name="wrote_informational"
  6886. c:identifier="soup_message_wrote_informational">
  6887. <return-value transfer-ownership="none">
  6888. <type name="none" c:type="void"/>
  6889. </return-value>
  6890. <parameters>
  6891. <instance-parameter name="msg" transfer-ownership="none">
  6892. <type name="Message" c:type="SoupMessage*"/>
  6893. </instance-parameter>
  6894. </parameters>
  6895. </method>
  6896. <property name="first-party"
  6897. version="2.30"
  6898. writable="1"
  6899. transfer-ownership="none">
  6900. <doc xml:space="preserve">The #SoupURI loaded in the application when the message was
  6901. queued.</doc>
  6902. <type name="URI"/>
  6903. </property>
  6904. <property name="flags" writable="1" transfer-ownership="none">
  6905. <type name="MessageFlags"/>
  6906. </property>
  6907. <property name="http-version" writable="1" transfer-ownership="none">
  6908. <type name="HTTPVersion"/>
  6909. </property>
  6910. <property name="method" writable="1" transfer-ownership="none">
  6911. <type name="utf8" c:type="gchar*"/>
  6912. </property>
  6913. <property name="priority" writable="1" transfer-ownership="none">
  6914. <type name="MessagePriority"/>
  6915. </property>
  6916. <property name="reason-phrase" writable="1" transfer-ownership="none">
  6917. <type name="utf8" c:type="gchar*"/>
  6918. </property>
  6919. <property name="request-body" transfer-ownership="none">
  6920. <type name="MessageBody"/>
  6921. </property>
  6922. <property name="request-body-data"
  6923. version="2.46"
  6924. transfer-ownership="none">
  6925. <doc xml:space="preserve">The message's HTTP request body, as a #GBytes.</doc>
  6926. <type name="GLib.Bytes"/>
  6927. </property>
  6928. <property name="request-headers" transfer-ownership="none">
  6929. <type name="MessageHeaders"/>
  6930. </property>
  6931. <property name="response-body" transfer-ownership="none">
  6932. <type name="MessageBody"/>
  6933. </property>
  6934. <property name="response-body-data"
  6935. version="2.46"
  6936. transfer-ownership="none">
  6937. <doc xml:space="preserve">The message's HTTP response body, as a #GBytes.</doc>
  6938. <type name="GLib.Bytes"/>
  6939. </property>
  6940. <property name="response-headers" transfer-ownership="none">
  6941. <type name="MessageHeaders"/>
  6942. </property>
  6943. <property name="server-side"
  6944. writable="1"
  6945. construct-only="1"
  6946. transfer-ownership="none">
  6947. <type name="gboolean" c:type="gboolean"/>
  6948. </property>
  6949. <property name="status-code" writable="1" transfer-ownership="none">
  6950. <type name="guint" c:type="guint"/>
  6951. </property>
  6952. <property name="tls-certificate"
  6953. version="2.34"
  6954. writable="1"
  6955. transfer-ownership="none">
  6956. <doc xml:space="preserve">The #GTlsCertificate associated with the message</doc>
  6957. <type name="Gio.TlsCertificate"/>
  6958. </property>
  6959. <property name="tls-errors"
  6960. version="2.34"
  6961. writable="1"
  6962. transfer-ownership="none">
  6963. <doc xml:space="preserve">The verification errors on #SoupMessage:tls-certificate</doc>
  6964. <type name="Gio.TlsCertificateFlags"/>
  6965. </property>
  6966. <property name="uri" writable="1" transfer-ownership="none">
  6967. <type name="URI"/>
  6968. </property>
  6969. <field name="parent">
  6970. <type name="GObject.Object" c:type="GObject"/>
  6971. </field>
  6972. <field name="method">
  6973. <doc xml:space="preserve">the HTTP method</doc>
  6974. <type name="utf8" c:type="const char*"/>
  6975. </field>
  6976. <field name="status_code">
  6977. <doc xml:space="preserve">the HTTP status code</doc>
  6978. <type name="guint" c:type="guint"/>
  6979. </field>
  6980. <field name="reason_phrase">
  6981. <doc xml:space="preserve">the status phrase associated with @status_code</doc>
  6982. <type name="utf8" c:type="char*"/>
  6983. </field>
  6984. <field name="request_body">
  6985. <doc xml:space="preserve">the request body</doc>
  6986. <type name="MessageBody" c:type="SoupMessageBody*"/>
  6987. </field>
  6988. <field name="request_headers">
  6989. <doc xml:space="preserve">the request headers</doc>
  6990. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  6991. </field>
  6992. <field name="response_body">
  6993. <doc xml:space="preserve">the response body</doc>
  6994. <type name="MessageBody" c:type="SoupMessageBody*"/>
  6995. </field>
  6996. <field name="response_headers">
  6997. <doc xml:space="preserve">the response headers</doc>
  6998. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  6999. </field>
  7000. <glib:signal name="content-sniffed" when="first" version="2.28">
  7001. <doc xml:space="preserve">This signal is emitted after #SoupMessage::got-headers, and
  7002. before the first #SoupMessage::got-chunk. If content
  7003. sniffing is disabled, or no content sniffing will be
  7004. performed, due to the sniffer deciding to trust the
  7005. Content-Type sent by the server, this signal is emitted
  7006. immediately after #SoupMessage::got-headers, and @type is
  7007. %NULL.
  7008. If the #SoupContentSniffer feature is enabled, and the
  7009. sniffer decided to perform sniffing, the first
  7010. #SoupMessage::got-chunk emission may be delayed, so that the
  7011. sniffer has enough data to correctly sniff the content. It
  7012. notified the library user that the content has been
  7013. sniffed, and allows it to change the header contents in the
  7014. message, if desired.
  7015. After this signal is emitted, the data that was spooled so
  7016. that sniffing could be done is delivered on the first
  7017. emission of #SoupMessage::got-chunk.</doc>
  7018. <return-value transfer-ownership="none">
  7019. <type name="none" c:type="void"/>
  7020. </return-value>
  7021. <parameters>
  7022. <parameter name="type" transfer-ownership="none">
  7023. <doc xml:space="preserve">the content type that we got from sniffing</doc>
  7024. <type name="utf8" c:type="gchar*"/>
  7025. </parameter>
  7026. <parameter name="params" transfer-ownership="none">
  7027. <doc xml:space="preserve">a #GHashTable with the parameters</doc>
  7028. <type name="GLib.HashTable">
  7029. <type name="utf8"/>
  7030. <type name="utf8"/>
  7031. </type>
  7032. </parameter>
  7033. </parameters>
  7034. </glib:signal>
  7035. <glib:signal name="finished" when="first">
  7036. <doc xml:space="preserve">Emitted when all HTTP processing is finished for a message.
  7037. (After #SoupMessage::got_body for client-side messages, or
  7038. after #SoupMessage::wrote_body for server-side messages.)</doc>
  7039. <return-value transfer-ownership="none">
  7040. <type name="none" c:type="void"/>
  7041. </return-value>
  7042. </glib:signal>
  7043. <glib:signal name="got-body" when="first">
  7044. <doc xml:space="preserve">Emitted after receiving the complete message body. (For a
  7045. server-side message, this means it has received the request
  7046. body. For a client-side message, this means it has received
  7047. the response body and is nearly done with the message.)
  7048. See also soup_message_add_header_handler() and
  7049. soup_message_add_status_code_handler(), which can be used
  7050. to connect to a subset of emissions of this signal.</doc>
  7051. <return-value transfer-ownership="none">
  7052. <type name="none" c:type="void"/>
  7053. </return-value>
  7054. </glib:signal>
  7055. <glib:signal name="got-chunk" when="first">
  7056. <doc xml:space="preserve">Emitted after receiving a chunk of a message body. Note
  7057. that "chunk" in this context means any subpiece of the
  7058. body, not necessarily the specific HTTP 1.1 chunks sent by
  7059. the other side.
  7060. If you cancel or requeue @msg while processing this signal,
  7061. then the current HTTP I/O will be stopped after this signal
  7062. emission finished, and @msg's connection will be closed.</doc>
  7063. <return-value transfer-ownership="none">
  7064. <type name="none" c:type="void"/>
  7065. </return-value>
  7066. <parameters>
  7067. <parameter name="chunk" transfer-ownership="none">
  7068. <doc xml:space="preserve">the just-read chunk</doc>
  7069. <type name="Buffer"/>
  7070. </parameter>
  7071. </parameters>
  7072. </glib:signal>
  7073. <glib:signal name="got-headers" when="first">
  7074. <doc xml:space="preserve">Emitted after receiving all message headers for a message.
  7075. (For a client-side message, this is after receiving the
  7076. Status-Line and response headers; for a server-side
  7077. message, it is after receiving the Request-Line and request
  7078. headers.)
  7079. See also soup_message_add_header_handler() and
  7080. soup_message_add_status_code_handler(), which can be used
  7081. to connect to a subset of emissions of this signal.
  7082. If you cancel or requeue @msg while processing this signal,
  7083. then the current HTTP I/O will be stopped after this signal
  7084. emission finished, and @msg's connection will be closed.
  7085. (If you need to requeue a message--eg, after handling
  7086. authentication or redirection--it is usually better to
  7087. requeue it from a #SoupMessage::got_body handler rather
  7088. than a #SoupMessage::got_headers handler, so that the
  7089. existing HTTP connection can be reused.)</doc>
  7090. <return-value transfer-ownership="none">
  7091. <type name="none" c:type="void"/>
  7092. </return-value>
  7093. </glib:signal>
  7094. <glib:signal name="got-informational" when="first">
  7095. <doc xml:space="preserve">Emitted after receiving a 1xx (Informational) response for
  7096. a (client-side) message. The response_headers will be
  7097. filled in with the headers associated with the
  7098. informational response; however, those header values will
  7099. be erased after this signal is done.
  7100. If you cancel or requeue @msg while processing this signal,
  7101. then the current HTTP I/O will be stopped after this signal
  7102. emission finished, and @msg's connection will be closed.</doc>
  7103. <return-value transfer-ownership="none">
  7104. <type name="none" c:type="void"/>
  7105. </return-value>
  7106. </glib:signal>
  7107. <glib:signal name="network-event" when="first" version="2.38">
  7108. <doc xml:space="preserve">Emitted to indicate that some network-related event
  7109. related to @msg has occurred. This essentially proxies the
  7110. #GSocketClient::event signal, but only for events that
  7111. occur while @msg "owns" the connection; if @msg is sent on
  7112. an existing persistent connection, then this signal will
  7113. not be emitted. (If you want to force the message to be
  7114. sent on a new connection, set the
  7115. %SOUP_MESSAGE_NEW_CONNECTION flag on it.)
  7116. See #GSocketClient::event for more information on what
  7117. the different values of @event correspond to, and what
  7118. @connection will be in each case.</doc>
  7119. <return-value transfer-ownership="none">
  7120. <type name="none" c:type="void"/>
  7121. </return-value>
  7122. <parameters>
  7123. <parameter name="event" transfer-ownership="none">
  7124. <doc xml:space="preserve">the network event</doc>
  7125. <type name="Gio.SocketClientEvent"/>
  7126. </parameter>
  7127. <parameter name="connection" transfer-ownership="none">
  7128. <doc xml:space="preserve">the current state of the network connection</doc>
  7129. <type name="Gio.IOStream"/>
  7130. </parameter>
  7131. </parameters>
  7132. </glib:signal>
  7133. <glib:signal name="restarted" when="first">
  7134. <doc xml:space="preserve">Emitted when a request that was already sent once is now
  7135. being sent again (eg, because the first attempt received a
  7136. redirection response, or because we needed to use
  7137. authentication).</doc>
  7138. <return-value transfer-ownership="none">
  7139. <type name="none" c:type="void"/>
  7140. </return-value>
  7141. </glib:signal>
  7142. <glib:signal name="starting" when="first" version="2.50">
  7143. <doc xml:space="preserve">Emitted just before a message is sent.</doc>
  7144. <return-value transfer-ownership="none">
  7145. <type name="none" c:type="void"/>
  7146. </return-value>
  7147. </glib:signal>
  7148. <glib:signal name="wrote-body" when="first">
  7149. <doc xml:space="preserve">Emitted immediately after writing the complete body for a
  7150. message. (For a client-side message, this means that
  7151. libsoup is done writing and is now waiting for the response
  7152. from the server. For a server-side message, this means that
  7153. libsoup has finished writing the response and is nearly
  7154. done with the message.)</doc>
  7155. <return-value transfer-ownership="none">
  7156. <type name="none" c:type="void"/>
  7157. </return-value>
  7158. </glib:signal>
  7159. <glib:signal name="wrote-body-data" when="first" version="2.24">
  7160. <doc xml:space="preserve">Emitted immediately after writing a portion of the message
  7161. body to the network.
  7162. Unlike #SoupMessage::wrote_chunk, this is emitted after
  7163. every successful write() call, not only after finishing a
  7164. complete "chunk".</doc>
  7165. <return-value transfer-ownership="none">
  7166. <type name="none" c:type="void"/>
  7167. </return-value>
  7168. <parameters>
  7169. <parameter name="chunk" transfer-ownership="none">
  7170. <doc xml:space="preserve">the data written</doc>
  7171. <type name="Buffer"/>
  7172. </parameter>
  7173. </parameters>
  7174. </glib:signal>
  7175. <glib:signal name="wrote-chunk" when="first">
  7176. <doc xml:space="preserve">Emitted immediately after writing a body chunk for a message.
  7177. Note that this signal is not parallel to
  7178. #SoupMessage::got_chunk; it is emitted only when a complete
  7179. chunk (added with soup_message_body_append() or
  7180. soup_message_body_append_buffer()) has been written. To get
  7181. more useful continuous progress information, use
  7182. #SoupMessage::wrote_body_data.</doc>
  7183. <return-value transfer-ownership="none">
  7184. <type name="none" c:type="void"/>
  7185. </return-value>
  7186. </glib:signal>
  7187. <glib:signal name="wrote-headers" when="first">
  7188. <doc xml:space="preserve">Emitted immediately after writing the headers for a
  7189. message. (For a client-side message, this is after writing
  7190. the request headers; for a server-side message, it is after
  7191. writing the response headers.)</doc>
  7192. <return-value transfer-ownership="none">
  7193. <type name="none" c:type="void"/>
  7194. </return-value>
  7195. </glib:signal>
  7196. <glib:signal name="wrote-informational" when="first">
  7197. <doc xml:space="preserve">Emitted immediately after writing a 1xx (Informational)
  7198. response for a (server-side) message.</doc>
  7199. <return-value transfer-ownership="none">
  7200. <type name="none" c:type="void"/>
  7201. </return-value>
  7202. </glib:signal>
  7203. </class>
  7204. <record name="MessageBody"
  7205. c:type="SoupMessageBody"
  7206. glib:type-name="SoupMessageBody"
  7207. glib:get-type="soup_message_body_get_type"
  7208. c:symbol-prefix="message_body">
  7209. <doc xml:space="preserve">A #SoupMessage request or response body.
  7210. Note that while @length always reflects the full length of the
  7211. message body, @data is normally %NULL, and will only be filled in
  7212. after soup_message_body_flatten() is called. For client-side
  7213. messages, this automatically happens for the response body after it
  7214. has been fully read, unless you set the
  7215. %SOUP_MESSAGE_OVERWRITE_CHUNKS flags. Likewise, for server-side
  7216. messages, the request body is automatically filled in after being
  7217. read.
  7218. As an added bonus, when @data is filled in, it is always terminated
  7219. with a '\0' byte (which is not reflected in @length).</doc>
  7220. <field name="data" writable="1">
  7221. <doc xml:space="preserve">the data</doc>
  7222. <type name="utf8" c:type="const char*"/>
  7223. </field>
  7224. <field name="length" writable="1">
  7225. <doc xml:space="preserve">length of @data</doc>
  7226. <type name="gint64" c:type="goffset"/>
  7227. </field>
  7228. <constructor name="new" c:identifier="soup_message_body_new">
  7229. <doc xml:space="preserve">Creates a new #SoupMessageBody. #SoupMessage uses this internally; you
  7230. will not normally need to call it yourself.</doc>
  7231. <return-value transfer-ownership="full">
  7232. <doc xml:space="preserve">a new #SoupMessageBody.</doc>
  7233. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7234. </return-value>
  7235. </constructor>
  7236. <method name="append"
  7237. c:identifier="soup_message_body_append"
  7238. shadowed-by="append_take">
  7239. <doc xml:space="preserve">Appends @length bytes from @data to @body according to @use.</doc>
  7240. <return-value transfer-ownership="none">
  7241. <type name="none" c:type="void"/>
  7242. </return-value>
  7243. <parameters>
  7244. <instance-parameter name="body" transfer-ownership="none">
  7245. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7246. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7247. </instance-parameter>
  7248. <parameter name="use" transfer-ownership="none">
  7249. <doc xml:space="preserve">how to use @data</doc>
  7250. <type name="MemoryUse" c:type="SoupMemoryUse"/>
  7251. </parameter>
  7252. <parameter name="data" transfer-ownership="none">
  7253. <doc xml:space="preserve">data to append</doc>
  7254. <array length="2" zero-terminated="0" c:type="gconstpointer">
  7255. <type name="guint8"/>
  7256. </array>
  7257. </parameter>
  7258. <parameter name="length" transfer-ownership="none">
  7259. <doc xml:space="preserve">length of @data</doc>
  7260. <type name="gsize" c:type="gsize"/>
  7261. </parameter>
  7262. </parameters>
  7263. </method>
  7264. <method name="append_buffer"
  7265. c:identifier="soup_message_body_append_buffer">
  7266. <doc xml:space="preserve">Appends the data from @buffer to @body. (#SoupMessageBody uses
  7267. #SoupBuffers internally, so this is normally a constant-time
  7268. operation that doesn't actually require copying the data in
  7269. @buffer.)</doc>
  7270. <return-value transfer-ownership="none">
  7271. <type name="none" c:type="void"/>
  7272. </return-value>
  7273. <parameters>
  7274. <instance-parameter name="body" transfer-ownership="none">
  7275. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7276. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7277. </instance-parameter>
  7278. <parameter name="buffer" transfer-ownership="none">
  7279. <doc xml:space="preserve">a #SoupBuffer</doc>
  7280. <type name="Buffer" c:type="SoupBuffer*"/>
  7281. </parameter>
  7282. </parameters>
  7283. </method>
  7284. <method name="append_take"
  7285. c:identifier="soup_message_body_append_take"
  7286. shadows="append"
  7287. version="2.32">
  7288. <doc xml:space="preserve">Appends @length bytes from @data to @body.
  7289. This function is exactly equivalent to soup_message_body_append()
  7290. with %SOUP_MEMORY_TAKE as second argument; it exists mainly for
  7291. convenience and simplifying language bindings.</doc>
  7292. <return-value transfer-ownership="none">
  7293. <type name="none" c:type="void"/>
  7294. </return-value>
  7295. <parameters>
  7296. <instance-parameter name="body" transfer-ownership="none">
  7297. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7298. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7299. </instance-parameter>
  7300. <parameter name="data" transfer-ownership="full">
  7301. <doc xml:space="preserve">data to append</doc>
  7302. <array length="1" zero-terminated="0" c:type="guchar*">
  7303. <type name="guint8" c:type="guchar"/>
  7304. </array>
  7305. </parameter>
  7306. <parameter name="length" transfer-ownership="none">
  7307. <doc xml:space="preserve">length of @data</doc>
  7308. <type name="gsize" c:type="gsize"/>
  7309. </parameter>
  7310. </parameters>
  7311. </method>
  7312. <method name="complete" c:identifier="soup_message_body_complete">
  7313. <doc xml:space="preserve">Tags @body as being complete; Call this when using chunked encoding
  7314. after you have appended the last chunk.</doc>
  7315. <return-value transfer-ownership="none">
  7316. <type name="none" c:type="void"/>
  7317. </return-value>
  7318. <parameters>
  7319. <instance-parameter name="body" transfer-ownership="none">
  7320. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7321. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7322. </instance-parameter>
  7323. </parameters>
  7324. </method>
  7325. <method name="flatten" c:identifier="soup_message_body_flatten">
  7326. <doc xml:space="preserve">Fills in @body's data field with a buffer containing all of the
  7327. data in @body (plus an additional '\0' byte not counted by @body's
  7328. length field).</doc>
  7329. <return-value transfer-ownership="full">
  7330. <doc xml:space="preserve">a #SoupBuffer containing the same data as @body.
  7331. (You must free this buffer if you do not want it.)</doc>
  7332. <type name="Buffer" c:type="SoupBuffer*"/>
  7333. </return-value>
  7334. <parameters>
  7335. <instance-parameter name="body" transfer-ownership="none">
  7336. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7337. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7338. </instance-parameter>
  7339. </parameters>
  7340. </method>
  7341. <method name="free" c:identifier="soup_message_body_free">
  7342. <doc xml:space="preserve">Frees @body. You will not normally need to use this, as
  7343. #SoupMessage frees its associated message bodies automatically.</doc>
  7344. <return-value transfer-ownership="none">
  7345. <type name="none" c:type="void"/>
  7346. </return-value>
  7347. <parameters>
  7348. <instance-parameter name="body" transfer-ownership="none">
  7349. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7350. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7351. </instance-parameter>
  7352. </parameters>
  7353. </method>
  7354. <method name="get_accumulate"
  7355. c:identifier="soup_message_body_get_accumulate"
  7356. version="2.24">
  7357. <doc xml:space="preserve">Gets the accumulate flag on @body; see
  7358. soup_message_body_set_accumulate() for details.</doc>
  7359. <return-value transfer-ownership="none">
  7360. <doc xml:space="preserve">the accumulate flag for @body.</doc>
  7361. <type name="gboolean" c:type="gboolean"/>
  7362. </return-value>
  7363. <parameters>
  7364. <instance-parameter name="body" transfer-ownership="none">
  7365. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7366. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7367. </instance-parameter>
  7368. </parameters>
  7369. </method>
  7370. <method name="get_chunk" c:identifier="soup_message_body_get_chunk">
  7371. <doc xml:space="preserve">Gets a #SoupBuffer containing data from @body starting at @offset.
  7372. The size of the returned chunk is unspecified. You can iterate
  7373. through the entire body by first calling
  7374. soup_message_body_get_chunk() with an offset of 0, and then on each
  7375. successive call, increment the offset by the length of the
  7376. previously-returned chunk.
  7377. If @offset is greater than or equal to the total length of @body,
  7378. then the return value depends on whether or not
  7379. soup_message_body_complete() has been called or not; if it has,
  7380. then soup_message_body_get_chunk() will return a 0-length chunk
  7381. (indicating the end of @body). If it has not, then
  7382. soup_message_body_get_chunk() will return %NULL (indicating that
  7383. @body may still potentially have more data, but that data is not
  7384. currently available).</doc>
  7385. <return-value transfer-ownership="full" nullable="1">
  7386. <doc xml:space="preserve">a #SoupBuffer, or %NULL.</doc>
  7387. <type name="Buffer" c:type="SoupBuffer*"/>
  7388. </return-value>
  7389. <parameters>
  7390. <instance-parameter name="body" transfer-ownership="none">
  7391. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7392. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7393. </instance-parameter>
  7394. <parameter name="offset" transfer-ownership="none">
  7395. <doc xml:space="preserve">an offset</doc>
  7396. <type name="gint64" c:type="goffset"/>
  7397. </parameter>
  7398. </parameters>
  7399. </method>
  7400. <method name="got_chunk"
  7401. c:identifier="soup_message_body_got_chunk"
  7402. version="2.24">
  7403. <doc xml:space="preserve">Handles the #SoupMessageBody part of receiving a chunk of data from
  7404. the network. Normally this means appending @chunk to @body, exactly
  7405. as with soup_message_body_append_buffer(), but if you have set
  7406. @body's accumulate flag to %FALSE, then that will not happen.
  7407. This is a low-level method which you should not normally need to
  7408. use.</doc>
  7409. <return-value transfer-ownership="none">
  7410. <type name="none" c:type="void"/>
  7411. </return-value>
  7412. <parameters>
  7413. <instance-parameter name="body" transfer-ownership="none">
  7414. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7415. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7416. </instance-parameter>
  7417. <parameter name="chunk" transfer-ownership="none">
  7418. <doc xml:space="preserve">a #SoupBuffer received from the network</doc>
  7419. <type name="Buffer" c:type="SoupBuffer*"/>
  7420. </parameter>
  7421. </parameters>
  7422. </method>
  7423. <method name="set_accumulate"
  7424. c:identifier="soup_message_body_set_accumulate"
  7425. version="2.24">
  7426. <doc xml:space="preserve">Sets or clears the accumulate flag on @body. (The default value is
  7427. %TRUE.) If set to %FALSE, @body's %data field will not be filled in
  7428. after the body is fully sent/received, and the chunks that make up
  7429. @body may be discarded when they are no longer needed.
  7430. In particular, if you set this flag to %FALSE on an "incoming"
  7431. message body (that is, the #SoupMessage:response_body of a
  7432. client-side message, or #SoupMessage:request_body of a server-side
  7433. message), this will cause each chunk of the body to be discarded
  7434. after its corresponding #SoupMessage::got_chunk signal is emitted.
  7435. (This is equivalent to setting the deprecated
  7436. %SOUP_MESSAGE_OVERWRITE_CHUNKS flag on the message.)
  7437. If you set this flag to %FALSE on the #SoupMessage:response_body of
  7438. a server-side message, it will cause each chunk of the body to be
  7439. discarded after its corresponding #SoupMessage::wrote_chunk signal
  7440. is emitted.
  7441. If you set the flag to %FALSE on the #SoupMessage:request_body of a
  7442. client-side message, it will block the accumulation of chunks into
  7443. @body's %data field, but it will not normally cause the chunks to
  7444. be discarded after being written like in the server-side
  7445. #SoupMessage:response_body case, because the request body needs to
  7446. be kept around in case the request needs to be sent a second time
  7447. due to redirection or authentication. However, if you set the
  7448. %SOUP_MESSAGE_CAN_REBUILD flag on the message, then the chunks will
  7449. be discarded, and you will be responsible for recreating the
  7450. request body after the #SoupMessage::restarted signal is emitted.</doc>
  7451. <return-value transfer-ownership="none">
  7452. <type name="none" c:type="void"/>
  7453. </return-value>
  7454. <parameters>
  7455. <instance-parameter name="body" transfer-ownership="none">
  7456. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7457. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7458. </instance-parameter>
  7459. <parameter name="accumulate" transfer-ownership="none">
  7460. <doc xml:space="preserve">whether or not to accumulate body chunks in @body</doc>
  7461. <type name="gboolean" c:type="gboolean"/>
  7462. </parameter>
  7463. </parameters>
  7464. </method>
  7465. <method name="truncate" c:identifier="soup_message_body_truncate">
  7466. <doc xml:space="preserve">Deletes all of the data in @body.</doc>
  7467. <return-value transfer-ownership="none">
  7468. <type name="none" c:type="void"/>
  7469. </return-value>
  7470. <parameters>
  7471. <instance-parameter name="body" transfer-ownership="none">
  7472. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7473. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7474. </instance-parameter>
  7475. </parameters>
  7476. </method>
  7477. <method name="wrote_chunk"
  7478. c:identifier="soup_message_body_wrote_chunk"
  7479. version="2.24">
  7480. <doc xml:space="preserve">Handles the #SoupMessageBody part of writing a chunk of data to the
  7481. network. Normally this is a no-op, but if you have set @body's
  7482. accumulate flag to %FALSE, then this will cause @chunk to be
  7483. discarded to free up memory.
  7484. This is a low-level method which you should not need to use, and
  7485. there are further restrictions on its proper use which are not
  7486. documented here.</doc>
  7487. <return-value transfer-ownership="none">
  7488. <type name="none" c:type="void"/>
  7489. </return-value>
  7490. <parameters>
  7491. <instance-parameter name="body" transfer-ownership="none">
  7492. <doc xml:space="preserve">a #SoupMessageBody</doc>
  7493. <type name="MessageBody" c:type="SoupMessageBody*"/>
  7494. </instance-parameter>
  7495. <parameter name="chunk" transfer-ownership="none">
  7496. <doc xml:space="preserve">a #SoupBuffer returned from soup_message_body_get_chunk()</doc>
  7497. <type name="Buffer" c:type="SoupBuffer*"/>
  7498. </parameter>
  7499. </parameters>
  7500. </method>
  7501. </record>
  7502. <record name="MessageClass"
  7503. c:type="SoupMessageClass"
  7504. glib:is-gtype-struct-for="Message">
  7505. <field name="parent_class">
  7506. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  7507. </field>
  7508. <field name="wrote_informational">
  7509. <callback name="wrote_informational">
  7510. <return-value transfer-ownership="none">
  7511. <type name="none" c:type="void"/>
  7512. </return-value>
  7513. <parameters>
  7514. <parameter name="msg" transfer-ownership="none">
  7515. <type name="Message" c:type="SoupMessage*"/>
  7516. </parameter>
  7517. </parameters>
  7518. </callback>
  7519. </field>
  7520. <field name="wrote_headers">
  7521. <callback name="wrote_headers">
  7522. <return-value transfer-ownership="none">
  7523. <type name="none" c:type="void"/>
  7524. </return-value>
  7525. <parameters>
  7526. <parameter name="msg" transfer-ownership="none">
  7527. <type name="Message" c:type="SoupMessage*"/>
  7528. </parameter>
  7529. </parameters>
  7530. </callback>
  7531. </field>
  7532. <field name="wrote_chunk">
  7533. <callback name="wrote_chunk">
  7534. <return-value transfer-ownership="none">
  7535. <type name="none" c:type="void"/>
  7536. </return-value>
  7537. <parameters>
  7538. <parameter name="msg" transfer-ownership="none">
  7539. <type name="Message" c:type="SoupMessage*"/>
  7540. </parameter>
  7541. </parameters>
  7542. </callback>
  7543. </field>
  7544. <field name="wrote_body">
  7545. <callback name="wrote_body">
  7546. <return-value transfer-ownership="none">
  7547. <type name="none" c:type="void"/>
  7548. </return-value>
  7549. <parameters>
  7550. <parameter name="msg" transfer-ownership="none">
  7551. <type name="Message" c:type="SoupMessage*"/>
  7552. </parameter>
  7553. </parameters>
  7554. </callback>
  7555. </field>
  7556. <field name="got_informational">
  7557. <callback name="got_informational">
  7558. <return-value transfer-ownership="none">
  7559. <type name="none" c:type="void"/>
  7560. </return-value>
  7561. <parameters>
  7562. <parameter name="msg" transfer-ownership="none">
  7563. <type name="Message" c:type="SoupMessage*"/>
  7564. </parameter>
  7565. </parameters>
  7566. </callback>
  7567. </field>
  7568. <field name="got_headers">
  7569. <callback name="got_headers">
  7570. <return-value transfer-ownership="none">
  7571. <type name="none" c:type="void"/>
  7572. </return-value>
  7573. <parameters>
  7574. <parameter name="msg" transfer-ownership="none">
  7575. <type name="Message" c:type="SoupMessage*"/>
  7576. </parameter>
  7577. </parameters>
  7578. </callback>
  7579. </field>
  7580. <field name="got_chunk">
  7581. <callback name="got_chunk">
  7582. <return-value transfer-ownership="none">
  7583. <type name="none" c:type="void"/>
  7584. </return-value>
  7585. <parameters>
  7586. <parameter name="msg" transfer-ownership="none">
  7587. <type name="Message" c:type="SoupMessage*"/>
  7588. </parameter>
  7589. <parameter name="chunk" transfer-ownership="none">
  7590. <type name="Buffer" c:type="SoupBuffer*"/>
  7591. </parameter>
  7592. </parameters>
  7593. </callback>
  7594. </field>
  7595. <field name="got_body">
  7596. <callback name="got_body">
  7597. <return-value transfer-ownership="none">
  7598. <type name="none" c:type="void"/>
  7599. </return-value>
  7600. <parameters>
  7601. <parameter name="msg" transfer-ownership="none">
  7602. <type name="Message" c:type="SoupMessage*"/>
  7603. </parameter>
  7604. </parameters>
  7605. </callback>
  7606. </field>
  7607. <field name="restarted">
  7608. <callback name="restarted">
  7609. <return-value transfer-ownership="none">
  7610. <type name="none" c:type="void"/>
  7611. </return-value>
  7612. <parameters>
  7613. <parameter name="msg" transfer-ownership="none">
  7614. <type name="Message" c:type="SoupMessage*"/>
  7615. </parameter>
  7616. </parameters>
  7617. </callback>
  7618. </field>
  7619. <field name="finished">
  7620. <callback name="finished">
  7621. <return-value transfer-ownership="none">
  7622. <type name="none" c:type="void"/>
  7623. </return-value>
  7624. <parameters>
  7625. <parameter name="msg" transfer-ownership="none">
  7626. <type name="Message" c:type="SoupMessage*"/>
  7627. </parameter>
  7628. </parameters>
  7629. </callback>
  7630. </field>
  7631. <field name="starting">
  7632. <callback name="starting">
  7633. <return-value transfer-ownership="none">
  7634. <type name="none" c:type="void"/>
  7635. </return-value>
  7636. <parameters>
  7637. <parameter name="msg" transfer-ownership="none">
  7638. <type name="Message" c:type="SoupMessage*"/>
  7639. </parameter>
  7640. </parameters>
  7641. </callback>
  7642. </field>
  7643. <field name="_libsoup_reserved1" introspectable="0">
  7644. <callback name="_libsoup_reserved1">
  7645. <return-value transfer-ownership="none">
  7646. <type name="none" c:type="void"/>
  7647. </return-value>
  7648. </callback>
  7649. </field>
  7650. <field name="_libsoup_reserved2" introspectable="0">
  7651. <callback name="_libsoup_reserved2">
  7652. <return-value transfer-ownership="none">
  7653. <type name="none" c:type="void"/>
  7654. </return-value>
  7655. </callback>
  7656. </field>
  7657. <field name="_libsoup_reserved3" introspectable="0">
  7658. <callback name="_libsoup_reserved3">
  7659. <return-value transfer-ownership="none">
  7660. <type name="none" c:type="void"/>
  7661. </return-value>
  7662. </callback>
  7663. </field>
  7664. </record>
  7665. <bitfield name="MessageFlags"
  7666. glib:type-name="SoupMessageFlags"
  7667. glib:get-type="soup_message_flags_get_type"
  7668. c:type="SoupMessageFlags">
  7669. <doc xml:space="preserve">Various flags that can be set on a #SoupMessage to alter its
  7670. behavior.</doc>
  7671. <member name="no_redirect"
  7672. value="2"
  7673. c:identifier="SOUP_MESSAGE_NO_REDIRECT"
  7674. glib:nick="no-redirect">
  7675. <doc xml:space="preserve">The session should not follow redirect
  7676. (3xx) responses received by this message.</doc>
  7677. </member>
  7678. <member name="can_rebuild"
  7679. value="4"
  7680. c:identifier="SOUP_MESSAGE_CAN_REBUILD"
  7681. glib:nick="can-rebuild">
  7682. <doc xml:space="preserve">The caller will rebuild the request
  7683. body if the message is restarted; see
  7684. soup_message_body_set_accumulate() for more details.</doc>
  7685. </member>
  7686. <member name="overwrite_chunks"
  7687. value="8"
  7688. c:identifier="SOUP_MESSAGE_OVERWRITE_CHUNKS"
  7689. glib:nick="overwrite-chunks">
  7690. <doc xml:space="preserve">Deprecated: equivalent to calling
  7691. soup_message_body_set_accumulate() on the incoming message body
  7692. (ie, #SoupMessage:response_body for a client-side request),
  7693. passing %FALSE.</doc>
  7694. </member>
  7695. <member name="content_decoded"
  7696. value="16"
  7697. c:identifier="SOUP_MESSAGE_CONTENT_DECODED"
  7698. glib:nick="content-decoded">
  7699. <doc xml:space="preserve">Set by #SoupContentDecoder to
  7700. indicate that it has removed the Content-Encoding on a message (and
  7701. so headers such as Content-Length may no longer accurately describe
  7702. the body).</doc>
  7703. </member>
  7704. <member name="certificate_trusted"
  7705. value="32"
  7706. c:identifier="SOUP_MESSAGE_CERTIFICATE_TRUSTED"
  7707. glib:nick="certificate-trusted">
  7708. <doc xml:space="preserve">if set after an https response
  7709. has been received, indicates that the server's SSL certificate is
  7710. trusted according to the session's CA.</doc>
  7711. </member>
  7712. <member name="new_connection"
  7713. value="64"
  7714. c:identifier="SOUP_MESSAGE_NEW_CONNECTION"
  7715. glib:nick="new-connection">
  7716. <doc xml:space="preserve">Requests that the message should be
  7717. sent on a newly-created connection, not reusing an existing
  7718. persistent connection. Note that messages with non-idempotent
  7719. #SoupMessage:method&lt;!-- --&gt;s behave this way by default, unless
  7720. #SOUP_MESSAGE_IDEMPOTENT is set.</doc>
  7721. </member>
  7722. <member name="idempotent"
  7723. value="128"
  7724. c:identifier="SOUP_MESSAGE_IDEMPOTENT"
  7725. glib:nick="idempotent">
  7726. <doc xml:space="preserve">The message is considered idempotent,
  7727. regardless its #SoupMessage:method, and allows reuse of existing
  7728. idle connections, instead of always requiring a new one, unless
  7729. #SOUP_MESSAGE_NEW_CONNECTION is set.</doc>
  7730. </member>
  7731. <member name="ignore_connection_limits"
  7732. value="256"
  7733. c:identifier="SOUP_MESSAGE_IGNORE_CONNECTION_LIMITS"
  7734. glib:nick="ignore-connection-limits">
  7735. <doc xml:space="preserve">Request that a new connection is
  7736. created for the message if there aren't idle connections available
  7737. and it's not possible to create new connections due to any of the
  7738. connection limits has been reached. If a dedicated connection is
  7739. eventually created for this message, it will be dropped when the
  7740. message finishes. Since 2.50</doc>
  7741. </member>
  7742. </bitfield>
  7743. <record name="MessageHeaders"
  7744. c:type="SoupMessageHeaders"
  7745. glib:type-name="SoupMessageHeaders"
  7746. glib:get-type="soup_message_headers_get_type"
  7747. c:symbol-prefix="message_headers">
  7748. <doc xml:space="preserve">The HTTP message headers associated with a request or response.</doc>
  7749. <constructor name="new" c:identifier="soup_message_headers_new">
  7750. <doc xml:space="preserve">Creates a #SoupMessageHeaders. (#SoupMessage does this
  7751. automatically for its own headers. You would only need to use this
  7752. method if you are manually parsing or generating message headers.)</doc>
  7753. <return-value transfer-ownership="full">
  7754. <doc xml:space="preserve">a new #SoupMessageHeaders</doc>
  7755. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7756. </return-value>
  7757. <parameters>
  7758. <parameter name="type" transfer-ownership="none">
  7759. <doc xml:space="preserve">the type of headers</doc>
  7760. <type name="MessageHeadersType" c:type="SoupMessageHeadersType"/>
  7761. </parameter>
  7762. </parameters>
  7763. </constructor>
  7764. <method name="append" c:identifier="soup_message_headers_append">
  7765. <doc xml:space="preserve">Appends a new header with name @name and value @value to @hdrs. (If
  7766. there is an existing header with name @name, then this creates a
  7767. second one, which is only allowed for list-valued headers; see also
  7768. soup_message_headers_replace().)
  7769. The caller is expected to make sure that @name and @value are
  7770. syntactically correct.</doc>
  7771. <return-value transfer-ownership="none">
  7772. <type name="none" c:type="void"/>
  7773. </return-value>
  7774. <parameters>
  7775. <instance-parameter name="hdrs" transfer-ownership="none">
  7776. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7777. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7778. </instance-parameter>
  7779. <parameter name="name" transfer-ownership="none">
  7780. <doc xml:space="preserve">the header name to add</doc>
  7781. <type name="utf8" c:type="const char*"/>
  7782. </parameter>
  7783. <parameter name="value" transfer-ownership="none">
  7784. <doc xml:space="preserve">the new value of @name</doc>
  7785. <type name="utf8" c:type="const char*"/>
  7786. </parameter>
  7787. </parameters>
  7788. </method>
  7789. <method name="clean_connection_headers"
  7790. c:identifier="soup_message_headers_clean_connection_headers"
  7791. version="2.36">
  7792. <doc xml:space="preserve">Removes all the headers listed in the Connection header.</doc>
  7793. <return-value transfer-ownership="none">
  7794. <type name="none" c:type="void"/>
  7795. </return-value>
  7796. <parameters>
  7797. <instance-parameter name="hdrs" transfer-ownership="none">
  7798. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7799. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7800. </instance-parameter>
  7801. </parameters>
  7802. </method>
  7803. <method name="clear" c:identifier="soup_message_headers_clear">
  7804. <doc xml:space="preserve">Clears @hdrs.</doc>
  7805. <return-value transfer-ownership="none">
  7806. <type name="none" c:type="void"/>
  7807. </return-value>
  7808. <parameters>
  7809. <instance-parameter name="hdrs" transfer-ownership="none">
  7810. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7811. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7812. </instance-parameter>
  7813. </parameters>
  7814. </method>
  7815. <method name="foreach" c:identifier="soup_message_headers_foreach">
  7816. <doc xml:space="preserve">Calls @func once for each header value in @hdrs.
  7817. Beware that unlike soup_message_headers_get(), this processes the
  7818. headers in exactly the way they were added, rather than
  7819. concatenating multiple same-named headers into a single value.
  7820. (This is intentional; it ensures that if you call
  7821. soup_message_headers_append() multiple times with the same name,
  7822. then the I/O code will output multiple copies of the header when
  7823. sending the message to the remote implementation, which may be
  7824. required for interoperability in some cases.)
  7825. You may not modify the headers from @func.</doc>
  7826. <return-value transfer-ownership="none">
  7827. <type name="none" c:type="void"/>
  7828. </return-value>
  7829. <parameters>
  7830. <instance-parameter name="hdrs" transfer-ownership="none">
  7831. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7832. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7833. </instance-parameter>
  7834. <parameter name="func"
  7835. transfer-ownership="none"
  7836. scope="call"
  7837. closure="1">
  7838. <doc xml:space="preserve">callback function to run for each header</doc>
  7839. <type name="MessageHeadersForeachFunc"
  7840. c:type="SoupMessageHeadersForeachFunc"/>
  7841. </parameter>
  7842. <parameter name="user_data"
  7843. transfer-ownership="none"
  7844. nullable="1"
  7845. allow-none="1">
  7846. <doc xml:space="preserve">data to pass to @func</doc>
  7847. <type name="gpointer" c:type="gpointer"/>
  7848. </parameter>
  7849. </parameters>
  7850. </method>
  7851. <method name="free" c:identifier="soup_message_headers_free">
  7852. <doc xml:space="preserve">Frees @hdrs.</doc>
  7853. <return-value transfer-ownership="none">
  7854. <type name="none" c:type="void"/>
  7855. </return-value>
  7856. <parameters>
  7857. <instance-parameter name="hdrs" transfer-ownership="none">
  7858. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7859. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7860. </instance-parameter>
  7861. </parameters>
  7862. </method>
  7863. <method name="free_ranges"
  7864. c:identifier="soup_message_headers_free_ranges"
  7865. version="2.26">
  7866. <doc xml:space="preserve">Frees the array of ranges returned from soup_message_headers_get_ranges().</doc>
  7867. <return-value transfer-ownership="none">
  7868. <type name="none" c:type="void"/>
  7869. </return-value>
  7870. <parameters>
  7871. <instance-parameter name="hdrs" transfer-ownership="none">
  7872. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7873. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7874. </instance-parameter>
  7875. <parameter name="ranges" transfer-ownership="none">
  7876. <doc xml:space="preserve">an array of #SoupRange</doc>
  7877. <type name="Range" c:type="SoupRange*"/>
  7878. </parameter>
  7879. </parameters>
  7880. </method>
  7881. <method name="get"
  7882. c:identifier="soup_message_headers_get"
  7883. deprecated="1">
  7884. <doc xml:space="preserve">Gets the value of header @name in @hdrs.
  7885. This method was supposed to work correctly for both single-valued
  7886. and list-valued headers, but because some HTTP clients/servers
  7887. mistakenly send multiple copies of headers that are supposed to be
  7888. single-valued, it sometimes returns incorrect results. To fix this,
  7889. the methods soup_message_headers_get_one() and
  7890. soup_message_headers_get_list() were introduced, so callers can
  7891. explicitly state which behavior they are expecting.</doc>
  7892. <doc-deprecated xml:space="preserve">Use soup_message_headers_get_one() or
  7893. soup_message_headers_get_list() instead.</doc-deprecated>
  7894. <return-value transfer-ownership="none" nullable="1">
  7895. <doc xml:space="preserve">as with soup_message_headers_get_list().</doc>
  7896. <type name="utf8" c:type="const char*"/>
  7897. </return-value>
  7898. <parameters>
  7899. <instance-parameter name="hdrs" transfer-ownership="none">
  7900. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7901. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7902. </instance-parameter>
  7903. <parameter name="name" transfer-ownership="none">
  7904. <doc xml:space="preserve">header name</doc>
  7905. <type name="utf8" c:type="const char*"/>
  7906. </parameter>
  7907. </parameters>
  7908. </method>
  7909. <method name="get_content_disposition"
  7910. c:identifier="soup_message_headers_get_content_disposition"
  7911. version="2.26">
  7912. <doc xml:space="preserve">Looks up the "Content-Disposition" header in @hdrs, parses it, and
  7913. returns its value in *@disposition and *@params. @params can be
  7914. %NULL if you are only interested in the disposition-type.
  7915. In HTTP, the most common use of this header is to set a
  7916. disposition-type of "attachment", to suggest to the browser that a
  7917. response should be saved to disk rather than displayed in the
  7918. browser. If @params contains a "filename" parameter, this is a
  7919. suggestion of a filename to use. (If the parameter value in the
  7920. header contains an absolute or relative path, libsoup will truncate
  7921. it down to just the final path component, so you do not need to
  7922. test this yourself.)
  7923. Content-Disposition is also used in "multipart/form-data", however
  7924. this is handled automatically by #SoupMultipart and the associated
  7925. form methods.</doc>
  7926. <return-value transfer-ownership="none">
  7927. <doc xml:space="preserve">%TRUE if @hdrs contains a "Content-Disposition"
  7928. header, %FALSE if not (in which case *@disposition and *@params
  7929. will be unchanged).</doc>
  7930. <type name="gboolean" c:type="gboolean"/>
  7931. </return-value>
  7932. <parameters>
  7933. <instance-parameter name="hdrs" transfer-ownership="none">
  7934. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7935. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7936. </instance-parameter>
  7937. <parameter name="disposition"
  7938. direction="out"
  7939. caller-allocates="0"
  7940. transfer-ownership="full">
  7941. <doc xml:space="preserve">return location for the
  7942. disposition-type, or %NULL</doc>
  7943. <type name="utf8" c:type="char**"/>
  7944. </parameter>
  7945. <parameter name="params"
  7946. direction="out"
  7947. caller-allocates="0"
  7948. transfer-ownership="full">
  7949. <doc xml:space="preserve">return
  7950. location for the Content-Disposition parameters, or %NULL</doc>
  7951. <type name="GLib.HashTable" c:type="GHashTable**">
  7952. <type name="utf8"/>
  7953. <type name="utf8"/>
  7954. </type>
  7955. </parameter>
  7956. </parameters>
  7957. </method>
  7958. <method name="get_content_length"
  7959. c:identifier="soup_message_headers_get_content_length">
  7960. <doc xml:space="preserve">Gets the message body length that @hdrs declare. This will only
  7961. be non-0 if soup_message_headers_get_encoding() returns
  7962. %SOUP_ENCODING_CONTENT_LENGTH.</doc>
  7963. <return-value transfer-ownership="none">
  7964. <doc xml:space="preserve">the message body length declared by @hdrs.</doc>
  7965. <type name="gint64" c:type="goffset"/>
  7966. </return-value>
  7967. <parameters>
  7968. <instance-parameter name="hdrs" transfer-ownership="none">
  7969. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7970. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7971. </instance-parameter>
  7972. </parameters>
  7973. </method>
  7974. <method name="get_content_range"
  7975. c:identifier="soup_message_headers_get_content_range"
  7976. version="2.26">
  7977. <doc xml:space="preserve">Parses @hdrs's Content-Range header and returns it in @start,
  7978. @end, and @total_length. If the total length field in the header
  7979. was specified as "*", then @total_length will be set to -1.</doc>
  7980. <return-value transfer-ownership="none">
  7981. <doc xml:space="preserve">%TRUE if @hdrs contained a "Content-Range" header
  7982. containing a byte range which could be parsed, %FALSE otherwise.</doc>
  7983. <type name="gboolean" c:type="gboolean"/>
  7984. </return-value>
  7985. <parameters>
  7986. <instance-parameter name="hdrs" transfer-ownership="none">
  7987. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  7988. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  7989. </instance-parameter>
  7990. <parameter name="start" transfer-ownership="none">
  7991. <doc xml:space="preserve">return value for the start of the range</doc>
  7992. <type name="gint64" c:type="goffset*"/>
  7993. </parameter>
  7994. <parameter name="end" transfer-ownership="none">
  7995. <doc xml:space="preserve">return value for the end of the range</doc>
  7996. <type name="gint64" c:type="goffset*"/>
  7997. </parameter>
  7998. <parameter name="total_length" transfer-ownership="none">
  7999. <doc xml:space="preserve">return value for the total length of the resource,
  8000. or %NULL if you don't care.</doc>
  8001. <type name="gint64" c:type="goffset*"/>
  8002. </parameter>
  8003. </parameters>
  8004. </method>
  8005. <method name="get_content_type"
  8006. c:identifier="soup_message_headers_get_content_type"
  8007. version="2.26">
  8008. <doc xml:space="preserve">Looks up the "Content-Type" header in @hdrs, parses it, and returns
  8009. its value in *@content_type and *@params. @params can be %NULL if you
  8010. are only interested in the content type itself.</doc>
  8011. <return-value transfer-ownership="none" nullable="1">
  8012. <doc xml:space="preserve">a string with the value of the
  8013. "Content-Type" header or %NULL if @hdrs does not contain that
  8014. header or it cannot be parsed (in which case *@params will be
  8015. unchanged).</doc>
  8016. <type name="utf8" c:type="const char*"/>
  8017. </return-value>
  8018. <parameters>
  8019. <instance-parameter name="hdrs" transfer-ownership="none">
  8020. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8021. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8022. </instance-parameter>
  8023. <parameter name="params"
  8024. direction="out"
  8025. caller-allocates="0"
  8026. transfer-ownership="full"
  8027. optional="1"
  8028. allow-none="1">
  8029. <doc xml:space="preserve">
  8030. return location for the Content-Type parameters (eg, "charset"), or
  8031. %NULL</doc>
  8032. <type name="GLib.HashTable" c:type="GHashTable**">
  8033. <type name="utf8"/>
  8034. <type name="utf8"/>
  8035. </type>
  8036. </parameter>
  8037. </parameters>
  8038. </method>
  8039. <method name="get_encoding"
  8040. c:identifier="soup_message_headers_get_encoding">
  8041. <doc xml:space="preserve">Gets the message body encoding that @hdrs declare. This may not
  8042. always correspond to the encoding used on the wire; eg, a HEAD
  8043. response may declare a Content-Length or Transfer-Encoding, but
  8044. it will never actually include a body.</doc>
  8045. <return-value transfer-ownership="none">
  8046. <doc xml:space="preserve">the encoding declared by @hdrs.</doc>
  8047. <type name="Encoding" c:type="SoupEncoding"/>
  8048. </return-value>
  8049. <parameters>
  8050. <instance-parameter name="hdrs" transfer-ownership="none">
  8051. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8052. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8053. </instance-parameter>
  8054. </parameters>
  8055. </method>
  8056. <method name="get_expectations"
  8057. c:identifier="soup_message_headers_get_expectations">
  8058. <doc xml:space="preserve">Gets the expectations declared by @hdrs's "Expect" header.
  8059. Currently this will either be %SOUP_EXPECTATION_CONTINUE or
  8060. %SOUP_EXPECTATION_UNRECOGNIZED.</doc>
  8061. <return-value transfer-ownership="none">
  8062. <doc xml:space="preserve">the contents of @hdrs's "Expect" header</doc>
  8063. <type name="Expectation" c:type="SoupExpectation"/>
  8064. </return-value>
  8065. <parameters>
  8066. <instance-parameter name="hdrs" transfer-ownership="none">
  8067. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8068. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8069. </instance-parameter>
  8070. </parameters>
  8071. </method>
  8072. <method name="get_headers_type"
  8073. c:identifier="soup_message_headers_get_headers_type"
  8074. version="2.50">
  8075. <doc xml:space="preserve">Gets the type of headers.</doc>
  8076. <return-value transfer-ownership="none">
  8077. <doc xml:space="preserve">the header's type.</doc>
  8078. <type name="MessageHeadersType" c:type="SoupMessageHeadersType"/>
  8079. </return-value>
  8080. <parameters>
  8081. <instance-parameter name="hdrs" transfer-ownership="none">
  8082. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8083. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8084. </instance-parameter>
  8085. </parameters>
  8086. </method>
  8087. <method name="get_list"
  8088. c:identifier="soup_message_headers_get_list"
  8089. version="2.28">
  8090. <doc xml:space="preserve">Gets the value of header @name in @hdrs. Use this for headers whose
  8091. values are comma-delimited lists, and which are therefore allowed
  8092. to appear multiple times in the headers. For non-list-valued
  8093. headers, use soup_message_headers_get_one().
  8094. If @name appears multiple times in @hdrs,
  8095. soup_message_headers_get_list() will concatenate all of the values
  8096. together, separated by commas. This is sometimes awkward to parse
  8097. (eg, WWW-Authenticate, Set-Cookie), but you have to be able to deal
  8098. with it anyway, because the HTTP spec explicitly states that this
  8099. transformation is allowed, and so an upstream proxy could do the
  8100. same thing.</doc>
  8101. <return-value transfer-ownership="none" nullable="1">
  8102. <doc xml:space="preserve">the header's value or %NULL if not found.</doc>
  8103. <type name="utf8" c:type="const char*"/>
  8104. </return-value>
  8105. <parameters>
  8106. <instance-parameter name="hdrs" transfer-ownership="none">
  8107. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8108. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8109. </instance-parameter>
  8110. <parameter name="name" transfer-ownership="none">
  8111. <doc xml:space="preserve">header name</doc>
  8112. <type name="utf8" c:type="const char*"/>
  8113. </parameter>
  8114. </parameters>
  8115. </method>
  8116. <method name="get_one"
  8117. c:identifier="soup_message_headers_get_one"
  8118. version="2.28">
  8119. <doc xml:space="preserve">Gets the value of header @name in @hdrs. Use this for headers whose
  8120. values are &lt;emphasis&gt;not&lt;/emphasis&gt; comma-delimited lists, and
  8121. which therefore can only appear at most once in the headers. For
  8122. list-valued headers, use soup_message_headers_get_list().
  8123. If @hdrs does erroneously contain multiple copies of the header, it
  8124. is not defined which one will be returned. (Ideally, it will return
  8125. whichever one makes libsoup most compatible with other HTTP
  8126. implementations.)</doc>
  8127. <return-value transfer-ownership="none" nullable="1">
  8128. <doc xml:space="preserve">the header's value or %NULL if not found.</doc>
  8129. <type name="utf8" c:type="const char*"/>
  8130. </return-value>
  8131. <parameters>
  8132. <instance-parameter name="hdrs" transfer-ownership="none">
  8133. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8134. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8135. </instance-parameter>
  8136. <parameter name="name" transfer-ownership="none">
  8137. <doc xml:space="preserve">header name</doc>
  8138. <type name="utf8" c:type="const char*"/>
  8139. </parameter>
  8140. </parameters>
  8141. </method>
  8142. <method name="get_ranges"
  8143. c:identifier="soup_message_headers_get_ranges"
  8144. version="2.26">
  8145. <doc xml:space="preserve">Parses @hdrs's Range header and returns an array of the requested
  8146. byte ranges. The returned array must be freed with
  8147. soup_message_headers_free_ranges().
  8148. If @total_length is non-0, its value will be used to adjust the
  8149. returned ranges to have explicit start and end values, and the
  8150. returned ranges will be sorted and non-overlapping. If
  8151. @total_length is 0, then some ranges may have an end value of -1,
  8152. as described under #SoupRange, and some of the ranges may be
  8153. redundant.
  8154. Beware that even if given a @total_length, this function does not
  8155. check that the ranges are satisfiable.
  8156. &lt;note&gt;&lt;para&gt;
  8157. #SoupServer has built-in handling for range requests. If your
  8158. server handler returns a %SOUP_STATUS_OK response containing the
  8159. complete response body (rather than pausing the message and
  8160. returning some of the response body later), and there is a Range
  8161. header in the request, then libsoup will automatically convert the
  8162. response to a %SOUP_STATUS_PARTIAL_CONTENT response containing only
  8163. the range(s) requested by the client.
  8164. The only time you need to process the Range header yourself is if
  8165. either you need to stream the response body rather than returning
  8166. it all at once, or you do not already have the complete response
  8167. body available, and only want to generate the parts that were
  8168. actually requested by the client.
  8169. &lt;/para&gt;&lt;/note&gt;</doc>
  8170. <return-value transfer-ownership="none">
  8171. <doc xml:space="preserve">%TRUE if @hdrs contained a syntactically-valid
  8172. "Range" header, %FALSE otherwise (in which case @range and @length
  8173. will not be set).</doc>
  8174. <type name="gboolean" c:type="gboolean"/>
  8175. </return-value>
  8176. <parameters>
  8177. <instance-parameter name="hdrs" transfer-ownership="none">
  8178. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8179. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8180. </instance-parameter>
  8181. <parameter name="total_length" transfer-ownership="none">
  8182. <doc xml:space="preserve">the total_length of the response body</doc>
  8183. <type name="gint64" c:type="goffset"/>
  8184. </parameter>
  8185. <parameter name="ranges"
  8186. direction="out"
  8187. caller-allocates="0"
  8188. transfer-ownership="full">
  8189. <doc xml:space="preserve">return location for an array
  8190. of #SoupRange</doc>
  8191. <array length="2" zero-terminated="0" c:type="SoupRange**">
  8192. <type name="Range" c:type="SoupRange*"/>
  8193. </array>
  8194. </parameter>
  8195. <parameter name="length"
  8196. direction="out"
  8197. caller-allocates="0"
  8198. transfer-ownership="full">
  8199. <doc xml:space="preserve">the length of the returned array</doc>
  8200. <type name="gint" c:type="int*"/>
  8201. </parameter>
  8202. </parameters>
  8203. </method>
  8204. <method name="header_contains"
  8205. c:identifier="soup_message_headers_header_contains"
  8206. version="2.50">
  8207. <doc xml:space="preserve">Checks whether the list-valued header @name is present in @hdrs,
  8208. and contains a case-insensitive match for @token.
  8209. (If @name is present in @hdrs, then this is equivalent to calling
  8210. soup_header_contains() on its value.)</doc>
  8211. <return-value transfer-ownership="none">
  8212. <doc xml:space="preserve">%TRUE if the header is present and contains @token,
  8213. %FALSE otherwise.</doc>
  8214. <type name="gboolean" c:type="gboolean"/>
  8215. </return-value>
  8216. <parameters>
  8217. <instance-parameter name="hdrs" transfer-ownership="none">
  8218. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8219. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8220. </instance-parameter>
  8221. <parameter name="name" transfer-ownership="none">
  8222. <doc xml:space="preserve">header name</doc>
  8223. <type name="utf8" c:type="const char*"/>
  8224. </parameter>
  8225. <parameter name="token" transfer-ownership="none">
  8226. <doc xml:space="preserve">token to look for</doc>
  8227. <type name="utf8" c:type="const char*"/>
  8228. </parameter>
  8229. </parameters>
  8230. </method>
  8231. <method name="header_equals"
  8232. c:identifier="soup_message_headers_header_equals"
  8233. version="2.50">
  8234. <doc xml:space="preserve">Checks whether the header @name is present in @hdrs and is
  8235. (case-insensitively) equal to @value.</doc>
  8236. <return-value transfer-ownership="none">
  8237. <doc xml:space="preserve">%TRUE if the header is present and its value is
  8238. @value, %FALSE otherwise.</doc>
  8239. <type name="gboolean" c:type="gboolean"/>
  8240. </return-value>
  8241. <parameters>
  8242. <instance-parameter name="hdrs" transfer-ownership="none">
  8243. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8244. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8245. </instance-parameter>
  8246. <parameter name="name" transfer-ownership="none">
  8247. <doc xml:space="preserve">header name</doc>
  8248. <type name="utf8" c:type="const char*"/>
  8249. </parameter>
  8250. <parameter name="value" transfer-ownership="none">
  8251. <doc xml:space="preserve">expected value</doc>
  8252. <type name="utf8" c:type="const char*"/>
  8253. </parameter>
  8254. </parameters>
  8255. </method>
  8256. <method name="remove" c:identifier="soup_message_headers_remove">
  8257. <doc xml:space="preserve">Removes @name from @hdrs. If there are multiple values for @name,
  8258. they are all removed.</doc>
  8259. <return-value transfer-ownership="none">
  8260. <type name="none" c:type="void"/>
  8261. </return-value>
  8262. <parameters>
  8263. <instance-parameter name="hdrs" transfer-ownership="none">
  8264. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8265. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8266. </instance-parameter>
  8267. <parameter name="name" transfer-ownership="none">
  8268. <doc xml:space="preserve">the header name to remove</doc>
  8269. <type name="utf8" c:type="const char*"/>
  8270. </parameter>
  8271. </parameters>
  8272. </method>
  8273. <method name="replace" c:identifier="soup_message_headers_replace">
  8274. <doc xml:space="preserve">Replaces the value of the header @name in @hdrs with @value. (See
  8275. also soup_message_headers_append().)
  8276. The caller is expected to make sure that @name and @value are
  8277. syntactically correct.</doc>
  8278. <return-value transfer-ownership="none">
  8279. <type name="none" c:type="void"/>
  8280. </return-value>
  8281. <parameters>
  8282. <instance-parameter name="hdrs" transfer-ownership="none">
  8283. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8284. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8285. </instance-parameter>
  8286. <parameter name="name" transfer-ownership="none">
  8287. <doc xml:space="preserve">the header name to replace</doc>
  8288. <type name="utf8" c:type="const char*"/>
  8289. </parameter>
  8290. <parameter name="value" transfer-ownership="none">
  8291. <doc xml:space="preserve">the new value of @name</doc>
  8292. <type name="utf8" c:type="const char*"/>
  8293. </parameter>
  8294. </parameters>
  8295. </method>
  8296. <method name="set_content_disposition"
  8297. c:identifier="soup_message_headers_set_content_disposition"
  8298. version="2.26">
  8299. <doc xml:space="preserve">Sets the "Content-Disposition" header in @hdrs to @disposition,
  8300. optionally with additional parameters specified in @params.
  8301. See soup_message_headers_get_content_disposition() for a discussion
  8302. of how Content-Disposition is used in HTTP.</doc>
  8303. <return-value transfer-ownership="none">
  8304. <type name="none" c:type="void"/>
  8305. </return-value>
  8306. <parameters>
  8307. <instance-parameter name="hdrs" transfer-ownership="none">
  8308. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8309. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8310. </instance-parameter>
  8311. <parameter name="disposition" transfer-ownership="none">
  8312. <doc xml:space="preserve">the disposition-type</doc>
  8313. <type name="utf8" c:type="const char*"/>
  8314. </parameter>
  8315. <parameter name="params"
  8316. transfer-ownership="none"
  8317. nullable="1"
  8318. allow-none="1">
  8319. <doc xml:space="preserve">additional
  8320. parameters, or %NULL</doc>
  8321. <type name="GLib.HashTable" c:type="GHashTable*">
  8322. <type name="utf8"/>
  8323. <type name="utf8"/>
  8324. </type>
  8325. </parameter>
  8326. </parameters>
  8327. </method>
  8328. <method name="set_content_length"
  8329. c:identifier="soup_message_headers_set_content_length">
  8330. <doc xml:space="preserve">Sets the message body length that @hdrs will declare, and sets
  8331. @hdrs's encoding to %SOUP_ENCODING_CONTENT_LENGTH.
  8332. You do not normally need to call this; if @hdrs is set to use
  8333. Content-Length encoding, libsoup will automatically set its
  8334. Content-Length header for you immediately before sending the
  8335. headers. One situation in which this method is useful is when
  8336. generating the response to a HEAD request; Calling
  8337. soup_message_headers_set_content_length() allows you to put the
  8338. correct content length into the response without needing to waste
  8339. memory by filling in a response body which won't actually be sent.</doc>
  8340. <return-value transfer-ownership="none">
  8341. <type name="none" c:type="void"/>
  8342. </return-value>
  8343. <parameters>
  8344. <instance-parameter name="hdrs" transfer-ownership="none">
  8345. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8346. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8347. </instance-parameter>
  8348. <parameter name="content_length" transfer-ownership="none">
  8349. <doc xml:space="preserve">the message body length</doc>
  8350. <type name="gint64" c:type="goffset"/>
  8351. </parameter>
  8352. </parameters>
  8353. </method>
  8354. <method name="set_content_range"
  8355. c:identifier="soup_message_headers_set_content_range"
  8356. version="2.26">
  8357. <doc xml:space="preserve">Sets @hdrs's Content-Range header according to the given values.
  8358. (Note that @total_length is the total length of the entire resource
  8359. that this is a range of, not simply @end - @start + 1.)
  8360. &lt;note&gt;&lt;para&gt;
  8361. #SoupServer has built-in handling for range requests, and you do
  8362. not normally need to call this function youself. See
  8363. soup_message_headers_get_ranges() for more details.
  8364. &lt;/para&gt;&lt;/note&gt;</doc>
  8365. <return-value transfer-ownership="none">
  8366. <type name="none" c:type="void"/>
  8367. </return-value>
  8368. <parameters>
  8369. <instance-parameter name="hdrs" transfer-ownership="none">
  8370. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8371. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8372. </instance-parameter>
  8373. <parameter name="start" transfer-ownership="none">
  8374. <doc xml:space="preserve">the start of the range</doc>
  8375. <type name="gint64" c:type="goffset"/>
  8376. </parameter>
  8377. <parameter name="end" transfer-ownership="none">
  8378. <doc xml:space="preserve">the end of the range</doc>
  8379. <type name="gint64" c:type="goffset"/>
  8380. </parameter>
  8381. <parameter name="total_length" transfer-ownership="none">
  8382. <doc xml:space="preserve">the total length of the resource, or -1 if unknown</doc>
  8383. <type name="gint64" c:type="goffset"/>
  8384. </parameter>
  8385. </parameters>
  8386. </method>
  8387. <method name="set_content_type"
  8388. c:identifier="soup_message_headers_set_content_type"
  8389. version="2.26">
  8390. <doc xml:space="preserve">Sets the "Content-Type" header in @hdrs to @content_type,
  8391. optionally with additional parameters specified in @params.</doc>
  8392. <return-value transfer-ownership="none">
  8393. <type name="none" c:type="void"/>
  8394. </return-value>
  8395. <parameters>
  8396. <instance-parameter name="hdrs" transfer-ownership="none">
  8397. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8398. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8399. </instance-parameter>
  8400. <parameter name="content_type" transfer-ownership="none">
  8401. <doc xml:space="preserve">the MIME type</doc>
  8402. <type name="utf8" c:type="const char*"/>
  8403. </parameter>
  8404. <parameter name="params"
  8405. transfer-ownership="none"
  8406. nullable="1"
  8407. allow-none="1">
  8408. <doc xml:space="preserve">additional
  8409. parameters, or %NULL</doc>
  8410. <type name="GLib.HashTable" c:type="GHashTable*">
  8411. <type name="utf8"/>
  8412. <type name="utf8"/>
  8413. </type>
  8414. </parameter>
  8415. </parameters>
  8416. </method>
  8417. <method name="set_encoding"
  8418. c:identifier="soup_message_headers_set_encoding">
  8419. <doc xml:space="preserve">Sets the message body encoding that @hdrs will declare. In particular,
  8420. you should use this if you are going to send a request or response in
  8421. chunked encoding.</doc>
  8422. <return-value transfer-ownership="none">
  8423. <type name="none" c:type="void"/>
  8424. </return-value>
  8425. <parameters>
  8426. <instance-parameter name="hdrs" transfer-ownership="none">
  8427. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8428. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8429. </instance-parameter>
  8430. <parameter name="encoding" transfer-ownership="none">
  8431. <doc xml:space="preserve">a #SoupEncoding</doc>
  8432. <type name="Encoding" c:type="SoupEncoding"/>
  8433. </parameter>
  8434. </parameters>
  8435. </method>
  8436. <method name="set_expectations"
  8437. c:identifier="soup_message_headers_set_expectations">
  8438. <doc xml:space="preserve">Sets @hdrs's "Expect" header according to @expectations.
  8439. Currently %SOUP_EXPECTATION_CONTINUE is the only known expectation
  8440. value. You should set this value on a request if you are sending a
  8441. large message body (eg, via POST or PUT), and want to give the
  8442. server a chance to reject the request after seeing just the headers
  8443. (eg, because it will require authentication before allowing you to
  8444. post, or because you're POSTing to a URL that doesn't exist). This
  8445. saves you from having to transmit the large request body when the
  8446. server is just going to ignore it anyway.</doc>
  8447. <return-value transfer-ownership="none">
  8448. <type name="none" c:type="void"/>
  8449. </return-value>
  8450. <parameters>
  8451. <instance-parameter name="hdrs" transfer-ownership="none">
  8452. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8453. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8454. </instance-parameter>
  8455. <parameter name="expectations" transfer-ownership="none">
  8456. <doc xml:space="preserve">the expectations to set</doc>
  8457. <type name="Expectation" c:type="SoupExpectation"/>
  8458. </parameter>
  8459. </parameters>
  8460. </method>
  8461. <method name="set_range"
  8462. c:identifier="soup_message_headers_set_range"
  8463. version="2.26">
  8464. <doc xml:space="preserve">Sets @hdrs's Range header to request the indicated range.
  8465. @start and @end are interpreted as in a #SoupRange.
  8466. If you need to request multiple ranges, use
  8467. soup_message_headers_set_ranges().</doc>
  8468. <return-value transfer-ownership="none">
  8469. <type name="none" c:type="void"/>
  8470. </return-value>
  8471. <parameters>
  8472. <instance-parameter name="hdrs" transfer-ownership="none">
  8473. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8474. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8475. </instance-parameter>
  8476. <parameter name="start" transfer-ownership="none">
  8477. <doc xml:space="preserve">the start of the range to request</doc>
  8478. <type name="gint64" c:type="goffset"/>
  8479. </parameter>
  8480. <parameter name="end" transfer-ownership="none">
  8481. <doc xml:space="preserve">the end of the range to request</doc>
  8482. <type name="gint64" c:type="goffset"/>
  8483. </parameter>
  8484. </parameters>
  8485. </method>
  8486. <method name="set_ranges"
  8487. c:identifier="soup_message_headers_set_ranges"
  8488. version="2.26">
  8489. <doc xml:space="preserve">Sets @hdrs's Range header to request the indicated ranges. (If you
  8490. only want to request a single range, you can use
  8491. soup_message_headers_set_range().)</doc>
  8492. <return-value transfer-ownership="none">
  8493. <type name="none" c:type="void"/>
  8494. </return-value>
  8495. <parameters>
  8496. <instance-parameter name="hdrs" transfer-ownership="none">
  8497. <doc xml:space="preserve">a #SoupMessageHeaders</doc>
  8498. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8499. </instance-parameter>
  8500. <parameter name="ranges" transfer-ownership="none">
  8501. <doc xml:space="preserve">an array of #SoupRange</doc>
  8502. <type name="Range" c:type="SoupRange*"/>
  8503. </parameter>
  8504. <parameter name="length" transfer-ownership="none">
  8505. <doc xml:space="preserve">the length of @range</doc>
  8506. <type name="gint" c:type="int"/>
  8507. </parameter>
  8508. </parameters>
  8509. </method>
  8510. </record>
  8511. <callback name="MessageHeadersForeachFunc"
  8512. c:type="SoupMessageHeadersForeachFunc">
  8513. <doc xml:space="preserve">The callback passed to soup_message_headers_foreach().</doc>
  8514. <return-value transfer-ownership="none">
  8515. <type name="none" c:type="void"/>
  8516. </return-value>
  8517. <parameters>
  8518. <parameter name="name" transfer-ownership="none">
  8519. <doc xml:space="preserve">the header name</doc>
  8520. <type name="utf8" c:type="const char*"/>
  8521. </parameter>
  8522. <parameter name="value" transfer-ownership="none">
  8523. <doc xml:space="preserve">the header value</doc>
  8524. <type name="utf8" c:type="const char*"/>
  8525. </parameter>
  8526. <parameter name="user_data"
  8527. transfer-ownership="none"
  8528. nullable="1"
  8529. allow-none="1"
  8530. closure="2">
  8531. <doc xml:space="preserve">the data passed to soup_message_headers_foreach()</doc>
  8532. <type name="gpointer" c:type="gpointer"/>
  8533. </parameter>
  8534. </parameters>
  8535. </callback>
  8536. <record name="MessageHeadersIter" c:type="SoupMessageHeadersIter">
  8537. <doc xml:space="preserve">An opaque type used to iterate over a %SoupMessageHeaders
  8538. structure.
  8539. After intializing the iterator with
  8540. soup_message_headers_iter_init(), call
  8541. soup_message_headers_iter_next() to fetch data from it.
  8542. You may not modify the headers while iterating over them.</doc>
  8543. <field name="dummy" readable="0" private="1">
  8544. <array zero-terminated="0" c:type="gpointer" fixed-size="3">
  8545. <type name="gpointer" c:type="gpointer"/>
  8546. </array>
  8547. </field>
  8548. <method name="next" c:identifier="soup_message_headers_iter_next">
  8549. <doc xml:space="preserve">Yields the next name/value pair in the %SoupMessageHeaders being
  8550. iterated by @iter. If @iter has already yielded the last header,
  8551. then soup_message_headers_iter_next() will return %FALSE and @name
  8552. and @value will be unchanged.</doc>
  8553. <return-value transfer-ownership="none">
  8554. <doc xml:space="preserve">%TRUE if another name and value were returned, %FALSE
  8555. if the end of the headers has been reached.</doc>
  8556. <type name="gboolean" c:type="gboolean"/>
  8557. </return-value>
  8558. <parameters>
  8559. <instance-parameter name="iter"
  8560. direction="inout"
  8561. caller-allocates="0"
  8562. transfer-ownership="none">
  8563. <doc xml:space="preserve">a %SoupMessageHeadersIter</doc>
  8564. <type name="MessageHeadersIter" c:type="SoupMessageHeadersIter*"/>
  8565. </instance-parameter>
  8566. <parameter name="name"
  8567. direction="out"
  8568. caller-allocates="0"
  8569. transfer-ownership="none">
  8570. <doc xml:space="preserve">pointer to a variable to return
  8571. the header name in</doc>
  8572. <type name="utf8" c:type="const char**"/>
  8573. </parameter>
  8574. <parameter name="value"
  8575. direction="out"
  8576. caller-allocates="0"
  8577. transfer-ownership="none">
  8578. <doc xml:space="preserve">pointer to a variable to return
  8579. the header value in</doc>
  8580. <type name="utf8" c:type="const char**"/>
  8581. </parameter>
  8582. </parameters>
  8583. </method>
  8584. <function name="init" c:identifier="soup_message_headers_iter_init">
  8585. <doc xml:space="preserve">Initializes @iter for iterating @hdrs.</doc>
  8586. <return-value transfer-ownership="none">
  8587. <type name="none" c:type="void"/>
  8588. </return-value>
  8589. <parameters>
  8590. <parameter name="iter"
  8591. direction="out"
  8592. caller-allocates="1"
  8593. transfer-ownership="none">
  8594. <doc xml:space="preserve">a pointer to a %SoupMessageHeadersIter
  8595. structure</doc>
  8596. <type name="MessageHeadersIter" c:type="SoupMessageHeadersIter*"/>
  8597. </parameter>
  8598. <parameter name="hdrs" transfer-ownership="none">
  8599. <doc xml:space="preserve">a %SoupMessageHeaders</doc>
  8600. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8601. </parameter>
  8602. </parameters>
  8603. </function>
  8604. </record>
  8605. <enumeration name="MessageHeadersType"
  8606. glib:type-name="SoupMessageHeadersType"
  8607. glib:get-type="soup_message_headers_type_get_type"
  8608. c:type="SoupMessageHeadersType">
  8609. <doc xml:space="preserve">Value passed to soup_message_headers_new() to set certain default
  8610. behaviors.</doc>
  8611. <member name="request"
  8612. value="0"
  8613. c:identifier="SOUP_MESSAGE_HEADERS_REQUEST"
  8614. glib:nick="request">
  8615. <doc xml:space="preserve">request headers</doc>
  8616. </member>
  8617. <member name="response"
  8618. value="1"
  8619. c:identifier="SOUP_MESSAGE_HEADERS_RESPONSE"
  8620. glib:nick="response">
  8621. <doc xml:space="preserve">response headers</doc>
  8622. </member>
  8623. <member name="multipart"
  8624. value="2"
  8625. c:identifier="SOUP_MESSAGE_HEADERS_MULTIPART"
  8626. glib:nick="multipart">
  8627. <doc xml:space="preserve">multipart body part headers</doc>
  8628. </member>
  8629. </enumeration>
  8630. <enumeration name="MessagePriority"
  8631. glib:type-name="SoupMessagePriority"
  8632. glib:get-type="soup_message_priority_get_type"
  8633. c:type="SoupMessagePriority">
  8634. <doc xml:space="preserve">Priorities that can be set on a #SoupMessage to instruct the
  8635. message queue to process it before any other message with lower
  8636. priority.</doc>
  8637. <member name="very_low"
  8638. value="0"
  8639. c:identifier="SOUP_MESSAGE_PRIORITY_VERY_LOW"
  8640. glib:nick="very-low">
  8641. <doc xml:space="preserve">The lowest priority, the messages
  8642. with this priority will be the last ones to be attended.</doc>
  8643. </member>
  8644. <member name="low"
  8645. value="1"
  8646. c:identifier="SOUP_MESSAGE_PRIORITY_LOW"
  8647. glib:nick="low">
  8648. <doc xml:space="preserve">Use this for low priority messages, a
  8649. #SoupMessage with the default priority will be processed first.</doc>
  8650. </member>
  8651. <member name="normal"
  8652. value="2"
  8653. c:identifier="SOUP_MESSAGE_PRIORITY_NORMAL"
  8654. glib:nick="normal">
  8655. <doc xml:space="preserve">The default priotity, this is the
  8656. priority assigned to the #SoupMessage by default.</doc>
  8657. </member>
  8658. <member name="high"
  8659. value="3"
  8660. c:identifier="SOUP_MESSAGE_PRIORITY_HIGH"
  8661. glib:nick="high">
  8662. <doc xml:space="preserve">High priority, a #SoupMessage with
  8663. this priority will be processed before the ones with the default
  8664. priority.</doc>
  8665. </member>
  8666. <member name="very_high"
  8667. value="4"
  8668. c:identifier="SOUP_MESSAGE_PRIORITY_VERY_HIGH"
  8669. glib:nick="very-high">
  8670. <doc xml:space="preserve">The highest priority, use this
  8671. for very urgent #SoupMessage as they will be the first ones to be
  8672. attended.</doc>
  8673. </member>
  8674. </enumeration>
  8675. <record name="MessageQueue" c:type="SoupMessageQueue" disguised="1">
  8676. </record>
  8677. <record name="MessageQueueItem"
  8678. c:type="SoupMessageQueueItem"
  8679. disguised="1">
  8680. </record>
  8681. <record name="Multipart"
  8682. c:type="SoupMultipart"
  8683. version="2.26"
  8684. glib:type-name="SoupMultipart"
  8685. glib:get-type="soup_multipart_get_type"
  8686. c:symbol-prefix="multipart">
  8687. <doc xml:space="preserve">Represents a multipart HTTP message body, parsed according to the
  8688. syntax of RFC 2046. Of particular interest to HTTP are
  8689. &lt;literal&gt;multipart/byte-ranges&lt;/literal&gt; and
  8690. &lt;literal&gt;multipart/form-data&lt;/literal&gt;.
  8691. Although the headers of a #SoupMultipart body part will contain the
  8692. full headers from that body part, libsoup does not interpret them
  8693. according to MIME rules. For example, each body part is assumed to
  8694. have "binary" Content-Transfer-Encoding, even if its headers
  8695. explicitly state otherwise. In other words, don't try to use
  8696. #SoupMultipart for handling real MIME multiparts.</doc>
  8697. <constructor name="new" c:identifier="soup_multipart_new" version="2.26">
  8698. <doc xml:space="preserve">Creates a new empty #SoupMultipart with a randomly-generated
  8699. boundary string. Note that @mime_type must be the full MIME type,
  8700. including "multipart/".</doc>
  8701. <return-value transfer-ownership="full">
  8702. <doc xml:space="preserve">a new empty #SoupMultipart of the given @mime_type</doc>
  8703. <type name="Multipart" c:type="SoupMultipart*"/>
  8704. </return-value>
  8705. <parameters>
  8706. <parameter name="mime_type" transfer-ownership="none">
  8707. <doc xml:space="preserve">the MIME type of the multipart to create.</doc>
  8708. <type name="utf8" c:type="const char*"/>
  8709. </parameter>
  8710. </parameters>
  8711. </constructor>
  8712. <constructor name="new_from_message"
  8713. c:identifier="soup_multipart_new_from_message"
  8714. version="2.26">
  8715. <doc xml:space="preserve">Parses @headers and @body to form a new #SoupMultipart</doc>
  8716. <return-value transfer-ownership="full" nullable="1">
  8717. <doc xml:space="preserve">a new #SoupMultipart (or %NULL if the
  8718. message couldn't be parsed or wasn't multipart).</doc>
  8719. <type name="Multipart" c:type="SoupMultipart*"/>
  8720. </return-value>
  8721. <parameters>
  8722. <parameter name="headers" transfer-ownership="none">
  8723. <doc xml:space="preserve">the headers of the HTTP message to parse</doc>
  8724. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8725. </parameter>
  8726. <parameter name="body" transfer-ownership="none">
  8727. <doc xml:space="preserve">the body of the HTTP message to parse</doc>
  8728. <type name="MessageBody" c:type="SoupMessageBody*"/>
  8729. </parameter>
  8730. </parameters>
  8731. </constructor>
  8732. <method name="append_form_file"
  8733. c:identifier="soup_multipart_append_form_file"
  8734. version="2.26">
  8735. <doc xml:space="preserve">Adds a new MIME part containing @body to @multipart, using
  8736. "Content-Disposition: form-data", as per the HTML forms
  8737. specification. See soup_form_request_new_from_multipart() for more
  8738. details.</doc>
  8739. <return-value transfer-ownership="none">
  8740. <type name="none" c:type="void"/>
  8741. </return-value>
  8742. <parameters>
  8743. <instance-parameter name="multipart" transfer-ownership="none">
  8744. <doc xml:space="preserve">a multipart (presumably of type "multipart/form-data")</doc>
  8745. <type name="Multipart" c:type="SoupMultipart*"/>
  8746. </instance-parameter>
  8747. <parameter name="control_name" transfer-ownership="none">
  8748. <doc xml:space="preserve">the name of the control associated with this file</doc>
  8749. <type name="utf8" c:type="const char*"/>
  8750. </parameter>
  8751. <parameter name="filename" transfer-ownership="none">
  8752. <doc xml:space="preserve">the name of the file, or %NULL if not known</doc>
  8753. <type name="utf8" c:type="const char*"/>
  8754. </parameter>
  8755. <parameter name="content_type" transfer-ownership="none">
  8756. <doc xml:space="preserve">the MIME type of the file, or %NULL if not known</doc>
  8757. <type name="utf8" c:type="const char*"/>
  8758. </parameter>
  8759. <parameter name="body" transfer-ownership="none">
  8760. <doc xml:space="preserve">the file data</doc>
  8761. <type name="Buffer" c:type="SoupBuffer*"/>
  8762. </parameter>
  8763. </parameters>
  8764. </method>
  8765. <method name="append_form_string"
  8766. c:identifier="soup_multipart_append_form_string"
  8767. version="2.26">
  8768. <doc xml:space="preserve">Adds a new MIME part containing @data to @multipart, using
  8769. "Content-Disposition: form-data", as per the HTML forms
  8770. specification. See soup_form_request_new_from_multipart() for more
  8771. details.</doc>
  8772. <return-value transfer-ownership="none">
  8773. <type name="none" c:type="void"/>
  8774. </return-value>
  8775. <parameters>
  8776. <instance-parameter name="multipart" transfer-ownership="none">
  8777. <doc xml:space="preserve">a multipart (presumably of type "multipart/form-data")</doc>
  8778. <type name="Multipart" c:type="SoupMultipart*"/>
  8779. </instance-parameter>
  8780. <parameter name="control_name" transfer-ownership="none">
  8781. <doc xml:space="preserve">the name of the control associated with @data</doc>
  8782. <type name="utf8" c:type="const char*"/>
  8783. </parameter>
  8784. <parameter name="data" transfer-ownership="none">
  8785. <doc xml:space="preserve">the body data</doc>
  8786. <type name="utf8" c:type="const char*"/>
  8787. </parameter>
  8788. </parameters>
  8789. </method>
  8790. <method name="append_part"
  8791. c:identifier="soup_multipart_append_part"
  8792. version="2.26">
  8793. <doc xml:space="preserve">Adds a new MIME part to @multipart with the given headers and body.
  8794. (The multipart will make its own copies of @headers and @body, so
  8795. you should free your copies if you are not using them for anything
  8796. else.)</doc>
  8797. <return-value transfer-ownership="none">
  8798. <type name="none" c:type="void"/>
  8799. </return-value>
  8800. <parameters>
  8801. <instance-parameter name="multipart" transfer-ownership="none">
  8802. <doc xml:space="preserve">a #SoupMultipart</doc>
  8803. <type name="Multipart" c:type="SoupMultipart*"/>
  8804. </instance-parameter>
  8805. <parameter name="headers" transfer-ownership="none">
  8806. <doc xml:space="preserve">the MIME part headers</doc>
  8807. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8808. </parameter>
  8809. <parameter name="body" transfer-ownership="none">
  8810. <doc xml:space="preserve">the MIME part body</doc>
  8811. <type name="Buffer" c:type="SoupBuffer*"/>
  8812. </parameter>
  8813. </parameters>
  8814. </method>
  8815. <method name="free" c:identifier="soup_multipart_free" version="2.26">
  8816. <doc xml:space="preserve">Frees @multipart</doc>
  8817. <return-value transfer-ownership="none">
  8818. <type name="none" c:type="void"/>
  8819. </return-value>
  8820. <parameters>
  8821. <instance-parameter name="multipart" transfer-ownership="none">
  8822. <doc xml:space="preserve">a #SoupMultipart</doc>
  8823. <type name="Multipart" c:type="SoupMultipart*"/>
  8824. </instance-parameter>
  8825. </parameters>
  8826. </method>
  8827. <method name="get_length"
  8828. c:identifier="soup_multipart_get_length"
  8829. version="2.26">
  8830. <doc xml:space="preserve">Gets the number of body parts in @multipart</doc>
  8831. <return-value transfer-ownership="none">
  8832. <doc xml:space="preserve">the number of body parts in @multipart</doc>
  8833. <type name="gint" c:type="int"/>
  8834. </return-value>
  8835. <parameters>
  8836. <instance-parameter name="multipart" transfer-ownership="none">
  8837. <doc xml:space="preserve">a #SoupMultipart</doc>
  8838. <type name="Multipart" c:type="SoupMultipart*"/>
  8839. </instance-parameter>
  8840. </parameters>
  8841. </method>
  8842. <method name="get_part"
  8843. c:identifier="soup_multipart_get_part"
  8844. version="2.26">
  8845. <doc xml:space="preserve">Gets the indicated body part from @multipart.</doc>
  8846. <return-value transfer-ownership="none">
  8847. <doc xml:space="preserve">%TRUE on success, %FALSE if @part is out of range (in
  8848. which case @headers and @body won't be set)</doc>
  8849. <type name="gboolean" c:type="gboolean"/>
  8850. </return-value>
  8851. <parameters>
  8852. <instance-parameter name="multipart" transfer-ownership="none">
  8853. <doc xml:space="preserve">a #SoupMultipart</doc>
  8854. <type name="Multipart" c:type="SoupMultipart*"/>
  8855. </instance-parameter>
  8856. <parameter name="part" transfer-ownership="none">
  8857. <doc xml:space="preserve">the part number to get (counting from 0)</doc>
  8858. <type name="gint" c:type="int"/>
  8859. </parameter>
  8860. <parameter name="headers"
  8861. direction="out"
  8862. caller-allocates="0"
  8863. transfer-ownership="none">
  8864. <doc xml:space="preserve">return location for the MIME part
  8865. headers</doc>
  8866. <type name="MessageHeaders" c:type="SoupMessageHeaders**"/>
  8867. </parameter>
  8868. <parameter name="body"
  8869. direction="out"
  8870. caller-allocates="0"
  8871. transfer-ownership="none">
  8872. <doc xml:space="preserve">return location for the MIME part
  8873. body</doc>
  8874. <type name="Buffer" c:type="SoupBuffer**"/>
  8875. </parameter>
  8876. </parameters>
  8877. </method>
  8878. <method name="to_message"
  8879. c:identifier="soup_multipart_to_message"
  8880. version="2.26">
  8881. <doc xml:space="preserve">Serializes @multipart to @dest_headers and @dest_body.</doc>
  8882. <return-value transfer-ownership="none">
  8883. <type name="none" c:type="void"/>
  8884. </return-value>
  8885. <parameters>
  8886. <instance-parameter name="multipart" transfer-ownership="none">
  8887. <doc xml:space="preserve">a #SoupMultipart</doc>
  8888. <type name="Multipart" c:type="SoupMultipart*"/>
  8889. </instance-parameter>
  8890. <parameter name="dest_headers" transfer-ownership="none">
  8891. <doc xml:space="preserve">the headers of the HTTP message to serialize @multipart to</doc>
  8892. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8893. </parameter>
  8894. <parameter name="dest_body" transfer-ownership="none">
  8895. <doc xml:space="preserve">the body of the HTTP message to serialize @multipart to</doc>
  8896. <type name="MessageBody" c:type="SoupMessageBody*"/>
  8897. </parameter>
  8898. </parameters>
  8899. </method>
  8900. </record>
  8901. <class name="MultipartInputStream"
  8902. c:symbol-prefix="multipart_input_stream"
  8903. c:type="SoupMultipartInputStream"
  8904. parent="Gio.FilterInputStream"
  8905. glib:type-name="SoupMultipartInputStream"
  8906. glib:get-type="soup_multipart_input_stream_get_type"
  8907. glib:type-struct="MultipartInputStreamClass">
  8908. <implements name="Gio.PollableInputStream"/>
  8909. <constructor name="new"
  8910. c:identifier="soup_multipart_input_stream_new"
  8911. version="2.40">
  8912. <doc xml:space="preserve">Creates a new #SoupMultipartInputStream that wraps the
  8913. #GInputStream obtained by sending the #SoupRequest. Reads should
  8914. not be done directly through this object, use the input streams
  8915. returned by soup_multipart_input_stream_next_part() or its async
  8916. counterpart instead.</doc>
  8917. <return-value transfer-ownership="full">
  8918. <doc xml:space="preserve">a new #SoupMultipartInputStream</doc>
  8919. <type name="MultipartInputStream"
  8920. c:type="SoupMultipartInputStream*"/>
  8921. </return-value>
  8922. <parameters>
  8923. <parameter name="msg" transfer-ownership="none">
  8924. <doc xml:space="preserve">the #SoupMessage the response is related to.</doc>
  8925. <type name="Message" c:type="SoupMessage*"/>
  8926. </parameter>
  8927. <parameter name="base_stream" transfer-ownership="none">
  8928. <doc xml:space="preserve">the #GInputStream returned by sending the request.</doc>
  8929. <type name="Gio.InputStream" c:type="GInputStream*"/>
  8930. </parameter>
  8931. </parameters>
  8932. </constructor>
  8933. <method name="get_headers"
  8934. c:identifier="soup_multipart_input_stream_get_headers"
  8935. version="2.40">
  8936. <doc xml:space="preserve">Obtains the headers for the part currently being processed. Note
  8937. that the #SoupMessageHeaders that are returned are owned by the
  8938. #SoupMultipartInputStream and will be replaced when a call is made
  8939. to soup_multipart_input_stream_next_part() or its async
  8940. counterpart, so if keeping the headers is required, a copy must be
  8941. made.
  8942. Note that if a part had no headers at all an empty #SoupMessageHeaders
  8943. will be returned.</doc>
  8944. <return-value transfer-ownership="none" nullable="1">
  8945. <doc xml:space="preserve">a #SoupMessageHeaders
  8946. containing the headers for the part currently being processed or
  8947. %NULL if the headers failed to parse.</doc>
  8948. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  8949. </return-value>
  8950. <parameters>
  8951. <instance-parameter name="multipart" transfer-ownership="none">
  8952. <doc xml:space="preserve">a #SoupMultipartInputStream.</doc>
  8953. <type name="MultipartInputStream"
  8954. c:type="SoupMultipartInputStream*"/>
  8955. </instance-parameter>
  8956. </parameters>
  8957. </method>
  8958. <method name="next_part"
  8959. c:identifier="soup_multipart_input_stream_next_part"
  8960. version="2.40"
  8961. throws="1">
  8962. <doc xml:space="preserve">Obtains an input stream for the next part. When dealing with a
  8963. multipart response the input stream needs to be wrapped in a
  8964. #SoupMultipartInputStream and this function or its async
  8965. counterpart need to be called to obtain the first part for
  8966. reading.
  8967. After calling this function,
  8968. soup_multipart_input_stream_get_headers() can be used to obtain the
  8969. headers for the first part. A read of 0 bytes indicates the end of
  8970. the part; a new call to this function should be done at that point,
  8971. to obtain the next part.</doc>
  8972. <return-value transfer-ownership="full" nullable="1">
  8973. <doc xml:space="preserve">a new #GInputStream, or
  8974. %NULL if there are no more parts</doc>
  8975. <type name="Gio.InputStream" c:type="GInputStream*"/>
  8976. </return-value>
  8977. <parameters>
  8978. <instance-parameter name="multipart" transfer-ownership="none">
  8979. <doc xml:space="preserve">the #SoupMultipartInputStream</doc>
  8980. <type name="MultipartInputStream"
  8981. c:type="SoupMultipartInputStream*"/>
  8982. </instance-parameter>
  8983. <parameter name="cancellable"
  8984. transfer-ownership="none"
  8985. nullable="1"
  8986. allow-none="1">
  8987. <doc xml:space="preserve">a #GCancellable</doc>
  8988. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  8989. </parameter>
  8990. </parameters>
  8991. </method>
  8992. <method name="next_part_async"
  8993. c:identifier="soup_multipart_input_stream_next_part_async"
  8994. version="2.40">
  8995. <doc xml:space="preserve">Obtains a #GInputStream for the next request. See
  8996. soup_multipart_input_stream_next_part() for details on the
  8997. workflow.</doc>
  8998. <return-value transfer-ownership="none">
  8999. <type name="none" c:type="void"/>
  9000. </return-value>
  9001. <parameters>
  9002. <instance-parameter name="multipart" transfer-ownership="none">
  9003. <doc xml:space="preserve">the #SoupMultipartInputStream.</doc>
  9004. <type name="MultipartInputStream"
  9005. c:type="SoupMultipartInputStream*"/>
  9006. </instance-parameter>
  9007. <parameter name="io_priority" transfer-ownership="none">
  9008. <doc xml:space="preserve">the I/O priority for the request.</doc>
  9009. <type name="gint" c:type="int"/>
  9010. </parameter>
  9011. <parameter name="cancellable"
  9012. transfer-ownership="none"
  9013. nullable="1"
  9014. allow-none="1">
  9015. <doc xml:space="preserve">a #GCancellable.</doc>
  9016. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9017. </parameter>
  9018. <parameter name="callback"
  9019. transfer-ownership="none"
  9020. nullable="1"
  9021. allow-none="1"
  9022. scope="async"
  9023. closure="3">
  9024. <doc xml:space="preserve">callback to call when request is satisfied.</doc>
  9025. <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
  9026. </parameter>
  9027. <parameter name="data"
  9028. transfer-ownership="none"
  9029. nullable="1"
  9030. allow-none="1">
  9031. <doc xml:space="preserve">data for @callback</doc>
  9032. <type name="gpointer" c:type="gpointer"/>
  9033. </parameter>
  9034. </parameters>
  9035. </method>
  9036. <method name="next_part_finish"
  9037. c:identifier="soup_multipart_input_stream_next_part_finish"
  9038. version="2.40"
  9039. throws="1">
  9040. <doc xml:space="preserve">Finishes an asynchronous request for the next part.</doc>
  9041. <return-value transfer-ownership="full" nullable="1">
  9042. <doc xml:space="preserve">a newly created
  9043. #GInputStream for reading the next part or %NULL if there are no
  9044. more parts.</doc>
  9045. <type name="Gio.InputStream" c:type="GInputStream*"/>
  9046. </return-value>
  9047. <parameters>
  9048. <instance-parameter name="multipart" transfer-ownership="none">
  9049. <doc xml:space="preserve">a #SoupMultipartInputStream.</doc>
  9050. <type name="MultipartInputStream"
  9051. c:type="SoupMultipartInputStream*"/>
  9052. </instance-parameter>
  9053. <parameter name="result" transfer-ownership="none">
  9054. <doc xml:space="preserve">a #GAsyncResult.</doc>
  9055. <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
  9056. </parameter>
  9057. </parameters>
  9058. </method>
  9059. <property name="message"
  9060. writable="1"
  9061. construct-only="1"
  9062. transfer-ownership="none">
  9063. <type name="Message"/>
  9064. </property>
  9065. <field name="parent_instance">
  9066. <type name="Gio.FilterInputStream" c:type="GFilterInputStream"/>
  9067. </field>
  9068. <field name="priv" readable="0" private="1">
  9069. <type name="MultipartInputStreamPrivate"
  9070. c:type="SoupMultipartInputStreamPrivate*"/>
  9071. </field>
  9072. </class>
  9073. <record name="MultipartInputStreamClass"
  9074. c:type="SoupMultipartInputStreamClass"
  9075. glib:is-gtype-struct-for="MultipartInputStream">
  9076. <field name="parent_class">
  9077. <type name="Gio.FilterInputStreamClass"
  9078. c:type="GFilterInputStreamClass"/>
  9079. </field>
  9080. </record>
  9081. <record name="MultipartInputStreamPrivate"
  9082. c:type="SoupMultipartInputStreamPrivate"
  9083. disguised="1">
  9084. </record>
  9085. <constant name="PASSWORD_MANAGER_H"
  9086. value="1"
  9087. c:type="SOUP_PASSWORD_MANAGER_H">
  9088. <type name="gint" c:type="gint"/>
  9089. </constant>
  9090. <constant name="PROXY_RESOLVER_DEFAULT_H"
  9091. value="1"
  9092. c:type="SOUP_PROXY_RESOLVER_DEFAULT_H">
  9093. <type name="gint" c:type="gint"/>
  9094. </constant>
  9095. <constant name="PROXY_URI_RESOLVER_H"
  9096. value="1"
  9097. c:type="SOUP_PROXY_URI_RESOLVER_H">
  9098. <type name="gint" c:type="gint"/>
  9099. </constant>
  9100. <interface name="PasswordManager"
  9101. c:symbol-prefix="password_manager"
  9102. c:type="SoupPasswordManager"
  9103. glib:type-name="SoupPasswordManager"
  9104. glib:get-type="soup_password_manager_get_type"
  9105. glib:type-struct="PasswordManagerInterface">
  9106. <prerequisite name="SessionFeature"/>
  9107. <virtual-method name="get_passwords_async" invoker="get_passwords_async">
  9108. <return-value transfer-ownership="none">
  9109. <type name="none" c:type="void"/>
  9110. </return-value>
  9111. <parameters>
  9112. <instance-parameter name="password_manager"
  9113. transfer-ownership="none">
  9114. <type name="PasswordManager" c:type="SoupPasswordManager*"/>
  9115. </instance-parameter>
  9116. <parameter name="msg" transfer-ownership="none">
  9117. <type name="Message" c:type="SoupMessage*"/>
  9118. </parameter>
  9119. <parameter name="auth" transfer-ownership="none">
  9120. <type name="Auth" c:type="SoupAuth*"/>
  9121. </parameter>
  9122. <parameter name="retrying" transfer-ownership="none">
  9123. <type name="gboolean" c:type="gboolean"/>
  9124. </parameter>
  9125. <parameter name="async_context" transfer-ownership="none">
  9126. <type name="GLib.MainContext" c:type="GMainContext*"/>
  9127. </parameter>
  9128. <parameter name="cancellable"
  9129. transfer-ownership="none"
  9130. nullable="1"
  9131. allow-none="1">
  9132. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9133. </parameter>
  9134. <parameter name="callback"
  9135. transfer-ownership="none"
  9136. scope="async"
  9137. closure="6">
  9138. <type name="PasswordManagerCallback"
  9139. c:type="SoupPasswordManagerCallback"/>
  9140. </parameter>
  9141. <parameter name="user_data"
  9142. transfer-ownership="none"
  9143. nullable="1"
  9144. allow-none="1"
  9145. closure="6">
  9146. <type name="gpointer" c:type="gpointer"/>
  9147. </parameter>
  9148. </parameters>
  9149. </virtual-method>
  9150. <virtual-method name="get_passwords_sync" invoker="get_passwords_sync">
  9151. <return-value transfer-ownership="none">
  9152. <type name="none" c:type="void"/>
  9153. </return-value>
  9154. <parameters>
  9155. <instance-parameter name="password_manager"
  9156. transfer-ownership="none">
  9157. <type name="PasswordManager" c:type="SoupPasswordManager*"/>
  9158. </instance-parameter>
  9159. <parameter name="msg" transfer-ownership="none">
  9160. <type name="Message" c:type="SoupMessage*"/>
  9161. </parameter>
  9162. <parameter name="auth" transfer-ownership="none">
  9163. <type name="Auth" c:type="SoupAuth*"/>
  9164. </parameter>
  9165. <parameter name="cancellable"
  9166. transfer-ownership="none"
  9167. nullable="1"
  9168. allow-none="1">
  9169. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9170. </parameter>
  9171. </parameters>
  9172. </virtual-method>
  9173. <method name="get_passwords_async"
  9174. c:identifier="soup_password_manager_get_passwords_async">
  9175. <return-value transfer-ownership="none">
  9176. <type name="none" c:type="void"/>
  9177. </return-value>
  9178. <parameters>
  9179. <instance-parameter name="password_manager"
  9180. transfer-ownership="none">
  9181. <type name="PasswordManager" c:type="SoupPasswordManager*"/>
  9182. </instance-parameter>
  9183. <parameter name="msg" transfer-ownership="none">
  9184. <type name="Message" c:type="SoupMessage*"/>
  9185. </parameter>
  9186. <parameter name="auth" transfer-ownership="none">
  9187. <type name="Auth" c:type="SoupAuth*"/>
  9188. </parameter>
  9189. <parameter name="retrying" transfer-ownership="none">
  9190. <type name="gboolean" c:type="gboolean"/>
  9191. </parameter>
  9192. <parameter name="async_context" transfer-ownership="none">
  9193. <type name="GLib.MainContext" c:type="GMainContext*"/>
  9194. </parameter>
  9195. <parameter name="cancellable"
  9196. transfer-ownership="none"
  9197. nullable="1"
  9198. allow-none="1">
  9199. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9200. </parameter>
  9201. <parameter name="callback"
  9202. transfer-ownership="none"
  9203. scope="async"
  9204. closure="6">
  9205. <type name="PasswordManagerCallback"
  9206. c:type="SoupPasswordManagerCallback"/>
  9207. </parameter>
  9208. <parameter name="user_data"
  9209. transfer-ownership="none"
  9210. nullable="1"
  9211. allow-none="1">
  9212. <type name="gpointer" c:type="gpointer"/>
  9213. </parameter>
  9214. </parameters>
  9215. </method>
  9216. <method name="get_passwords_sync"
  9217. c:identifier="soup_password_manager_get_passwords_sync">
  9218. <return-value transfer-ownership="none">
  9219. <type name="none" c:type="void"/>
  9220. </return-value>
  9221. <parameters>
  9222. <instance-parameter name="password_manager"
  9223. transfer-ownership="none">
  9224. <type name="PasswordManager" c:type="SoupPasswordManager*"/>
  9225. </instance-parameter>
  9226. <parameter name="msg" transfer-ownership="none">
  9227. <type name="Message" c:type="SoupMessage*"/>
  9228. </parameter>
  9229. <parameter name="auth" transfer-ownership="none">
  9230. <type name="Auth" c:type="SoupAuth*"/>
  9231. </parameter>
  9232. <parameter name="cancellable"
  9233. transfer-ownership="none"
  9234. nullable="1"
  9235. allow-none="1">
  9236. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9237. </parameter>
  9238. </parameters>
  9239. </method>
  9240. </interface>
  9241. <callback name="PasswordManagerCallback"
  9242. c:type="SoupPasswordManagerCallback">
  9243. <return-value transfer-ownership="none">
  9244. <type name="none" c:type="void"/>
  9245. </return-value>
  9246. <parameters>
  9247. <parameter name="password_manager" transfer-ownership="none">
  9248. <type name="PasswordManager" c:type="SoupPasswordManager*"/>
  9249. </parameter>
  9250. <parameter name="msg" transfer-ownership="none">
  9251. <type name="Message" c:type="SoupMessage*"/>
  9252. </parameter>
  9253. <parameter name="auth" transfer-ownership="none">
  9254. <type name="Auth" c:type="SoupAuth*"/>
  9255. </parameter>
  9256. <parameter name="retrying" transfer-ownership="none">
  9257. <type name="gboolean" c:type="gboolean"/>
  9258. </parameter>
  9259. <parameter name="user_data"
  9260. transfer-ownership="none"
  9261. nullable="1"
  9262. allow-none="1"
  9263. closure="4">
  9264. <type name="gpointer" c:type="gpointer"/>
  9265. </parameter>
  9266. </parameters>
  9267. </callback>
  9268. <record name="PasswordManagerInterface"
  9269. c:type="SoupPasswordManagerInterface"
  9270. glib:is-gtype-struct-for="PasswordManager">
  9271. <field name="base">
  9272. <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
  9273. </field>
  9274. <field name="get_passwords_async">
  9275. <callback name="get_passwords_async">
  9276. <return-value transfer-ownership="none">
  9277. <type name="none" c:type="void"/>
  9278. </return-value>
  9279. <parameters>
  9280. <parameter name="password_manager" transfer-ownership="none">
  9281. <type name="PasswordManager" c:type="SoupPasswordManager*"/>
  9282. </parameter>
  9283. <parameter name="msg" transfer-ownership="none">
  9284. <type name="Message" c:type="SoupMessage*"/>
  9285. </parameter>
  9286. <parameter name="auth" transfer-ownership="none">
  9287. <type name="Auth" c:type="SoupAuth*"/>
  9288. </parameter>
  9289. <parameter name="retrying" transfer-ownership="none">
  9290. <type name="gboolean" c:type="gboolean"/>
  9291. </parameter>
  9292. <parameter name="async_context" transfer-ownership="none">
  9293. <type name="GLib.MainContext" c:type="GMainContext*"/>
  9294. </parameter>
  9295. <parameter name="cancellable"
  9296. transfer-ownership="none"
  9297. nullable="1"
  9298. allow-none="1">
  9299. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9300. </parameter>
  9301. <parameter name="callback"
  9302. transfer-ownership="none"
  9303. scope="async"
  9304. closure="7">
  9305. <type name="PasswordManagerCallback"
  9306. c:type="SoupPasswordManagerCallback"/>
  9307. </parameter>
  9308. <parameter name="user_data"
  9309. transfer-ownership="none"
  9310. nullable="1"
  9311. allow-none="1"
  9312. closure="7">
  9313. <type name="gpointer" c:type="gpointer"/>
  9314. </parameter>
  9315. </parameters>
  9316. </callback>
  9317. </field>
  9318. <field name="get_passwords_sync">
  9319. <callback name="get_passwords_sync">
  9320. <return-value transfer-ownership="none">
  9321. <type name="none" c:type="void"/>
  9322. </return-value>
  9323. <parameters>
  9324. <parameter name="password_manager" transfer-ownership="none">
  9325. <type name="PasswordManager" c:type="SoupPasswordManager*"/>
  9326. </parameter>
  9327. <parameter name="msg" transfer-ownership="none">
  9328. <type name="Message" c:type="SoupMessage*"/>
  9329. </parameter>
  9330. <parameter name="auth" transfer-ownership="none">
  9331. <type name="Auth" c:type="SoupAuth*"/>
  9332. </parameter>
  9333. <parameter name="cancellable"
  9334. transfer-ownership="none"
  9335. nullable="1"
  9336. allow-none="1">
  9337. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9338. </parameter>
  9339. </parameters>
  9340. </callback>
  9341. </field>
  9342. </record>
  9343. <class name="ProxyResolverDefault"
  9344. c:symbol-prefix="proxy_resolver_default"
  9345. c:type="SoupProxyResolverDefault"
  9346. parent="GObject.Object"
  9347. glib:type-name="SoupProxyResolverDefault"
  9348. glib:get-type="soup_proxy_resolver_default_get_type"
  9349. glib:type-struct="ProxyResolverDefaultClass">
  9350. <implements name="ProxyURIResolver"/>
  9351. <implements name="SessionFeature"/>
  9352. <property name="gproxy-resolver"
  9353. readable="0"
  9354. writable="1"
  9355. transfer-ownership="none">
  9356. <type name="Gio.ProxyResolver"/>
  9357. </property>
  9358. <field name="parent">
  9359. <type name="GObject.Object" c:type="GObject"/>
  9360. </field>
  9361. </class>
  9362. <record name="ProxyResolverDefaultClass"
  9363. c:type="SoupProxyResolverDefaultClass"
  9364. glib:is-gtype-struct-for="ProxyResolverDefault">
  9365. <field name="parent_class">
  9366. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  9367. </field>
  9368. </record>
  9369. <interface name="ProxyURIResolver"
  9370. c:symbol-prefix="proxy_uri_resolver"
  9371. c:type="SoupProxyURIResolver"
  9372. glib:type-name="SoupProxyURIResolver"
  9373. glib:get-type="soup_proxy_uri_resolver_get_type"
  9374. glib:type-struct="ProxyURIResolverInterface">
  9375. <prerequisite name="SessionFeature"/>
  9376. <virtual-method name="get_proxy_uri_async"
  9377. invoker="get_proxy_uri_async"
  9378. version="2.26.3"
  9379. deprecated="1">
  9380. <doc xml:space="preserve">Asynchronously determines a proxy URI to use for @msg and calls
  9381. @callback.</doc>
  9382. <doc-deprecated xml:space="preserve">#SoupProxyURIResolver is deprecated in favor of
  9383. #GProxyResolver</doc-deprecated>
  9384. <return-value transfer-ownership="none">
  9385. <type name="none" c:type="void"/>
  9386. </return-value>
  9387. <parameters>
  9388. <instance-parameter name="proxy_uri_resolver"
  9389. transfer-ownership="none">
  9390. <doc xml:space="preserve">the #SoupProxyURIResolver</doc>
  9391. <type name="ProxyURIResolver" c:type="SoupProxyURIResolver*"/>
  9392. </instance-parameter>
  9393. <parameter name="uri" transfer-ownership="none">
  9394. <doc xml:space="preserve">the #SoupURI you want a proxy for</doc>
  9395. <type name="URI" c:type="SoupURI*"/>
  9396. </parameter>
  9397. <parameter name="async_context"
  9398. transfer-ownership="none"
  9399. nullable="1"
  9400. allow-none="1">
  9401. <doc xml:space="preserve">the #GMainContext to invoke @callback in</doc>
  9402. <type name="GLib.MainContext" c:type="GMainContext*"/>
  9403. </parameter>
  9404. <parameter name="cancellable"
  9405. transfer-ownership="none"
  9406. nullable="1"
  9407. allow-none="1">
  9408. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  9409. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9410. </parameter>
  9411. <parameter name="callback"
  9412. transfer-ownership="none"
  9413. scope="async"
  9414. closure="4">
  9415. <doc xml:space="preserve">callback to invoke with the proxy address</doc>
  9416. <type name="ProxyURIResolverCallback"
  9417. c:type="SoupProxyURIResolverCallback"/>
  9418. </parameter>
  9419. <parameter name="user_data"
  9420. transfer-ownership="none"
  9421. nullable="1"
  9422. allow-none="1"
  9423. closure="4">
  9424. <doc xml:space="preserve">data for @callback</doc>
  9425. <type name="gpointer" c:type="gpointer"/>
  9426. </parameter>
  9427. </parameters>
  9428. </virtual-method>
  9429. <virtual-method name="get_proxy_uri_sync"
  9430. invoker="get_proxy_uri_sync"
  9431. version="2.26.3"
  9432. deprecated="1">
  9433. <doc xml:space="preserve">Synchronously determines a proxy URI to use for @uri. If @uri
  9434. should be sent via proxy, *@proxy_uri will be set to the URI of the
  9435. proxy, else it will be set to %NULL.</doc>
  9436. <doc-deprecated xml:space="preserve">#SoupProxyURIResolver is deprecated in favor of
  9437. #GProxyResolver</doc-deprecated>
  9438. <return-value transfer-ownership="none">
  9439. <doc xml:space="preserve">%SOUP_STATUS_OK if successful, or a transport-level
  9440. error.</doc>
  9441. <type name="guint" c:type="guint"/>
  9442. </return-value>
  9443. <parameters>
  9444. <instance-parameter name="proxy_uri_resolver"
  9445. transfer-ownership="none">
  9446. <doc xml:space="preserve">the #SoupProxyURIResolver</doc>
  9447. <type name="ProxyURIResolver" c:type="SoupProxyURIResolver*"/>
  9448. </instance-parameter>
  9449. <parameter name="uri" transfer-ownership="none">
  9450. <doc xml:space="preserve">the #SoupURI you want a proxy for</doc>
  9451. <type name="URI" c:type="SoupURI*"/>
  9452. </parameter>
  9453. <parameter name="cancellable"
  9454. transfer-ownership="none"
  9455. nullable="1"
  9456. allow-none="1">
  9457. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  9458. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9459. </parameter>
  9460. <parameter name="proxy_uri"
  9461. direction="out"
  9462. caller-allocates="0"
  9463. transfer-ownership="full">
  9464. <doc xml:space="preserve">on return, will contain the proxy URI</doc>
  9465. <type name="URI" c:type="SoupURI**"/>
  9466. </parameter>
  9467. </parameters>
  9468. </virtual-method>
  9469. <method name="get_proxy_uri_async"
  9470. c:identifier="soup_proxy_uri_resolver_get_proxy_uri_async"
  9471. version="2.26.3"
  9472. deprecated="1">
  9473. <doc xml:space="preserve">Asynchronously determines a proxy URI to use for @msg and calls
  9474. @callback.</doc>
  9475. <doc-deprecated xml:space="preserve">#SoupProxyURIResolver is deprecated in favor of
  9476. #GProxyResolver</doc-deprecated>
  9477. <return-value transfer-ownership="none">
  9478. <type name="none" c:type="void"/>
  9479. </return-value>
  9480. <parameters>
  9481. <instance-parameter name="proxy_uri_resolver"
  9482. transfer-ownership="none">
  9483. <doc xml:space="preserve">the #SoupProxyURIResolver</doc>
  9484. <type name="ProxyURIResolver" c:type="SoupProxyURIResolver*"/>
  9485. </instance-parameter>
  9486. <parameter name="uri" transfer-ownership="none">
  9487. <doc xml:space="preserve">the #SoupURI you want a proxy for</doc>
  9488. <type name="URI" c:type="SoupURI*"/>
  9489. </parameter>
  9490. <parameter name="async_context"
  9491. transfer-ownership="none"
  9492. nullable="1"
  9493. allow-none="1">
  9494. <doc xml:space="preserve">the #GMainContext to invoke @callback in</doc>
  9495. <type name="GLib.MainContext" c:type="GMainContext*"/>
  9496. </parameter>
  9497. <parameter name="cancellable"
  9498. transfer-ownership="none"
  9499. nullable="1"
  9500. allow-none="1">
  9501. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  9502. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9503. </parameter>
  9504. <parameter name="callback"
  9505. transfer-ownership="none"
  9506. scope="async"
  9507. closure="4">
  9508. <doc xml:space="preserve">callback to invoke with the proxy address</doc>
  9509. <type name="ProxyURIResolverCallback"
  9510. c:type="SoupProxyURIResolverCallback"/>
  9511. </parameter>
  9512. <parameter name="user_data"
  9513. transfer-ownership="none"
  9514. nullable="1"
  9515. allow-none="1">
  9516. <doc xml:space="preserve">data for @callback</doc>
  9517. <type name="gpointer" c:type="gpointer"/>
  9518. </parameter>
  9519. </parameters>
  9520. </method>
  9521. <method name="get_proxy_uri_sync"
  9522. c:identifier="soup_proxy_uri_resolver_get_proxy_uri_sync"
  9523. version="2.26.3"
  9524. deprecated="1">
  9525. <doc xml:space="preserve">Synchronously determines a proxy URI to use for @uri. If @uri
  9526. should be sent via proxy, *@proxy_uri will be set to the URI of the
  9527. proxy, else it will be set to %NULL.</doc>
  9528. <doc-deprecated xml:space="preserve">#SoupProxyURIResolver is deprecated in favor of
  9529. #GProxyResolver</doc-deprecated>
  9530. <return-value transfer-ownership="none">
  9531. <doc xml:space="preserve">%SOUP_STATUS_OK if successful, or a transport-level
  9532. error.</doc>
  9533. <type name="guint" c:type="guint"/>
  9534. </return-value>
  9535. <parameters>
  9536. <instance-parameter name="proxy_uri_resolver"
  9537. transfer-ownership="none">
  9538. <doc xml:space="preserve">the #SoupProxyURIResolver</doc>
  9539. <type name="ProxyURIResolver" c:type="SoupProxyURIResolver*"/>
  9540. </instance-parameter>
  9541. <parameter name="uri" transfer-ownership="none">
  9542. <doc xml:space="preserve">the #SoupURI you want a proxy for</doc>
  9543. <type name="URI" c:type="SoupURI*"/>
  9544. </parameter>
  9545. <parameter name="cancellable"
  9546. transfer-ownership="none"
  9547. nullable="1"
  9548. allow-none="1">
  9549. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  9550. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9551. </parameter>
  9552. <parameter name="proxy_uri"
  9553. direction="out"
  9554. caller-allocates="0"
  9555. transfer-ownership="full">
  9556. <doc xml:space="preserve">on return, will contain the proxy URI</doc>
  9557. <type name="URI" c:type="SoupURI**"/>
  9558. </parameter>
  9559. </parameters>
  9560. </method>
  9561. </interface>
  9562. <callback name="ProxyURIResolverCallback"
  9563. c:type="SoupProxyURIResolverCallback">
  9564. <doc xml:space="preserve">Callback for soup_proxy_uri_resolver_get_proxy_uri_async()</doc>
  9565. <return-value transfer-ownership="none">
  9566. <type name="none" c:type="void"/>
  9567. </return-value>
  9568. <parameters>
  9569. <parameter name="resolver" transfer-ownership="none">
  9570. <doc xml:space="preserve">the #SoupProxyURIResolver</doc>
  9571. <type name="ProxyURIResolver" c:type="SoupProxyURIResolver*"/>
  9572. </parameter>
  9573. <parameter name="status" transfer-ownership="none">
  9574. <doc xml:space="preserve">a #SoupStatus</doc>
  9575. <type name="guint" c:type="guint"/>
  9576. </parameter>
  9577. <parameter name="proxy_uri" transfer-ownership="none">
  9578. <doc xml:space="preserve">the resolved proxy URI, or %NULL</doc>
  9579. <type name="URI" c:type="SoupURI*"/>
  9580. </parameter>
  9581. <parameter name="user_data"
  9582. transfer-ownership="none"
  9583. nullable="1"
  9584. allow-none="1"
  9585. closure="3">
  9586. <doc xml:space="preserve">data passed to soup_proxy_uri_resolver_get_proxy_uri_async()</doc>
  9587. <type name="gpointer" c:type="gpointer"/>
  9588. </parameter>
  9589. </parameters>
  9590. </callback>
  9591. <record name="ProxyURIResolverInterface"
  9592. c:type="SoupProxyURIResolverInterface"
  9593. glib:is-gtype-struct-for="ProxyURIResolver">
  9594. <field name="base">
  9595. <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
  9596. </field>
  9597. <field name="get_proxy_uri_async">
  9598. <callback name="get_proxy_uri_async">
  9599. <return-value transfer-ownership="none">
  9600. <type name="none" c:type="void"/>
  9601. </return-value>
  9602. <parameters>
  9603. <parameter name="proxy_uri_resolver" transfer-ownership="none">
  9604. <doc xml:space="preserve">the #SoupProxyURIResolver</doc>
  9605. <type name="ProxyURIResolver" c:type="SoupProxyURIResolver*"/>
  9606. </parameter>
  9607. <parameter name="uri" transfer-ownership="none">
  9608. <doc xml:space="preserve">the #SoupURI you want a proxy for</doc>
  9609. <type name="URI" c:type="SoupURI*"/>
  9610. </parameter>
  9611. <parameter name="async_context"
  9612. transfer-ownership="none"
  9613. nullable="1"
  9614. allow-none="1">
  9615. <doc xml:space="preserve">the #GMainContext to invoke @callback in</doc>
  9616. <type name="GLib.MainContext" c:type="GMainContext*"/>
  9617. </parameter>
  9618. <parameter name="cancellable"
  9619. transfer-ownership="none"
  9620. nullable="1"
  9621. allow-none="1">
  9622. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  9623. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9624. </parameter>
  9625. <parameter name="callback"
  9626. transfer-ownership="none"
  9627. scope="async"
  9628. closure="5">
  9629. <doc xml:space="preserve">callback to invoke with the proxy address</doc>
  9630. <type name="ProxyURIResolverCallback"
  9631. c:type="SoupProxyURIResolverCallback"/>
  9632. </parameter>
  9633. <parameter name="user_data"
  9634. transfer-ownership="none"
  9635. nullable="1"
  9636. allow-none="1"
  9637. closure="5">
  9638. <doc xml:space="preserve">data for @callback</doc>
  9639. <type name="gpointer" c:type="gpointer"/>
  9640. </parameter>
  9641. </parameters>
  9642. </callback>
  9643. </field>
  9644. <field name="get_proxy_uri_sync">
  9645. <callback name="get_proxy_uri_sync">
  9646. <return-value transfer-ownership="none">
  9647. <doc xml:space="preserve">%SOUP_STATUS_OK if successful, or a transport-level
  9648. error.</doc>
  9649. <type name="guint" c:type="guint"/>
  9650. </return-value>
  9651. <parameters>
  9652. <parameter name="proxy_uri_resolver" transfer-ownership="none">
  9653. <doc xml:space="preserve">the #SoupProxyURIResolver</doc>
  9654. <type name="ProxyURIResolver" c:type="SoupProxyURIResolver*"/>
  9655. </parameter>
  9656. <parameter name="uri" transfer-ownership="none">
  9657. <doc xml:space="preserve">the #SoupURI you want a proxy for</doc>
  9658. <type name="URI" c:type="SoupURI*"/>
  9659. </parameter>
  9660. <parameter name="cancellable"
  9661. transfer-ownership="none"
  9662. nullable="1"
  9663. allow-none="1">
  9664. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  9665. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9666. </parameter>
  9667. <parameter name="proxy_uri"
  9668. direction="out"
  9669. caller-allocates="0"
  9670. transfer-ownership="full">
  9671. <doc xml:space="preserve">on return, will contain the proxy URI</doc>
  9672. <type name="URI" c:type="SoupURI**"/>
  9673. </parameter>
  9674. </parameters>
  9675. </callback>
  9676. </field>
  9677. <field name="_libsoup_reserved1" introspectable="0">
  9678. <callback name="_libsoup_reserved1">
  9679. <return-value transfer-ownership="none">
  9680. <type name="none" c:type="void"/>
  9681. </return-value>
  9682. </callback>
  9683. </field>
  9684. <field name="_libsoup_reserved2" introspectable="0">
  9685. <callback name="_libsoup_reserved2">
  9686. <return-value transfer-ownership="none">
  9687. <type name="none" c:type="void"/>
  9688. </return-value>
  9689. </callback>
  9690. </field>
  9691. <field name="_libsoup_reserved3" introspectable="0">
  9692. <callback name="_libsoup_reserved3">
  9693. <return-value transfer-ownership="none">
  9694. <type name="none" c:type="void"/>
  9695. </return-value>
  9696. </callback>
  9697. </field>
  9698. <field name="_libsoup_reserved4" introspectable="0">
  9699. <callback name="_libsoup_reserved4">
  9700. <return-value transfer-ownership="none">
  9701. <type name="none" c:type="void"/>
  9702. </return-value>
  9703. </callback>
  9704. </field>
  9705. </record>
  9706. <constant name="REQUESTER_H" value="1" c:type="SOUP_REQUESTER_H">
  9707. <type name="gint" c:type="gint"/>
  9708. </constant>
  9709. <constant name="REQUEST_DATA_H" value="1" c:type="SOUP_REQUEST_DATA_H">
  9710. <type name="gint" c:type="gint"/>
  9711. </constant>
  9712. <constant name="REQUEST_FILE_H" value="1" c:type="SOUP_REQUEST_FILE_H">
  9713. <type name="gint" c:type="gint"/>
  9714. </constant>
  9715. <constant name="REQUEST_H" value="1" c:type="SOUP_REQUEST_H">
  9716. <type name="gint" c:type="gint"/>
  9717. </constant>
  9718. <constant name="REQUEST_HTTP_H" value="1" c:type="SOUP_REQUEST_HTTP_H">
  9719. <type name="gint" c:type="gint"/>
  9720. </constant>
  9721. <constant name="REQUEST_SESSION"
  9722. value="session"
  9723. c:type="SOUP_REQUEST_SESSION"
  9724. version="2.42">
  9725. <doc xml:space="preserve">Alias for the #SoupRequest:session property, qv.</doc>
  9726. <type name="utf8" c:type="gchar*"/>
  9727. </constant>
  9728. <constant name="REQUEST_URI"
  9729. value="uri"
  9730. c:type="SOUP_REQUEST_URI"
  9731. version="2.42">
  9732. <doc xml:space="preserve">Alias for the #SoupRequest:uri property, qv.</doc>
  9733. <type name="utf8" c:type="gchar*"/>
  9734. </constant>
  9735. <record name="Range" c:type="SoupRange" version="2.26">
  9736. <doc xml:space="preserve">Represents a byte range as used in the Range header.
  9737. If @end is non-negative, then @start and @end represent the bounds
  9738. of of the range, counting from 0. (Eg, the first 500 bytes would be
  9739. represented as @start = 0 and @end = 499.)
  9740. If @end is -1 and @start is non-negative, then this represents a
  9741. range starting at @start and ending with the last byte of the
  9742. requested resource body. (Eg, all but the first 500 bytes would be
  9743. @start = 500, and @end = -1.)
  9744. If @end is -1 and @start is negative, then it represents a "suffix
  9745. range", referring to the last -@start bytes of the resource body.
  9746. (Eg, the last 500 bytes would be @start = -500 and @end = -1.)</doc>
  9747. <field name="start" writable="1">
  9748. <doc xml:space="preserve">the start of the range</doc>
  9749. <type name="gint64" c:type="goffset"/>
  9750. </field>
  9751. <field name="end" writable="1">
  9752. <doc xml:space="preserve">the end of the range</doc>
  9753. <type name="gint64" c:type="goffset"/>
  9754. </field>
  9755. </record>
  9756. <class name="Request"
  9757. c:symbol-prefix="request"
  9758. c:type="SoupRequest"
  9759. version="2.42"
  9760. parent="GObject.Object"
  9761. glib:type-name="SoupRequest"
  9762. glib:get-type="soup_request_get_type"
  9763. glib:type-struct="RequestClass">
  9764. <doc xml:space="preserve">A request to retrieve a particular URI.</doc>
  9765. <implements name="Gio.Initable"/>
  9766. <virtual-method name="check_uri" throws="1">
  9767. <return-value transfer-ownership="none">
  9768. <type name="gboolean" c:type="gboolean"/>
  9769. </return-value>
  9770. <parameters>
  9771. <instance-parameter name="req_base" transfer-ownership="none">
  9772. <type name="Request" c:type="SoupRequest*"/>
  9773. </instance-parameter>
  9774. <parameter name="uri" transfer-ownership="none">
  9775. <type name="URI" c:type="SoupURI*"/>
  9776. </parameter>
  9777. </parameters>
  9778. </virtual-method>
  9779. <virtual-method name="get_content_length"
  9780. invoker="get_content_length"
  9781. version="2.42">
  9782. <doc xml:space="preserve">Gets the length of the data represented by @request. For most
  9783. request types, this will not be known until after you call
  9784. soup_request_send() or soup_request_send_finish().</doc>
  9785. <return-value transfer-ownership="none">
  9786. <doc xml:space="preserve">the length of the data represented by @request,
  9787. or -1 if not known.</doc>
  9788. <type name="gint64" c:type="goffset"/>
  9789. </return-value>
  9790. <parameters>
  9791. <instance-parameter name="request" transfer-ownership="none">
  9792. <doc xml:space="preserve">a #SoupRequest</doc>
  9793. <type name="Request" c:type="SoupRequest*"/>
  9794. </instance-parameter>
  9795. </parameters>
  9796. </virtual-method>
  9797. <virtual-method name="get_content_type"
  9798. invoker="get_content_type"
  9799. version="2.42">
  9800. <doc xml:space="preserve">Gets the type of the data represented by @request. For most request
  9801. types, this will not be known until after you call
  9802. soup_request_send() or soup_request_send_finish().
  9803. As in the HTTP Content-Type header, this may include parameters
  9804. after the MIME type.</doc>
  9805. <return-value transfer-ownership="none" nullable="1">
  9806. <doc xml:space="preserve">the type of the data represented by
  9807. @request, or %NULL if not known.</doc>
  9808. <type name="utf8" c:type="const char*"/>
  9809. </return-value>
  9810. <parameters>
  9811. <instance-parameter name="request" transfer-ownership="none">
  9812. <doc xml:space="preserve">a #SoupRequest</doc>
  9813. <type name="Request" c:type="SoupRequest*"/>
  9814. </instance-parameter>
  9815. </parameters>
  9816. </virtual-method>
  9817. <virtual-method name="send" invoker="send" version="2.42" throws="1">
  9818. <doc xml:space="preserve">Synchronously requests the URI pointed to by @request, and returns
  9819. a #GInputStream that can be used to read its contents.
  9820. Note that you cannot use this method with #SoupRequests attached to
  9821. a #SoupSessionAsync.</doc>
  9822. <return-value transfer-ownership="full">
  9823. <doc xml:space="preserve">a #GInputStream that can be used to
  9824. read from the URI pointed to by @request.</doc>
  9825. <type name="Gio.InputStream" c:type="GInputStream*"/>
  9826. </return-value>
  9827. <parameters>
  9828. <instance-parameter name="request" transfer-ownership="none">
  9829. <doc xml:space="preserve">a #SoupRequest</doc>
  9830. <type name="Request" c:type="SoupRequest*"/>
  9831. </instance-parameter>
  9832. <parameter name="cancellable"
  9833. transfer-ownership="none"
  9834. nullable="1"
  9835. allow-none="1">
  9836. <doc xml:space="preserve">a #GCancellable or %NULL</doc>
  9837. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9838. </parameter>
  9839. </parameters>
  9840. </virtual-method>
  9841. <virtual-method name="send_async" invoker="send_async" version="2.42">
  9842. <doc xml:space="preserve">Begins an asynchronously request for the URI pointed to by
  9843. @request.
  9844. Note that you cannot use this method with #SoupRequests attached to
  9845. a #SoupSessionSync.</doc>
  9846. <return-value transfer-ownership="none">
  9847. <type name="none" c:type="void"/>
  9848. </return-value>
  9849. <parameters>
  9850. <instance-parameter name="request" transfer-ownership="none">
  9851. <doc xml:space="preserve">a #SoupRequest</doc>
  9852. <type name="Request" c:type="SoupRequest*"/>
  9853. </instance-parameter>
  9854. <parameter name="cancellable"
  9855. transfer-ownership="none"
  9856. nullable="1"
  9857. allow-none="1">
  9858. <doc xml:space="preserve">a #GCancellable or %NULL</doc>
  9859. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9860. </parameter>
  9861. <parameter name="callback"
  9862. transfer-ownership="none"
  9863. nullable="1"
  9864. allow-none="1"
  9865. scope="async"
  9866. closure="2">
  9867. <doc xml:space="preserve">a #GAsyncReadyCallback</doc>
  9868. <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
  9869. </parameter>
  9870. <parameter name="user_data"
  9871. transfer-ownership="none"
  9872. nullable="1"
  9873. allow-none="1"
  9874. closure="2">
  9875. <doc xml:space="preserve">user data passed to @callback</doc>
  9876. <type name="gpointer" c:type="gpointer"/>
  9877. </parameter>
  9878. </parameters>
  9879. </virtual-method>
  9880. <virtual-method name="send_finish"
  9881. invoker="send_finish"
  9882. version="2.42"
  9883. throws="1">
  9884. <doc xml:space="preserve">Gets the result of a soup_request_send_async().</doc>
  9885. <return-value transfer-ownership="full">
  9886. <doc xml:space="preserve">a #GInputStream that can be used to
  9887. read from the URI pointed to by @request.</doc>
  9888. <type name="Gio.InputStream" c:type="GInputStream*"/>
  9889. </return-value>
  9890. <parameters>
  9891. <instance-parameter name="request" transfer-ownership="none">
  9892. <doc xml:space="preserve">a #SoupRequest</doc>
  9893. <type name="Request" c:type="SoupRequest*"/>
  9894. </instance-parameter>
  9895. <parameter name="result" transfer-ownership="none">
  9896. <doc xml:space="preserve">the #GAsyncResult</doc>
  9897. <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
  9898. </parameter>
  9899. </parameters>
  9900. </virtual-method>
  9901. <method name="get_content_length"
  9902. c:identifier="soup_request_get_content_length"
  9903. version="2.42">
  9904. <doc xml:space="preserve">Gets the length of the data represented by @request. For most
  9905. request types, this will not be known until after you call
  9906. soup_request_send() or soup_request_send_finish().</doc>
  9907. <return-value transfer-ownership="none">
  9908. <doc xml:space="preserve">the length of the data represented by @request,
  9909. or -1 if not known.</doc>
  9910. <type name="gint64" c:type="goffset"/>
  9911. </return-value>
  9912. <parameters>
  9913. <instance-parameter name="request" transfer-ownership="none">
  9914. <doc xml:space="preserve">a #SoupRequest</doc>
  9915. <type name="Request" c:type="SoupRequest*"/>
  9916. </instance-parameter>
  9917. </parameters>
  9918. </method>
  9919. <method name="get_content_type"
  9920. c:identifier="soup_request_get_content_type"
  9921. version="2.42">
  9922. <doc xml:space="preserve">Gets the type of the data represented by @request. For most request
  9923. types, this will not be known until after you call
  9924. soup_request_send() or soup_request_send_finish().
  9925. As in the HTTP Content-Type header, this may include parameters
  9926. after the MIME type.</doc>
  9927. <return-value transfer-ownership="none" nullable="1">
  9928. <doc xml:space="preserve">the type of the data represented by
  9929. @request, or %NULL if not known.</doc>
  9930. <type name="utf8" c:type="const char*"/>
  9931. </return-value>
  9932. <parameters>
  9933. <instance-parameter name="request" transfer-ownership="none">
  9934. <doc xml:space="preserve">a #SoupRequest</doc>
  9935. <type name="Request" c:type="SoupRequest*"/>
  9936. </instance-parameter>
  9937. </parameters>
  9938. </method>
  9939. <method name="get_session"
  9940. c:identifier="soup_request_get_session"
  9941. version="2.42">
  9942. <doc xml:space="preserve">Gets @request's #SoupSession</doc>
  9943. <return-value transfer-ownership="none">
  9944. <doc xml:space="preserve">@request's #SoupSession</doc>
  9945. <type name="Session" c:type="SoupSession*"/>
  9946. </return-value>
  9947. <parameters>
  9948. <instance-parameter name="request" transfer-ownership="none">
  9949. <doc xml:space="preserve">a #SoupRequest</doc>
  9950. <type name="Request" c:type="SoupRequest*"/>
  9951. </instance-parameter>
  9952. </parameters>
  9953. </method>
  9954. <method name="get_uri"
  9955. c:identifier="soup_request_get_uri"
  9956. version="2.42">
  9957. <doc xml:space="preserve">Gets @request's URI</doc>
  9958. <return-value transfer-ownership="none">
  9959. <doc xml:space="preserve">@request's URI</doc>
  9960. <type name="URI" c:type="SoupURI*"/>
  9961. </return-value>
  9962. <parameters>
  9963. <instance-parameter name="request" transfer-ownership="none">
  9964. <doc xml:space="preserve">a #SoupRequest</doc>
  9965. <type name="Request" c:type="SoupRequest*"/>
  9966. </instance-parameter>
  9967. </parameters>
  9968. </method>
  9969. <method name="send"
  9970. c:identifier="soup_request_send"
  9971. version="2.42"
  9972. throws="1">
  9973. <doc xml:space="preserve">Synchronously requests the URI pointed to by @request, and returns
  9974. a #GInputStream that can be used to read its contents.
  9975. Note that you cannot use this method with #SoupRequests attached to
  9976. a #SoupSessionAsync.</doc>
  9977. <return-value transfer-ownership="full">
  9978. <doc xml:space="preserve">a #GInputStream that can be used to
  9979. read from the URI pointed to by @request.</doc>
  9980. <type name="Gio.InputStream" c:type="GInputStream*"/>
  9981. </return-value>
  9982. <parameters>
  9983. <instance-parameter name="request" transfer-ownership="none">
  9984. <doc xml:space="preserve">a #SoupRequest</doc>
  9985. <type name="Request" c:type="SoupRequest*"/>
  9986. </instance-parameter>
  9987. <parameter name="cancellable"
  9988. transfer-ownership="none"
  9989. nullable="1"
  9990. allow-none="1">
  9991. <doc xml:space="preserve">a #GCancellable or %NULL</doc>
  9992. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  9993. </parameter>
  9994. </parameters>
  9995. </method>
  9996. <method name="send_async"
  9997. c:identifier="soup_request_send_async"
  9998. version="2.42">
  9999. <doc xml:space="preserve">Begins an asynchronously request for the URI pointed to by
  10000. @request.
  10001. Note that you cannot use this method with #SoupRequests attached to
  10002. a #SoupSessionSync.</doc>
  10003. <return-value transfer-ownership="none">
  10004. <type name="none" c:type="void"/>
  10005. </return-value>
  10006. <parameters>
  10007. <instance-parameter name="request" transfer-ownership="none">
  10008. <doc xml:space="preserve">a #SoupRequest</doc>
  10009. <type name="Request" c:type="SoupRequest*"/>
  10010. </instance-parameter>
  10011. <parameter name="cancellable"
  10012. transfer-ownership="none"
  10013. nullable="1"
  10014. allow-none="1">
  10015. <doc xml:space="preserve">a #GCancellable or %NULL</doc>
  10016. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  10017. </parameter>
  10018. <parameter name="callback"
  10019. transfer-ownership="none"
  10020. nullable="1"
  10021. allow-none="1"
  10022. scope="async"
  10023. closure="2">
  10024. <doc xml:space="preserve">a #GAsyncReadyCallback</doc>
  10025. <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
  10026. </parameter>
  10027. <parameter name="user_data"
  10028. transfer-ownership="none"
  10029. nullable="1"
  10030. allow-none="1">
  10031. <doc xml:space="preserve">user data passed to @callback</doc>
  10032. <type name="gpointer" c:type="gpointer"/>
  10033. </parameter>
  10034. </parameters>
  10035. </method>
  10036. <method name="send_finish"
  10037. c:identifier="soup_request_send_finish"
  10038. version="2.42"
  10039. throws="1">
  10040. <doc xml:space="preserve">Gets the result of a soup_request_send_async().</doc>
  10041. <return-value transfer-ownership="full">
  10042. <doc xml:space="preserve">a #GInputStream that can be used to
  10043. read from the URI pointed to by @request.</doc>
  10044. <type name="Gio.InputStream" c:type="GInputStream*"/>
  10045. </return-value>
  10046. <parameters>
  10047. <instance-parameter name="request" transfer-ownership="none">
  10048. <doc xml:space="preserve">a #SoupRequest</doc>
  10049. <type name="Request" c:type="SoupRequest*"/>
  10050. </instance-parameter>
  10051. <parameter name="result" transfer-ownership="none">
  10052. <doc xml:space="preserve">the #GAsyncResult</doc>
  10053. <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
  10054. </parameter>
  10055. </parameters>
  10056. </method>
  10057. <property name="session"
  10058. version="2.42"
  10059. writable="1"
  10060. construct-only="1"
  10061. transfer-ownership="none">
  10062. <doc xml:space="preserve">The request's #SoupSession.</doc>
  10063. <type name="Session"/>
  10064. </property>
  10065. <property name="uri"
  10066. version="2.42"
  10067. writable="1"
  10068. construct-only="1"
  10069. transfer-ownership="none">
  10070. <doc xml:space="preserve">The request URI.</doc>
  10071. <type name="URI"/>
  10072. </property>
  10073. <field name="parent">
  10074. <type name="GObject.Object" c:type="GObject"/>
  10075. </field>
  10076. <field name="priv">
  10077. <type name="RequestPrivate" c:type="SoupRequestPrivate*"/>
  10078. </field>
  10079. </class>
  10080. <record name="RequestClass"
  10081. c:type="SoupRequestClass"
  10082. glib:is-gtype-struct-for="Request">
  10083. <field name="parent">
  10084. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  10085. </field>
  10086. <field name="schemes">
  10087. <type name="utf8" c:type="const char**"/>
  10088. </field>
  10089. <field name="check_uri">
  10090. <callback name="check_uri" throws="1">
  10091. <return-value transfer-ownership="none">
  10092. <type name="gboolean" c:type="gboolean"/>
  10093. </return-value>
  10094. <parameters>
  10095. <parameter name="req_base" transfer-ownership="none">
  10096. <type name="Request" c:type="SoupRequest*"/>
  10097. </parameter>
  10098. <parameter name="uri" transfer-ownership="none">
  10099. <type name="URI" c:type="SoupURI*"/>
  10100. </parameter>
  10101. </parameters>
  10102. </callback>
  10103. </field>
  10104. <field name="send">
  10105. <callback name="send" throws="1">
  10106. <return-value transfer-ownership="full">
  10107. <doc xml:space="preserve">a #GInputStream that can be used to
  10108. read from the URI pointed to by @request.</doc>
  10109. <type name="Gio.InputStream" c:type="GInputStream*"/>
  10110. </return-value>
  10111. <parameters>
  10112. <parameter name="request" transfer-ownership="none">
  10113. <doc xml:space="preserve">a #SoupRequest</doc>
  10114. <type name="Request" c:type="SoupRequest*"/>
  10115. </parameter>
  10116. <parameter name="cancellable"
  10117. transfer-ownership="none"
  10118. nullable="1"
  10119. allow-none="1">
  10120. <doc xml:space="preserve">a #GCancellable or %NULL</doc>
  10121. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  10122. </parameter>
  10123. </parameters>
  10124. </callback>
  10125. </field>
  10126. <field name="send_async">
  10127. <callback name="send_async">
  10128. <return-value transfer-ownership="none">
  10129. <type name="none" c:type="void"/>
  10130. </return-value>
  10131. <parameters>
  10132. <parameter name="request" transfer-ownership="none">
  10133. <doc xml:space="preserve">a #SoupRequest</doc>
  10134. <type name="Request" c:type="SoupRequest*"/>
  10135. </parameter>
  10136. <parameter name="cancellable"
  10137. transfer-ownership="none"
  10138. nullable="1"
  10139. allow-none="1">
  10140. <doc xml:space="preserve">a #GCancellable or %NULL</doc>
  10141. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  10142. </parameter>
  10143. <parameter name="callback"
  10144. transfer-ownership="none"
  10145. nullable="1"
  10146. allow-none="1"
  10147. scope="async"
  10148. closure="3">
  10149. <doc xml:space="preserve">a #GAsyncReadyCallback</doc>
  10150. <type name="Gio.AsyncReadyCallback"
  10151. c:type="GAsyncReadyCallback"/>
  10152. </parameter>
  10153. <parameter name="user_data"
  10154. transfer-ownership="none"
  10155. nullable="1"
  10156. allow-none="1"
  10157. closure="3">
  10158. <doc xml:space="preserve">user data passed to @callback</doc>
  10159. <type name="gpointer" c:type="gpointer"/>
  10160. </parameter>
  10161. </parameters>
  10162. </callback>
  10163. </field>
  10164. <field name="send_finish">
  10165. <callback name="send_finish" throws="1">
  10166. <return-value transfer-ownership="full">
  10167. <doc xml:space="preserve">a #GInputStream that can be used to
  10168. read from the URI pointed to by @request.</doc>
  10169. <type name="Gio.InputStream" c:type="GInputStream*"/>
  10170. </return-value>
  10171. <parameters>
  10172. <parameter name="request" transfer-ownership="none">
  10173. <doc xml:space="preserve">a #SoupRequest</doc>
  10174. <type name="Request" c:type="SoupRequest*"/>
  10175. </parameter>
  10176. <parameter name="result" transfer-ownership="none">
  10177. <doc xml:space="preserve">the #GAsyncResult</doc>
  10178. <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
  10179. </parameter>
  10180. </parameters>
  10181. </callback>
  10182. </field>
  10183. <field name="get_content_length">
  10184. <callback name="get_content_length">
  10185. <return-value transfer-ownership="none">
  10186. <doc xml:space="preserve">the length of the data represented by @request,
  10187. or -1 if not known.</doc>
  10188. <type name="gint64" c:type="goffset"/>
  10189. </return-value>
  10190. <parameters>
  10191. <parameter name="request" transfer-ownership="none">
  10192. <doc xml:space="preserve">a #SoupRequest</doc>
  10193. <type name="Request" c:type="SoupRequest*"/>
  10194. </parameter>
  10195. </parameters>
  10196. </callback>
  10197. </field>
  10198. <field name="get_content_type">
  10199. <callback name="get_content_type">
  10200. <return-value transfer-ownership="none" nullable="1">
  10201. <doc xml:space="preserve">the type of the data represented by
  10202. @request, or %NULL if not known.</doc>
  10203. <type name="utf8" c:type="const char*"/>
  10204. </return-value>
  10205. <parameters>
  10206. <parameter name="request" transfer-ownership="none">
  10207. <doc xml:space="preserve">a #SoupRequest</doc>
  10208. <type name="Request" c:type="SoupRequest*"/>
  10209. </parameter>
  10210. </parameters>
  10211. </callback>
  10212. </field>
  10213. </record>
  10214. <class name="RequestData"
  10215. c:symbol-prefix="request_data"
  10216. c:type="SoupRequestData"
  10217. parent="Request"
  10218. glib:type-name="SoupRequestData"
  10219. glib:get-type="soup_request_data_get_type"
  10220. glib:type-struct="RequestDataClass">
  10221. <implements name="Gio.Initable"/>
  10222. <field name="parent">
  10223. <type name="Request" c:type="SoupRequest"/>
  10224. </field>
  10225. <field name="priv">
  10226. <type name="RequestDataPrivate" c:type="SoupRequestDataPrivate*"/>
  10227. </field>
  10228. </class>
  10229. <record name="RequestDataClass"
  10230. c:type="SoupRequestDataClass"
  10231. glib:is-gtype-struct-for="RequestData">
  10232. <field name="parent">
  10233. <type name="RequestClass" c:type="SoupRequestClass"/>
  10234. </field>
  10235. </record>
  10236. <record name="RequestDataPrivate"
  10237. c:type="SoupRequestDataPrivate"
  10238. disguised="1">
  10239. </record>
  10240. <enumeration name="RequestError"
  10241. version="2.42"
  10242. glib:type-name="SoupRequestError"
  10243. glib:get-type="soup_request_error_get_type"
  10244. c:type="SoupRequestError"
  10245. glib:error-domain="soup_request_error_quark">
  10246. <doc xml:space="preserve">A #SoupRequest error.</doc>
  10247. <member name="bad_uri"
  10248. value="0"
  10249. c:identifier="SOUP_REQUEST_ERROR_BAD_URI"
  10250. glib:nick="bad-uri">
  10251. <doc xml:space="preserve">the URI could not be parsed</doc>
  10252. </member>
  10253. <member name="unsupported_uri_scheme"
  10254. value="1"
  10255. c:identifier="SOUP_REQUEST_ERROR_UNSUPPORTED_URI_SCHEME"
  10256. glib:nick="unsupported-uri-scheme">
  10257. <doc xml:space="preserve">the URI scheme is not
  10258. supported by this #SoupSession</doc>
  10259. </member>
  10260. <member name="parsing"
  10261. value="2"
  10262. c:identifier="SOUP_REQUEST_ERROR_PARSING"
  10263. glib:nick="parsing">
  10264. <doc xml:space="preserve">the server's response could not
  10265. be parsed</doc>
  10266. </member>
  10267. <member name="encoding"
  10268. value="3"
  10269. c:identifier="SOUP_REQUEST_ERROR_ENCODING"
  10270. glib:nick="encoding">
  10271. <doc xml:space="preserve">the server's response was in an
  10272. unsupported format</doc>
  10273. </member>
  10274. <function name="quark" c:identifier="soup_request_error_quark">
  10275. <return-value transfer-ownership="none">
  10276. <type name="GLib.Quark" c:type="GQuark"/>
  10277. </return-value>
  10278. </function>
  10279. </enumeration>
  10280. <class name="RequestFile"
  10281. c:symbol-prefix="request_file"
  10282. c:type="SoupRequestFile"
  10283. parent="Request"
  10284. glib:type-name="SoupRequestFile"
  10285. glib:get-type="soup_request_file_get_type"
  10286. glib:type-struct="RequestFileClass">
  10287. <implements name="Gio.Initable"/>
  10288. <method name="get_file"
  10289. c:identifier="soup_request_file_get_file"
  10290. version="2.40">
  10291. <doc xml:space="preserve">Gets a #GFile corresponding to @file's URI</doc>
  10292. <return-value transfer-ownership="full">
  10293. <doc xml:space="preserve">a #GFile corresponding to @file</doc>
  10294. <type name="Gio.File" c:type="GFile*"/>
  10295. </return-value>
  10296. <parameters>
  10297. <instance-parameter name="file" transfer-ownership="none">
  10298. <doc xml:space="preserve">a #SoupRequestFile</doc>
  10299. <type name="RequestFile" c:type="SoupRequestFile*"/>
  10300. </instance-parameter>
  10301. </parameters>
  10302. </method>
  10303. <field name="parent">
  10304. <type name="Request" c:type="SoupRequest"/>
  10305. </field>
  10306. <field name="priv">
  10307. <type name="RequestFilePrivate" c:type="SoupRequestFilePrivate*"/>
  10308. </field>
  10309. </class>
  10310. <record name="RequestFileClass"
  10311. c:type="SoupRequestFileClass"
  10312. glib:is-gtype-struct-for="RequestFile">
  10313. <field name="parent">
  10314. <type name="RequestClass" c:type="SoupRequestClass"/>
  10315. </field>
  10316. </record>
  10317. <record name="RequestFilePrivate"
  10318. c:type="SoupRequestFilePrivate"
  10319. disguised="1">
  10320. </record>
  10321. <class name="RequestHTTP"
  10322. c:symbol-prefix="request_http"
  10323. c:type="SoupRequestHTTP"
  10324. parent="Request"
  10325. glib:type-name="SoupRequestHTTP"
  10326. glib:get-type="soup_request_http_get_type"
  10327. glib:type-struct="RequestHTTPClass">
  10328. <implements name="Gio.Initable"/>
  10329. <method name="get_message"
  10330. c:identifier="soup_request_http_get_message"
  10331. version="2.40">
  10332. <doc xml:space="preserve">Gets a new reference to the #SoupMessage associated to this SoupRequest</doc>
  10333. <return-value transfer-ownership="full">
  10334. <doc xml:space="preserve">a new reference to the #SoupMessage</doc>
  10335. <type name="Message" c:type="SoupMessage*"/>
  10336. </return-value>
  10337. <parameters>
  10338. <instance-parameter name="http" transfer-ownership="none">
  10339. <doc xml:space="preserve">a #SoupRequestHTTP object</doc>
  10340. <type name="RequestHTTP" c:type="SoupRequestHTTP*"/>
  10341. </instance-parameter>
  10342. </parameters>
  10343. </method>
  10344. <field name="parent">
  10345. <type name="Request" c:type="SoupRequest"/>
  10346. </field>
  10347. <field name="priv">
  10348. <type name="RequestHTTPPrivate" c:type="SoupRequestHTTPPrivate*"/>
  10349. </field>
  10350. </class>
  10351. <record name="RequestHTTPClass"
  10352. c:type="SoupRequestHTTPClass"
  10353. glib:is-gtype-struct-for="RequestHTTP">
  10354. <field name="parent">
  10355. <type name="RequestClass" c:type="SoupRequestClass"/>
  10356. </field>
  10357. </record>
  10358. <record name="RequestHTTPPrivate"
  10359. c:type="SoupRequestHTTPPrivate"
  10360. disguised="1">
  10361. </record>
  10362. <record name="RequestPrivate" c:type="SoupRequestPrivate" disguised="1">
  10363. </record>
  10364. <class name="Requester"
  10365. c:symbol-prefix="requester"
  10366. c:type="SoupRequester"
  10367. parent="GObject.Object"
  10368. glib:type-name="SoupRequester"
  10369. glib:get-type="soup_requester_get_type"
  10370. glib:type-struct="RequesterClass">
  10371. <implements name="SessionFeature"/>
  10372. <constructor name="new" c:identifier="soup_requester_new">
  10373. <return-value transfer-ownership="full">
  10374. <type name="Requester" c:type="SoupRequester*"/>
  10375. </return-value>
  10376. </constructor>
  10377. <method name="request" c:identifier="soup_requester_request" throws="1">
  10378. <return-value transfer-ownership="full">
  10379. <type name="Request" c:type="SoupRequest*"/>
  10380. </return-value>
  10381. <parameters>
  10382. <instance-parameter name="requester" transfer-ownership="none">
  10383. <type name="Requester" c:type="SoupRequester*"/>
  10384. </instance-parameter>
  10385. <parameter name="uri_string" transfer-ownership="none">
  10386. <type name="utf8" c:type="const char*"/>
  10387. </parameter>
  10388. </parameters>
  10389. </method>
  10390. <method name="request_uri"
  10391. c:identifier="soup_requester_request_uri"
  10392. throws="1">
  10393. <return-value transfer-ownership="full">
  10394. <type name="Request" c:type="SoupRequest*"/>
  10395. </return-value>
  10396. <parameters>
  10397. <instance-parameter name="requester" transfer-ownership="none">
  10398. <type name="Requester" c:type="SoupRequester*"/>
  10399. </instance-parameter>
  10400. <parameter name="uri" transfer-ownership="none">
  10401. <type name="URI" c:type="SoupURI*"/>
  10402. </parameter>
  10403. </parameters>
  10404. </method>
  10405. <field name="parent">
  10406. <type name="GObject.Object" c:type="GObject"/>
  10407. </field>
  10408. <field name="priv">
  10409. <type name="RequesterPrivate" c:type="SoupRequesterPrivate*"/>
  10410. </field>
  10411. </class>
  10412. <record name="RequesterClass"
  10413. c:type="SoupRequesterClass"
  10414. glib:is-gtype-struct-for="Requester">
  10415. <field name="parent_class">
  10416. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  10417. </field>
  10418. </record>
  10419. <enumeration name="RequesterError"
  10420. glib:type-name="SoupRequesterError"
  10421. glib:get-type="soup_requester_error_get_type"
  10422. c:type="SoupRequesterError"
  10423. glib:error-domain="soup_requester_error_quark">
  10424. <member name="bad_uri"
  10425. value="0"
  10426. c:identifier="SOUP_REQUESTER_ERROR_BAD_URI"
  10427. glib:nick="bad-uri">
  10428. </member>
  10429. <member name="unsupported_uri_scheme"
  10430. value="1"
  10431. c:identifier="SOUP_REQUESTER_ERROR_UNSUPPORTED_URI_SCHEME"
  10432. glib:nick="unsupported-uri-scheme">
  10433. </member>
  10434. <function name="quark" c:identifier="soup_requester_error_quark">
  10435. <return-value transfer-ownership="none">
  10436. <type name="GLib.Quark" c:type="GQuark"/>
  10437. </return-value>
  10438. </function>
  10439. </enumeration>
  10440. <record name="RequesterPrivate"
  10441. c:type="SoupRequesterPrivate"
  10442. disguised="1">
  10443. </record>
  10444. <constant name="SERVER_ASYNC_CONTEXT"
  10445. value="async-context"
  10446. c:type="SOUP_SERVER_ASYNC_CONTEXT"
  10447. deprecated="1">
  10448. <doc xml:space="preserve">Alias for the deprecated #SoupServer:async-context
  10449. property, qv.</doc>
  10450. <doc-deprecated xml:space="preserve">The new API uses the thread-default #GMainContext
  10451. rather than having an explicitly-specified one.</doc-deprecated>
  10452. <type name="utf8" c:type="gchar*"/>
  10453. </constant>
  10454. <constant name="SERVER_H" value="1" c:type="SOUP_SERVER_H">
  10455. <type name="gint" c:type="gint"/>
  10456. </constant>
  10457. <constant name="SERVER_HTTPS_ALIASES"
  10458. value="https-aliases"
  10459. c:type="SOUP_SERVER_HTTPS_ALIASES"
  10460. version="2.44">
  10461. <doc xml:space="preserve">Alias for the #SoupServer:https-aliases property, qv.</doc>
  10462. <type name="utf8" c:type="gchar*"/>
  10463. </constant>
  10464. <constant name="SERVER_HTTP_ALIASES"
  10465. value="http-aliases"
  10466. c:type="SOUP_SERVER_HTTP_ALIASES"
  10467. version="2.44">
  10468. <doc xml:space="preserve">Alias for the #SoupServer:http-aliases property, qv.</doc>
  10469. <type name="utf8" c:type="gchar*"/>
  10470. </constant>
  10471. <constant name="SERVER_INTERFACE"
  10472. value="interface"
  10473. c:type="SOUP_SERVER_INTERFACE"
  10474. deprecated="1">
  10475. <doc xml:space="preserve">Alias for the #SoupServer:interface property, qv.</doc>
  10476. <doc-deprecated xml:space="preserve">#SoupServers can listen on multiple interfaces
  10477. at once now. Use soup_server_listen(), etc, to listen on an
  10478. interface, and soup_server_get_uris() to see what addresses
  10479. are being listened on.</doc-deprecated>
  10480. <type name="utf8" c:type="gchar*"/>
  10481. </constant>
  10482. <constant name="SERVER_PORT"
  10483. value="port"
  10484. c:type="SOUP_SERVER_PORT"
  10485. deprecated="1">
  10486. <doc xml:space="preserve">Alias for the deprecated #SoupServer:port property, qv.</doc>
  10487. <doc-deprecated xml:space="preserve">#SoupServers can listen on multiple interfaces
  10488. at once now. Use soup_server_listen(), etc, to listen on a
  10489. port, and soup_server_get_uris() to see what ports are
  10490. being listened on.</doc-deprecated>
  10491. <type name="utf8" c:type="gchar*"/>
  10492. </constant>
  10493. <constant name="SERVER_RAW_PATHS"
  10494. value="raw-paths"
  10495. c:type="SOUP_SERVER_RAW_PATHS">
  10496. <doc xml:space="preserve">Alias for the #SoupServer:raw-paths property. (If %TRUE,
  10497. percent-encoding in the Request-URI path will not be
  10498. automatically decoded.)</doc>
  10499. <type name="utf8" c:type="gchar*"/>
  10500. </constant>
  10501. <constant name="SERVER_SERVER_HEADER"
  10502. value="server-header"
  10503. c:type="SOUP_SERVER_SERVER_HEADER">
  10504. <doc xml:space="preserve">Alias for the #SoupServer:server-header property, qv.</doc>
  10505. <type name="utf8" c:type="gchar*"/>
  10506. </constant>
  10507. <constant name="SERVER_SSL_CERT_FILE"
  10508. value="ssl-cert-file"
  10509. c:type="SOUP_SERVER_SSL_CERT_FILE"
  10510. deprecated="1">
  10511. <doc xml:space="preserve">Alias for the #SoupServer:ssl-cert-file property, qv.</doc>
  10512. <doc-deprecated xml:space="preserve">use #SoupServer:tls-certificate or
  10513. soup_server_set_ssl_certificate().</doc-deprecated>
  10514. <type name="utf8" c:type="gchar*"/>
  10515. </constant>
  10516. <constant name="SERVER_SSL_KEY_FILE"
  10517. value="ssl-key-file"
  10518. c:type="SOUP_SERVER_SSL_KEY_FILE"
  10519. deprecated="1">
  10520. <doc xml:space="preserve">Alias for the #SoupServer:ssl-key-file property, qv.</doc>
  10521. <doc-deprecated xml:space="preserve">use #SoupServer:tls-certificate or
  10522. soup_server_set_ssl_certificate().</doc-deprecated>
  10523. <type name="utf8" c:type="gchar*"/>
  10524. </constant>
  10525. <constant name="SERVER_TLS_CERTIFICATE"
  10526. value="tls-certificate"
  10527. c:type="SOUP_SERVER_TLS_CERTIFICATE"
  10528. version="2.38">
  10529. <doc xml:space="preserve">Alias for the #SoupServer:tls-certificate property, qv.</doc>
  10530. <type name="utf8" c:type="gchar*"/>
  10531. </constant>
  10532. <constant name="SESSION_ACCEPT_LANGUAGE"
  10533. value="accept-language"
  10534. c:type="SOUP_SESSION_ACCEPT_LANGUAGE"
  10535. version="2.30">
  10536. <doc xml:space="preserve">Alias for the #SoupSession:accept-language property, qv.</doc>
  10537. <type name="utf8" c:type="gchar*"/>
  10538. </constant>
  10539. <constant name="SESSION_ACCEPT_LANGUAGE_AUTO"
  10540. value="accept-language-auto"
  10541. c:type="SOUP_SESSION_ACCEPT_LANGUAGE_AUTO"
  10542. version="2.30">
  10543. <doc xml:space="preserve">Alias for the #SoupSession:accept-language-auto property, qv.</doc>
  10544. <type name="utf8" c:type="gchar*"/>
  10545. </constant>
  10546. <constant name="SESSION_ADD_FEATURE"
  10547. value="add-feature"
  10548. c:type="SOUP_SESSION_ADD_FEATURE"
  10549. version="2.24"
  10550. introspectable="0">
  10551. <doc xml:space="preserve">Alias for the #SoupSession:add-feature property, qv.</doc>
  10552. <type name="utf8" c:type="gchar*"/>
  10553. </constant>
  10554. <constant name="SESSION_ADD_FEATURE_BY_TYPE"
  10555. value="add-feature-by-type"
  10556. c:type="SOUP_SESSION_ADD_FEATURE_BY_TYPE"
  10557. version="2.24"
  10558. introspectable="0">
  10559. <doc xml:space="preserve">Alias for the #SoupSession:add-feature-by-type property, qv.</doc>
  10560. <type name="utf8" c:type="gchar*"/>
  10561. </constant>
  10562. <constant name="SESSION_ASYNC_CONTEXT"
  10563. value="async-context"
  10564. c:type="SOUP_SESSION_ASYNC_CONTEXT">
  10565. <doc xml:space="preserve">Alias for the #SoupSession:async-context property, qv.</doc>
  10566. <type name="utf8" c:type="gchar*"/>
  10567. </constant>
  10568. <constant name="SESSION_ASYNC_H" value="1" c:type="SOUP_SESSION_ASYNC_H">
  10569. <type name="gint" c:type="gint"/>
  10570. </constant>
  10571. <constant name="SESSION_FEATURE_H"
  10572. value="1"
  10573. c:type="SOUP_SESSION_FEATURE_H">
  10574. <type name="gint" c:type="gint"/>
  10575. </constant>
  10576. <constant name="SESSION_H" value="1" c:type="SOUP_SESSION_H">
  10577. <type name="gint" c:type="gint"/>
  10578. </constant>
  10579. <constant name="SESSION_HTTPS_ALIASES"
  10580. value="https-aliases"
  10581. c:type="SOUP_SESSION_HTTPS_ALIASES"
  10582. version="2.38">
  10583. <doc xml:space="preserve">Alias for the #SoupSession:https-aliases property, qv.</doc>
  10584. <type name="utf8" c:type="gchar*"/>
  10585. </constant>
  10586. <constant name="SESSION_HTTP_ALIASES"
  10587. value="http-aliases"
  10588. c:type="SOUP_SESSION_HTTP_ALIASES"
  10589. version="2.38">
  10590. <doc xml:space="preserve">Alias for the #SoupSession:http-aliases property, qv.</doc>
  10591. <type name="utf8" c:type="gchar*"/>
  10592. </constant>
  10593. <constant name="SESSION_IDLE_TIMEOUT"
  10594. value="idle-timeout"
  10595. c:type="SOUP_SESSION_IDLE_TIMEOUT"
  10596. version="2.24">
  10597. <doc xml:space="preserve">Alias for the #SoupSession:idle-timeout property, qv.</doc>
  10598. <type name="utf8" c:type="gchar*"/>
  10599. </constant>
  10600. <constant name="SESSION_LOCAL_ADDRESS"
  10601. value="local-address"
  10602. c:type="SOUP_SESSION_LOCAL_ADDRESS"
  10603. version="2.42">
  10604. <doc xml:space="preserve">Alias for the #SoupSession:local-address property, qv.</doc>
  10605. <type name="utf8" c:type="gchar*"/>
  10606. </constant>
  10607. <constant name="SESSION_MAX_CONNS"
  10608. value="max-conns"
  10609. c:type="SOUP_SESSION_MAX_CONNS">
  10610. <doc xml:space="preserve">Alias for the #SoupSession:max-conns property, qv.</doc>
  10611. <type name="utf8" c:type="gchar*"/>
  10612. </constant>
  10613. <constant name="SESSION_MAX_CONNS_PER_HOST"
  10614. value="max-conns-per-host"
  10615. c:type="SOUP_SESSION_MAX_CONNS_PER_HOST">
  10616. <doc xml:space="preserve">Alias for the #SoupSession:max-conns-per-host property, qv.</doc>
  10617. <type name="utf8" c:type="gchar*"/>
  10618. </constant>
  10619. <constant name="SESSION_PROXY_RESOLVER"
  10620. value="proxy-resolver"
  10621. c:type="SOUP_SESSION_PROXY_RESOLVER">
  10622. <doc xml:space="preserve">Alias for the #SoupSession:proxy-resolver property, qv.</doc>
  10623. <type name="utf8" c:type="gchar*"/>
  10624. </constant>
  10625. <constant name="SESSION_PROXY_URI"
  10626. value="proxy-uri"
  10627. c:type="SOUP_SESSION_PROXY_URI">
  10628. <doc xml:space="preserve">Alias for the #SoupSession:proxy-uri property, qv.</doc>
  10629. <type name="utf8" c:type="gchar*"/>
  10630. </constant>
  10631. <constant name="SESSION_REMOVE_FEATURE_BY_TYPE"
  10632. value="remove-feature-by-type"
  10633. c:type="SOUP_SESSION_REMOVE_FEATURE_BY_TYPE"
  10634. version="2.24"
  10635. introspectable="0">
  10636. <doc xml:space="preserve">Alias for the #SoupSession:remove-feature-by-type property,
  10637. qv.</doc>
  10638. <type name="utf8" c:type="gchar*"/>
  10639. </constant>
  10640. <constant name="SESSION_SSL_CA_FILE"
  10641. value="ssl-ca-file"
  10642. c:type="SOUP_SESSION_SSL_CA_FILE">
  10643. <doc xml:space="preserve">Alias for the #SoupSession:ssl-ca-file property, qv.</doc>
  10644. <type name="utf8" c:type="gchar*"/>
  10645. </constant>
  10646. <constant name="SESSION_SSL_STRICT"
  10647. value="ssl-strict"
  10648. c:type="SOUP_SESSION_SSL_STRICT"
  10649. version="2.30">
  10650. <doc xml:space="preserve">Alias for the #SoupSession:ssl-strict property, qv.</doc>
  10651. <type name="utf8" c:type="gchar*"/>
  10652. </constant>
  10653. <constant name="SESSION_SSL_USE_SYSTEM_CA_FILE"
  10654. value="ssl-use-system-ca-file"
  10655. c:type="SOUP_SESSION_SSL_USE_SYSTEM_CA_FILE"
  10656. version="2.38">
  10657. <doc xml:space="preserve">Alias for the #SoupSession:ssl-use-system-ca-file property,
  10658. qv.</doc>
  10659. <type name="utf8" c:type="gchar*"/>
  10660. </constant>
  10661. <constant name="SESSION_SYNC_H" value="1" c:type="SOUP_SESSION_SYNC_H">
  10662. <type name="gint" c:type="gint"/>
  10663. </constant>
  10664. <constant name="SESSION_TIMEOUT"
  10665. value="timeout"
  10666. c:type="SOUP_SESSION_TIMEOUT">
  10667. <doc xml:space="preserve">Alias for the #SoupSession:timeout property, qv.</doc>
  10668. <type name="utf8" c:type="gchar*"/>
  10669. </constant>
  10670. <constant name="SESSION_TLS_DATABASE"
  10671. value="tls-database"
  10672. c:type="SOUP_SESSION_TLS_DATABASE"
  10673. version="2.38">
  10674. <doc xml:space="preserve">Alias for the #SoupSession:tls-database property, qv.</doc>
  10675. <type name="utf8" c:type="gchar*"/>
  10676. </constant>
  10677. <constant name="SESSION_TLS_INTERACTION"
  10678. value="tls-interaction"
  10679. c:type="SOUP_SESSION_TLS_INTERACTION"
  10680. version="2.48">
  10681. <doc xml:space="preserve">Alias for the #SoupSession:tls-interaction property, qv.</doc>
  10682. <type name="utf8" c:type="gchar*"/>
  10683. </constant>
  10684. <constant name="SESSION_USER_AGENT"
  10685. value="user-agent"
  10686. c:type="SOUP_SESSION_USER_AGENT">
  10687. <doc xml:space="preserve">Alias for the #SoupSession:user-agent property, qv.</doc>
  10688. <type name="utf8" c:type="gchar*"/>
  10689. </constant>
  10690. <constant name="SESSION_USE_NTLM"
  10691. value="use-ntlm"
  10692. c:type="SOUP_SESSION_USE_NTLM">
  10693. <doc xml:space="preserve">Alias for the #SoupSession:use-ntlm property, qv.</doc>
  10694. <type name="utf8" c:type="gchar*"/>
  10695. </constant>
  10696. <constant name="SESSION_USE_THREAD_CONTEXT"
  10697. value="use-thread-context"
  10698. c:type="SOUP_SESSION_USE_THREAD_CONTEXT"
  10699. version="2.38">
  10700. <doc xml:space="preserve">Alias for the #SoupSession:use-thread-context property, qv.</doc>
  10701. <type name="utf8" c:type="gchar*"/>
  10702. </constant>
  10703. <constant name="SOCKET_ASYNC_CONTEXT"
  10704. value="async-context"
  10705. c:type="SOUP_SOCKET_ASYNC_CONTEXT">
  10706. <doc xml:space="preserve">Alias for the #SoupSocket:async-context property. (The
  10707. socket's #GMainContext.)</doc>
  10708. <type name="utf8" c:type="gchar*"/>
  10709. </constant>
  10710. <constant name="SOCKET_FLAG_NONBLOCKING"
  10711. value="non-blocking"
  10712. c:type="SOUP_SOCKET_FLAG_NONBLOCKING">
  10713. <doc xml:space="preserve">Alias for the #SoupSocket:non-blocking property. (Whether
  10714. or not the socket uses non-blocking I/O.)</doc>
  10715. <type name="utf8" c:type="gchar*"/>
  10716. </constant>
  10717. <constant name="SOCKET_H" value="1" c:type="SOUP_SOCKET_H">
  10718. <type name="gint" c:type="gint"/>
  10719. </constant>
  10720. <constant name="SOCKET_IS_SERVER"
  10721. value="is-server"
  10722. c:type="SOUP_SOCKET_IS_SERVER">
  10723. <doc xml:space="preserve">Alias for the #SoupSocket:is-server property, qv.</doc>
  10724. <type name="utf8" c:type="gchar*"/>
  10725. </constant>
  10726. <constant name="SOCKET_LOCAL_ADDRESS"
  10727. value="local-address"
  10728. c:type="SOUP_SOCKET_LOCAL_ADDRESS">
  10729. <doc xml:space="preserve">Alias for the #SoupSocket:local-address property. (Address
  10730. of local end of socket.)</doc>
  10731. <type name="utf8" c:type="gchar*"/>
  10732. </constant>
  10733. <constant name="SOCKET_REMOTE_ADDRESS"
  10734. value="remote-address"
  10735. c:type="SOUP_SOCKET_REMOTE_ADDRESS">
  10736. <doc xml:space="preserve">Alias for the #SoupSocket:remote-address property. (Address
  10737. of remote end of socket.)</doc>
  10738. <type name="utf8" c:type="gchar*"/>
  10739. </constant>
  10740. <constant name="SOCKET_SSL_CREDENTIALS"
  10741. value="ssl-creds"
  10742. c:type="SOUP_SOCKET_SSL_CREDENTIALS">
  10743. <doc xml:space="preserve">Alias for the #SoupSocket:ssl-creds property.
  10744. (SSL credential information.)</doc>
  10745. <type name="utf8" c:type="gchar*"/>
  10746. </constant>
  10747. <constant name="SOCKET_SSL_FALLBACK"
  10748. value="ssl-fallback"
  10749. c:type="SOUP_SOCKET_SSL_FALLBACK">
  10750. <doc xml:space="preserve">Alias for the #SoupSocket:ssl-fallback property.</doc>
  10751. <type name="utf8" c:type="gchar*"/>
  10752. </constant>
  10753. <constant name="SOCKET_SSL_STRICT"
  10754. value="ssl-strict"
  10755. c:type="SOUP_SOCKET_SSL_STRICT">
  10756. <doc xml:space="preserve">Alias for the #SoupSocket:ssl-strict property.</doc>
  10757. <type name="utf8" c:type="gchar*"/>
  10758. </constant>
  10759. <constant name="SOCKET_TIMEOUT"
  10760. value="timeout"
  10761. c:type="SOUP_SOCKET_TIMEOUT">
  10762. <doc xml:space="preserve">Alias for the #SoupSocket:timeout property. (The timeout
  10763. in seconds for blocking socket I/O operations.)</doc>
  10764. <type name="utf8" c:type="gchar*"/>
  10765. </constant>
  10766. <constant name="SOCKET_TLS_CERTIFICATE"
  10767. value="tls-certificate"
  10768. c:type="SOUP_SOCKET_TLS_CERTIFICATE"
  10769. version="2.34">
  10770. <doc xml:space="preserve">Alias for the #SoupSocket:tls-certificate
  10771. property. Note that this property's value is only useful
  10772. if the socket is for a TLS connection, and only reliable
  10773. after some data has been transferred to or from it.</doc>
  10774. <type name="utf8" c:type="gchar*"/>
  10775. </constant>
  10776. <constant name="SOCKET_TLS_ERRORS"
  10777. value="tls-errors"
  10778. c:type="SOUP_SOCKET_TLS_ERRORS"
  10779. version="2.34">
  10780. <doc xml:space="preserve">Alias for the #SoupSocket:tls-errors
  10781. property. Note that this property's value is only useful
  10782. if the socket is for a TLS connection, and only reliable
  10783. after some data has been transferred to or from it.</doc>
  10784. <type name="utf8" c:type="gchar*"/>
  10785. </constant>
  10786. <constant name="SOCKET_TRUSTED_CERTIFICATE"
  10787. value="trusted-certificate"
  10788. c:type="SOUP_SOCKET_TRUSTED_CERTIFICATE">
  10789. <doc xml:space="preserve">Alias for the #SoupSocket:trusted-certificate
  10790. property.</doc>
  10791. <type name="utf8" c:type="gchar*"/>
  10792. </constant>
  10793. <constant name="SOCKET_USE_THREAD_CONTEXT"
  10794. value="use-thread-context"
  10795. c:type="SOUP_SOCKET_USE_THREAD_CONTEXT"
  10796. version="2.38">
  10797. <doc xml:space="preserve">Alias for the #SoupSocket:use-thread-context property. (Use
  10798. g_main_context_get_thread_default())</doc>
  10799. <type name="utf8" c:type="gchar*"/>
  10800. </constant>
  10801. <constant name="STATUS_H" value="1" c:type="SOUP_STATUS_H">
  10802. <type name="gint" c:type="gint"/>
  10803. </constant>
  10804. <class name="Server"
  10805. c:symbol-prefix="server"
  10806. c:type="SoupServer"
  10807. parent="GObject.Object"
  10808. glib:type-name="SoupServer"
  10809. glib:get-type="soup_server_get_type"
  10810. glib:type-struct="ServerClass">
  10811. <constructor name="new"
  10812. c:identifier="soup_server_new"
  10813. introspectable="0">
  10814. <doc xml:space="preserve">Creates a new #SoupServer. This is exactly equivalent to calling
  10815. g_object_new() and specifying %SOUP_TYPE_SERVER as the type.</doc>
  10816. <return-value transfer-ownership="full" nullable="1">
  10817. <doc xml:space="preserve">a new #SoupServer. If you are using
  10818. certain legacy properties, this may also return %NULL if an error
  10819. occurs.</doc>
  10820. <type name="Server" c:type="SoupServer*"/>
  10821. </return-value>
  10822. <parameters>
  10823. <parameter name="optname1" transfer-ownership="none">
  10824. <doc xml:space="preserve">name of first property to set</doc>
  10825. <type name="utf8" c:type="const char*"/>
  10826. </parameter>
  10827. <parameter name="..." transfer-ownership="none">
  10828. <doc xml:space="preserve">value of @optname1, followed by additional property/value pairs</doc>
  10829. <varargs/>
  10830. </parameter>
  10831. </parameters>
  10832. </constructor>
  10833. <virtual-method name="request_aborted">
  10834. <return-value transfer-ownership="none">
  10835. <type name="none" c:type="void"/>
  10836. </return-value>
  10837. <parameters>
  10838. <instance-parameter name="server" transfer-ownership="none">
  10839. <type name="Server" c:type="SoupServer*"/>
  10840. </instance-parameter>
  10841. <parameter name="msg" transfer-ownership="none">
  10842. <type name="Message" c:type="SoupMessage*"/>
  10843. </parameter>
  10844. <parameter name="client" transfer-ownership="none">
  10845. <type name="ClientContext" c:type="SoupClientContext*"/>
  10846. </parameter>
  10847. </parameters>
  10848. </virtual-method>
  10849. <virtual-method name="request_finished">
  10850. <return-value transfer-ownership="none">
  10851. <type name="none" c:type="void"/>
  10852. </return-value>
  10853. <parameters>
  10854. <instance-parameter name="server" transfer-ownership="none">
  10855. <type name="Server" c:type="SoupServer*"/>
  10856. </instance-parameter>
  10857. <parameter name="msg" transfer-ownership="none">
  10858. <type name="Message" c:type="SoupMessage*"/>
  10859. </parameter>
  10860. <parameter name="client" transfer-ownership="none">
  10861. <type name="ClientContext" c:type="SoupClientContext*"/>
  10862. </parameter>
  10863. </parameters>
  10864. </virtual-method>
  10865. <virtual-method name="request_read">
  10866. <return-value transfer-ownership="none">
  10867. <type name="none" c:type="void"/>
  10868. </return-value>
  10869. <parameters>
  10870. <instance-parameter name="server" transfer-ownership="none">
  10871. <type name="Server" c:type="SoupServer*"/>
  10872. </instance-parameter>
  10873. <parameter name="msg" transfer-ownership="none">
  10874. <type name="Message" c:type="SoupMessage*"/>
  10875. </parameter>
  10876. <parameter name="client" transfer-ownership="none">
  10877. <type name="ClientContext" c:type="SoupClientContext*"/>
  10878. </parameter>
  10879. </parameters>
  10880. </virtual-method>
  10881. <virtual-method name="request_started">
  10882. <return-value transfer-ownership="none">
  10883. <type name="none" c:type="void"/>
  10884. </return-value>
  10885. <parameters>
  10886. <instance-parameter name="server" transfer-ownership="none">
  10887. <type name="Server" c:type="SoupServer*"/>
  10888. </instance-parameter>
  10889. <parameter name="msg" transfer-ownership="none">
  10890. <type name="Message" c:type="SoupMessage*"/>
  10891. </parameter>
  10892. <parameter name="client" transfer-ownership="none">
  10893. <type name="ClientContext" c:type="SoupClientContext*"/>
  10894. </parameter>
  10895. </parameters>
  10896. </virtual-method>
  10897. <method name="accept_iostream"
  10898. c:identifier="soup_server_accept_iostream"
  10899. version="2.50"
  10900. throws="1">
  10901. <doc xml:space="preserve">Add a new client stream to the @server.</doc>
  10902. <return-value transfer-ownership="none">
  10903. <doc xml:space="preserve">%TRUE on success, %FALSE if the stream could not be
  10904. accepted or any other error occurred (in which case @error will be
  10905. set).</doc>
  10906. <type name="gboolean" c:type="gboolean"/>
  10907. </return-value>
  10908. <parameters>
  10909. <instance-parameter name="server" transfer-ownership="none">
  10910. <doc xml:space="preserve">a #SoupServer</doc>
  10911. <type name="Server" c:type="SoupServer*"/>
  10912. </instance-parameter>
  10913. <parameter name="stream" transfer-ownership="none">
  10914. <doc xml:space="preserve">a #GIOStream</doc>
  10915. <type name="Gio.IOStream" c:type="GIOStream*"/>
  10916. </parameter>
  10917. <parameter name="local_addr"
  10918. transfer-ownership="none"
  10919. nullable="1"
  10920. allow-none="1">
  10921. <doc xml:space="preserve">the local #GSocketAddress associated with the @stream</doc>
  10922. <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
  10923. </parameter>
  10924. <parameter name="remote_addr"
  10925. transfer-ownership="none"
  10926. nullable="1"
  10927. allow-none="1">
  10928. <doc xml:space="preserve">the remote #GSocketAddress associated with the @stream</doc>
  10929. <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
  10930. </parameter>
  10931. </parameters>
  10932. </method>
  10933. <method name="add_auth_domain"
  10934. c:identifier="soup_server_add_auth_domain">
  10935. <doc xml:space="preserve">Adds an authentication domain to @server. Each auth domain will
  10936. have the chance to require authentication for each request that
  10937. comes in; normally auth domains will require authentication for
  10938. requests on certain paths that they have been set up to watch, or
  10939. that meet other criteria set by the caller. If an auth domain
  10940. determines that a request requires authentication (and the request
  10941. doesn't contain authentication), @server will automatically reject
  10942. the request with an appropriate status (401 Unauthorized or 407
  10943. Proxy Authentication Required). If the request used the
  10944. "100-continue" Expectation, @server will reject it before the
  10945. request body is sent.</doc>
  10946. <return-value transfer-ownership="none">
  10947. <type name="none" c:type="void"/>
  10948. </return-value>
  10949. <parameters>
  10950. <instance-parameter name="server" transfer-ownership="none">
  10951. <doc xml:space="preserve">a #SoupServer</doc>
  10952. <type name="Server" c:type="SoupServer*"/>
  10953. </instance-parameter>
  10954. <parameter name="auth_domain" transfer-ownership="none">
  10955. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  10956. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  10957. </parameter>
  10958. </parameters>
  10959. </method>
  10960. <method name="add_early_handler"
  10961. c:identifier="soup_server_add_early_handler"
  10962. version="2.50">
  10963. <doc xml:space="preserve">Adds an "early" handler to @server for requests under @path. Note
  10964. that "normal" and "early" handlers are matched up together, so if
  10965. you add a normal handler for "/foo" and an early handler for
  10966. "/foo/bar", then a request to "/foo/bar" (or any path below it)
  10967. will run only the early handler. (But if you add both handlers at
  10968. the same path, then both will get run.)
  10969. For requests under @path (that have not already been assigned a
  10970. status code by a #SoupAuthDomain or a signal handler), @callback
  10971. will be invoked after receiving the request headers, but before
  10972. receiving the request body; the message's #SoupMessage:method and
  10973. #SoupMessage:request-headers fields will be filled in.
  10974. Early handlers are generally used for processing requests with
  10975. request bodies in a streaming fashion. If you determine that the
  10976. request will contain a message body, normally you would call
  10977. soup_message_body_set_accumulate() on the message's
  10978. #SoupMessage:request-body to turn off request-body accumulation,
  10979. and connect to the message's #SoupMessage::got-chunk signal to
  10980. process each chunk as it comes in.
  10981. To complete the message processing after the full message body has
  10982. been read, you can either also connect to #SoupMessage::got-body,
  10983. or else you can register a non-early handler for @path as well. As
  10984. long as you have not set the #SoupMessage:status-code by the time
  10985. #SoupMessage::got-body is emitted, the non-early handler will be
  10986. run as well.</doc>
  10987. <return-value transfer-ownership="none">
  10988. <type name="none" c:type="void"/>
  10989. </return-value>
  10990. <parameters>
  10991. <instance-parameter name="server" transfer-ownership="none">
  10992. <doc xml:space="preserve">a #SoupServer</doc>
  10993. <type name="Server" c:type="SoupServer*"/>
  10994. </instance-parameter>
  10995. <parameter name="path"
  10996. transfer-ownership="none"
  10997. nullable="1"
  10998. allow-none="1">
  10999. <doc xml:space="preserve">the toplevel path for the handler</doc>
  11000. <type name="utf8" c:type="const char*"/>
  11001. </parameter>
  11002. <parameter name="callback"
  11003. transfer-ownership="none"
  11004. scope="notified"
  11005. closure="2"
  11006. destroy="3">
  11007. <doc xml:space="preserve">callback to invoke for requests under @path</doc>
  11008. <type name="ServerCallback" c:type="SoupServerCallback"/>
  11009. </parameter>
  11010. <parameter name="user_data"
  11011. transfer-ownership="none"
  11012. nullable="1"
  11013. allow-none="1">
  11014. <doc xml:space="preserve">data for @callback</doc>
  11015. <type name="gpointer" c:type="gpointer"/>
  11016. </parameter>
  11017. <parameter name="destroy" transfer-ownership="none" scope="async">
  11018. <doc xml:space="preserve">destroy notifier to free @user_data</doc>
  11019. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  11020. </parameter>
  11021. </parameters>
  11022. </method>
  11023. <method name="add_handler" c:identifier="soup_server_add_handler">
  11024. <doc xml:space="preserve">Adds a handler to @server for requests under @path. If @path is
  11025. %NULL or "/", then this will be the default handler for all
  11026. requests that don't have a more specific handler. (Note though that
  11027. if you want to handle requests to the special "*" URI, you must
  11028. explicitly register a handler for "*"; the default handler will not
  11029. be used for that case.)
  11030. For requests under @path (that have not already been assigned a
  11031. status code by a #SoupAuthDomain, an early #SoupServerHandler, or a
  11032. signal handler), @callback will be invoked after receiving the
  11033. request body; the message's #SoupMessage:method,
  11034. #SoupMessage:request-headers, and #SoupMessage:request-body fields
  11035. will be filled in.
  11036. After determining what to do with the request, the callback must at
  11037. a minimum call soup_message_set_status() (or
  11038. soup_message_set_status_full()) on the message to set the response
  11039. status code. Additionally, it may set response headers and/or fill
  11040. in the response body.
  11041. If the callback cannot fully fill in the response before returning
  11042. (eg, if it needs to wait for information from a database, or
  11043. another network server), it should call soup_server_pause_message()
  11044. to tell @server to not send the response right away. When the
  11045. response is ready, call soup_server_unpause_message() to cause it
  11046. to be sent.
  11047. To send the response body a bit at a time using "chunked" encoding,
  11048. first call soup_message_headers_set_encoding() to set
  11049. %SOUP_ENCODING_CHUNKED on the #SoupMessage:response-headers. Then call
  11050. soup_message_body_append() (or soup_message_body_append_buffer())
  11051. to append each chunk as it becomes ready, and
  11052. soup_server_unpause_message() to make sure it's running. (The
  11053. server will automatically pause the message if it is using chunked
  11054. encoding but no more chunks are available.) When you are done, call
  11055. soup_message_body_complete() to indicate that no more chunks are
  11056. coming.</doc>
  11057. <return-value transfer-ownership="none">
  11058. <type name="none" c:type="void"/>
  11059. </return-value>
  11060. <parameters>
  11061. <instance-parameter name="server" transfer-ownership="none">
  11062. <doc xml:space="preserve">a #SoupServer</doc>
  11063. <type name="Server" c:type="SoupServer*"/>
  11064. </instance-parameter>
  11065. <parameter name="path"
  11066. transfer-ownership="none"
  11067. nullable="1"
  11068. allow-none="1">
  11069. <doc xml:space="preserve">the toplevel path for the handler</doc>
  11070. <type name="utf8" c:type="const char*"/>
  11071. </parameter>
  11072. <parameter name="callback"
  11073. transfer-ownership="none"
  11074. scope="notified"
  11075. closure="2"
  11076. destroy="3">
  11077. <doc xml:space="preserve">callback to invoke for requests under @path</doc>
  11078. <type name="ServerCallback" c:type="SoupServerCallback"/>
  11079. </parameter>
  11080. <parameter name="user_data"
  11081. transfer-ownership="none"
  11082. nullable="1"
  11083. allow-none="1">
  11084. <doc xml:space="preserve">data for @callback</doc>
  11085. <type name="gpointer" c:type="gpointer"/>
  11086. </parameter>
  11087. <parameter name="destroy" transfer-ownership="none" scope="async">
  11088. <doc xml:space="preserve">destroy notifier to free @user_data</doc>
  11089. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  11090. </parameter>
  11091. </parameters>
  11092. </method>
  11093. <method name="add_websocket_handler"
  11094. c:identifier="soup_server_add_websocket_handler">
  11095. <doc xml:space="preserve">Adds a WebSocket handler to @server for requests under @path. (If
  11096. @path is %NULL or "/", then this will be the default handler for
  11097. all requests that don't have a more specific handler.)
  11098. When a path has a WebSocket handler registered, @server will check
  11099. incoming requests for WebSocket handshakes after all other handlers
  11100. have run (unless some earlier handler has already set a status code
  11101. on the message), and update the request's status, response headers,
  11102. and response body accordingly.
  11103. If @origin is non-%NULL, then only requests containing a matching
  11104. "Origin" header will be accepted. If @protocols is non-%NULL, then
  11105. only requests containing a compatible "Sec-WebSocket-Protocols"
  11106. header will be accepted. More complicated requirements can be
  11107. handled by adding a normal handler to @path, and having it perform
  11108. whatever checks are needed (possibly calling
  11109. soup_server_check_websocket_handshake() one or more times), and
  11110. setting a failure status code if the handshake should be rejected.</doc>
  11111. <return-value transfer-ownership="none">
  11112. <type name="none" c:type="void"/>
  11113. </return-value>
  11114. <parameters>
  11115. <instance-parameter name="server" transfer-ownership="none">
  11116. <doc xml:space="preserve">a #SoupServer</doc>
  11117. <type name="Server" c:type="SoupServer*"/>
  11118. </instance-parameter>
  11119. <parameter name="path"
  11120. transfer-ownership="none"
  11121. nullable="1"
  11122. allow-none="1">
  11123. <doc xml:space="preserve">the toplevel path for the handler</doc>
  11124. <type name="utf8" c:type="const char*"/>
  11125. </parameter>
  11126. <parameter name="origin"
  11127. transfer-ownership="none"
  11128. nullable="1"
  11129. allow-none="1">
  11130. <doc xml:space="preserve">the origin of the connection</doc>
  11131. <type name="utf8" c:type="const char*"/>
  11132. </parameter>
  11133. <parameter name="protocols"
  11134. transfer-ownership="none"
  11135. nullable="1"
  11136. allow-none="1">
  11137. <doc xml:space="preserve">the protocols
  11138. supported by this handler</doc>
  11139. <array c:type="char**">
  11140. <type name="utf8" c:type="char*"/>
  11141. </array>
  11142. </parameter>
  11143. <parameter name="callback"
  11144. transfer-ownership="none"
  11145. scope="notified"
  11146. closure="4"
  11147. destroy="5">
  11148. <doc xml:space="preserve">callback to invoke for successful WebSocket requests under @path</doc>
  11149. <type name="ServerWebsocketCallback"
  11150. c:type="SoupServerWebsocketCallback"/>
  11151. </parameter>
  11152. <parameter name="user_data"
  11153. transfer-ownership="none"
  11154. nullable="1"
  11155. allow-none="1">
  11156. <doc xml:space="preserve">data for @callback</doc>
  11157. <type name="gpointer" c:type="gpointer"/>
  11158. </parameter>
  11159. <parameter name="destroy" transfer-ownership="none" scope="async">
  11160. <doc xml:space="preserve">destroy notifier to free @user_data</doc>
  11161. <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
  11162. </parameter>
  11163. </parameters>
  11164. </method>
  11165. <method name="disconnect" c:identifier="soup_server_disconnect">
  11166. <doc xml:space="preserve">Closes and frees @server's listening sockets. If you are using the
  11167. old #SoupServer APIs, this also includes the effect of
  11168. soup_server_quit().
  11169. Note that if there are currently requests in progress on @server,
  11170. that they will continue to be processed if @server's #GMainContext
  11171. is still running.
  11172. You can call soup_server_listen(), etc, after calling this function
  11173. if you want to start listening again.</doc>
  11174. <return-value transfer-ownership="none">
  11175. <type name="none" c:type="void"/>
  11176. </return-value>
  11177. <parameters>
  11178. <instance-parameter name="server" transfer-ownership="none">
  11179. <doc xml:space="preserve">a #SoupServer</doc>
  11180. <type name="Server" c:type="SoupServer*"/>
  11181. </instance-parameter>
  11182. </parameters>
  11183. </method>
  11184. <method name="get_async_context"
  11185. c:identifier="soup_server_get_async_context"
  11186. deprecated="1">
  11187. <doc xml:space="preserve">Gets @server's async_context, if you are using the old API. (With
  11188. the new API, the server runs in the thread's thread-default
  11189. #GMainContext, regardless of what this method returns.)
  11190. This does not add a ref to the context, so you will need to ref it
  11191. yourself if you want it to outlive its server.</doc>
  11192. <doc-deprecated xml:space="preserve">If you are using soup_server_listen(), etc, then
  11193. the server listens on the thread-default #GMainContext, and this
  11194. property is ignored.</doc-deprecated>
  11195. <return-value transfer-ownership="none" nullable="1">
  11196. <doc xml:space="preserve">@server's #GMainContext,
  11197. which may be %NULL</doc>
  11198. <type name="GLib.MainContext" c:type="GMainContext*"/>
  11199. </return-value>
  11200. <parameters>
  11201. <instance-parameter name="server" transfer-ownership="none">
  11202. <doc xml:space="preserve">a #SoupServer</doc>
  11203. <type name="Server" c:type="SoupServer*"/>
  11204. </instance-parameter>
  11205. </parameters>
  11206. </method>
  11207. <method name="get_listener"
  11208. c:identifier="soup_server_get_listener"
  11209. deprecated="1">
  11210. <doc xml:space="preserve">Gets @server's listening socket, if you are using the old API.
  11211. You should treat this socket as read-only; writing to it or
  11212. modifiying it may cause @server to malfunction.</doc>
  11213. <doc-deprecated xml:space="preserve">If you are using soup_server_listen(), etc, then use
  11214. soup_server_get_listeners() to get a list of all listening sockets,
  11215. but note that that function returns #GSockets, not #SoupSockets.</doc-deprecated>
  11216. <return-value transfer-ownership="none">
  11217. <doc xml:space="preserve">the listening socket.</doc>
  11218. <type name="Socket" c:type="SoupSocket*"/>
  11219. </return-value>
  11220. <parameters>
  11221. <instance-parameter name="server" transfer-ownership="none">
  11222. <doc xml:space="preserve">a #SoupServer</doc>
  11223. <type name="Server" c:type="SoupServer*"/>
  11224. </instance-parameter>
  11225. </parameters>
  11226. </method>
  11227. <method name="get_listeners" c:identifier="soup_server_get_listeners">
  11228. <doc xml:space="preserve">Gets @server's list of listening sockets.
  11229. You should treat these sockets as read-only; writing to or
  11230. modifiying any of these sockets may cause @server to malfunction.
  11231. (Beware that in contrast to the old soup_server_get_listener(), this
  11232. function returns #GSockets, not #SoupSockets.)</doc>
  11233. <return-value transfer-ownership="container">
  11234. <doc xml:space="preserve">a
  11235. list of listening sockets.</doc>
  11236. <type name="GLib.SList" c:type="GSList*">
  11237. <type name="Gio.Socket"/>
  11238. </type>
  11239. </return-value>
  11240. <parameters>
  11241. <instance-parameter name="server" transfer-ownership="none">
  11242. <doc xml:space="preserve">a #SoupServer</doc>
  11243. <type name="Server" c:type="SoupServer*"/>
  11244. </instance-parameter>
  11245. </parameters>
  11246. </method>
  11247. <method name="get_port"
  11248. c:identifier="soup_server_get_port"
  11249. deprecated="1">
  11250. <doc xml:space="preserve">Gets the TCP port that @server is listening on, if you are using
  11251. the old API.</doc>
  11252. <doc-deprecated xml:space="preserve">If you are using soup_server_listen(), etc, then use
  11253. soup_server_get_uris() to get a list of all listening addresses.</doc-deprecated>
  11254. <return-value transfer-ownership="none">
  11255. <doc xml:space="preserve">the port @server is listening on.</doc>
  11256. <type name="guint" c:type="guint"/>
  11257. </return-value>
  11258. <parameters>
  11259. <instance-parameter name="server" transfer-ownership="none">
  11260. <doc xml:space="preserve">a #SoupServer</doc>
  11261. <type name="Server" c:type="SoupServer*"/>
  11262. </instance-parameter>
  11263. </parameters>
  11264. </method>
  11265. <method name="get_uris"
  11266. c:identifier="soup_server_get_uris"
  11267. version="2.48">
  11268. <doc xml:space="preserve">Gets a list of URIs corresponding to the interfaces @server is
  11269. listening on. These will contain IP addresses, not hostnames, and
  11270. will also indicate whether the given listener is http or https.
  11271. Note that if you used soup_server_listen_all(), the returned URIs
  11272. will use the addresses &lt;literal&gt;0.0.0.0&lt;/literal&gt; and
  11273. &lt;literal&gt;::&lt;/literal&gt;, rather than actually returning separate URIs
  11274. for each interface on the system.</doc>
  11275. <return-value transfer-ownership="full">
  11276. <doc xml:space="preserve">a list of
  11277. #SoupURIs, which you must free when you are done with it.</doc>
  11278. <type name="GLib.SList" c:type="GSList*">
  11279. <type name="URI"/>
  11280. </type>
  11281. </return-value>
  11282. <parameters>
  11283. <instance-parameter name="server" transfer-ownership="none">
  11284. <doc xml:space="preserve">a #SoupServer</doc>
  11285. <type name="Server" c:type="SoupServer*"/>
  11286. </instance-parameter>
  11287. </parameters>
  11288. </method>
  11289. <method name="is_https" c:identifier="soup_server_is_https">
  11290. <doc xml:space="preserve">Checks whether @server is capable of https.
  11291. In order for a server to run https, you must call
  11292. soup_server_set_ssl_cert_file(), or set the
  11293. #SoupServer:tls-certificate property, to provide it with a
  11294. certificate to use.
  11295. If you are using the deprecated single-listener APIs, then a return
  11296. value of %TRUE indicates that the #SoupServer serves https
  11297. exclusively. If you are using soup_server_listen(), etc, then a
  11298. %TRUE return value merely indicates that the server is
  11299. &lt;emphasis&gt;able&lt;/emphasis&gt; to do https, regardless of whether it
  11300. actually currently is or not. Use soup_server_get_uris() to see if
  11301. it currently has any https listeners.</doc>
  11302. <return-value transfer-ownership="none">
  11303. <doc xml:space="preserve">%TRUE if @server is configured to serve https.</doc>
  11304. <type name="gboolean" c:type="gboolean"/>
  11305. </return-value>
  11306. <parameters>
  11307. <instance-parameter name="server" transfer-ownership="none">
  11308. <doc xml:space="preserve">a #SoupServer</doc>
  11309. <type name="Server" c:type="SoupServer*"/>
  11310. </instance-parameter>
  11311. </parameters>
  11312. </method>
  11313. <method name="listen"
  11314. c:identifier="soup_server_listen"
  11315. version="2.48"
  11316. throws="1">
  11317. <doc xml:space="preserve">This attempts to set up @server to listen for connections on
  11318. @address.
  11319. If @options includes %SOUP_SERVER_LISTEN_HTTPS, and @server has
  11320. been configured for TLS, then @server will listen for https
  11321. connections on this port. Otherwise it will listen for plain http.
  11322. You may call this method (along with the other "listen" methods)
  11323. any number of times on a server, if you want to listen on multiple
  11324. ports, or set up both http and https service.
  11325. After calling this method, @server will begin accepting and
  11326. processing connections as soon as the appropriate #GMainContext is
  11327. run.
  11328. Note that #SoupServer never makes use of dual IPv4/IPv6 sockets; if
  11329. @address is an IPv6 address, it will only accept IPv6 connections.
  11330. You must configure IPv4 listening separately.</doc>
  11331. <return-value transfer-ownership="none">
  11332. <doc xml:space="preserve">%TRUE on success, %FALSE if @address could not be
  11333. bound or any other error occurred (in which case @error will be
  11334. set).</doc>
  11335. <type name="gboolean" c:type="gboolean"/>
  11336. </return-value>
  11337. <parameters>
  11338. <instance-parameter name="server" transfer-ownership="none">
  11339. <doc xml:space="preserve">a #SoupServer</doc>
  11340. <type name="Server" c:type="SoupServer*"/>
  11341. </instance-parameter>
  11342. <parameter name="address" transfer-ownership="none">
  11343. <doc xml:space="preserve">the address of the interface to listen on</doc>
  11344. <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
  11345. </parameter>
  11346. <parameter name="options" transfer-ownership="none">
  11347. <doc xml:space="preserve">listening options for this server</doc>
  11348. <type name="ServerListenOptions" c:type="SoupServerListenOptions"/>
  11349. </parameter>
  11350. </parameters>
  11351. </method>
  11352. <method name="listen_all"
  11353. c:identifier="soup_server_listen_all"
  11354. version="2.48"
  11355. throws="1">
  11356. <doc xml:space="preserve">This attempts to set up @server to listen for connections on all
  11357. interfaces on the system. (That is, it listens on the addresses
  11358. &lt;literal&gt;0.0.0.0&lt;/literal&gt; and/or &lt;literal&gt;::&lt;/literal&gt;, depending
  11359. on whether @options includes %SOUP_SERVER_LISTEN_IPV4_ONLY,
  11360. %SOUP_SERVER_LISTEN_IPV6_ONLY, or neither.) If @port is specified,
  11361. @server will listen on that port. If it is 0, @server will find an
  11362. unused port to listen on. (In that case, you can use
  11363. soup_server_get_uris() to find out what port it ended up choosing.)
  11364. See soup_server_listen() for more details.</doc>
  11365. <return-value transfer-ownership="none">
  11366. <doc xml:space="preserve">%TRUE on success, %FALSE if @port could not be bound
  11367. or any other error occurred (in which case @error will be set).</doc>
  11368. <type name="gboolean" c:type="gboolean"/>
  11369. </return-value>
  11370. <parameters>
  11371. <instance-parameter name="server" transfer-ownership="none">
  11372. <doc xml:space="preserve">a #SoupServer</doc>
  11373. <type name="Server" c:type="SoupServer*"/>
  11374. </instance-parameter>
  11375. <parameter name="port" transfer-ownership="none">
  11376. <doc xml:space="preserve">the port to listen on, or 0</doc>
  11377. <type name="guint" c:type="guint"/>
  11378. </parameter>
  11379. <parameter name="options" transfer-ownership="none">
  11380. <doc xml:space="preserve">listening options for this server</doc>
  11381. <type name="ServerListenOptions" c:type="SoupServerListenOptions"/>
  11382. </parameter>
  11383. </parameters>
  11384. </method>
  11385. <method name="listen_fd"
  11386. c:identifier="soup_server_listen_fd"
  11387. version="2.48"
  11388. throws="1">
  11389. <doc xml:space="preserve">This attempts to set up @server to listen for connections on
  11390. @fd.
  11391. See soup_server_listen() for more details.
  11392. Note that @server will close @fd when you free it or call
  11393. soup_server_disconnect().</doc>
  11394. <return-value transfer-ownership="none">
  11395. <doc xml:space="preserve">%TRUE on success, %FALSE if an error occurred (in
  11396. which case @error will be set).</doc>
  11397. <type name="gboolean" c:type="gboolean"/>
  11398. </return-value>
  11399. <parameters>
  11400. <instance-parameter name="server" transfer-ownership="none">
  11401. <doc xml:space="preserve">a #SoupServer</doc>
  11402. <type name="Server" c:type="SoupServer*"/>
  11403. </instance-parameter>
  11404. <parameter name="fd" transfer-ownership="none">
  11405. <doc xml:space="preserve">the file descriptor of a listening socket</doc>
  11406. <type name="gint" c:type="int"/>
  11407. </parameter>
  11408. <parameter name="options" transfer-ownership="none">
  11409. <doc xml:space="preserve">listening options for this server</doc>
  11410. <type name="ServerListenOptions" c:type="SoupServerListenOptions"/>
  11411. </parameter>
  11412. </parameters>
  11413. </method>
  11414. <method name="listen_local"
  11415. c:identifier="soup_server_listen_local"
  11416. version="2.48"
  11417. throws="1">
  11418. <doc xml:space="preserve">This attempts to set up @server to listen for connections on
  11419. "localhost" (that is, &lt;literal&gt;127.0.0.1&lt;/literal&gt; and/or
  11420. &lt;literal&gt;::1&lt;/literal&gt;, depending on whether @options includes
  11421. %SOUP_SERVER_LISTEN_IPV4_ONLY, %SOUP_SERVER_LISTEN_IPV6_ONLY, or
  11422. neither). If @port is specified, @server will listen on that port.
  11423. If it is 0, @server will find an unused port to listen on. (In that
  11424. case, you can use soup_server_get_uris() to find out what port it
  11425. ended up choosing.)
  11426. See soup_server_listen() for more details.</doc>
  11427. <return-value transfer-ownership="none">
  11428. <doc xml:space="preserve">%TRUE on success, %FALSE if @port could not be bound
  11429. or any other error occurred (in which case @error will be set).</doc>
  11430. <type name="gboolean" c:type="gboolean"/>
  11431. </return-value>
  11432. <parameters>
  11433. <instance-parameter name="server" transfer-ownership="none">
  11434. <doc xml:space="preserve">a #SoupServer</doc>
  11435. <type name="Server" c:type="SoupServer*"/>
  11436. </instance-parameter>
  11437. <parameter name="port" transfer-ownership="none">
  11438. <doc xml:space="preserve">the port to listen on, or 0</doc>
  11439. <type name="guint" c:type="guint"/>
  11440. </parameter>
  11441. <parameter name="options" transfer-ownership="none">
  11442. <doc xml:space="preserve">listening options for this server</doc>
  11443. <type name="ServerListenOptions" c:type="SoupServerListenOptions"/>
  11444. </parameter>
  11445. </parameters>
  11446. </method>
  11447. <method name="listen_socket"
  11448. c:identifier="soup_server_listen_socket"
  11449. version="2.48"
  11450. throws="1">
  11451. <doc xml:space="preserve">This attempts to set up @server to listen for connections on
  11452. @socket.
  11453. See soup_server_listen() for more details.</doc>
  11454. <return-value transfer-ownership="none">
  11455. <doc xml:space="preserve">%TRUE on success, %FALSE if an error occurred (in
  11456. which case @error will be set).</doc>
  11457. <type name="gboolean" c:type="gboolean"/>
  11458. </return-value>
  11459. <parameters>
  11460. <instance-parameter name="server" transfer-ownership="none">
  11461. <doc xml:space="preserve">a #SoupServer</doc>
  11462. <type name="Server" c:type="SoupServer*"/>
  11463. </instance-parameter>
  11464. <parameter name="socket" transfer-ownership="none">
  11465. <doc xml:space="preserve">a listening #GSocket</doc>
  11466. <type name="Gio.Socket" c:type="GSocket*"/>
  11467. </parameter>
  11468. <parameter name="options" transfer-ownership="none">
  11469. <doc xml:space="preserve">listening options for this server</doc>
  11470. <type name="ServerListenOptions" c:type="SoupServerListenOptions"/>
  11471. </parameter>
  11472. </parameters>
  11473. </method>
  11474. <method name="pause_message" c:identifier="soup_server_pause_message">
  11475. <doc xml:space="preserve">Pauses I/O on @msg. This can be used when you need to return from
  11476. the server handler without having the full response ready yet. Use
  11477. soup_server_unpause_message() to resume I/O.
  11478. This must only be called on #SoupMessages which were created by the
  11479. #SoupServer and are currently doing I/O, such as those passed into a
  11480. #SoupServerCallback or emitted in a #SoupServer::request-read signal.</doc>
  11481. <return-value transfer-ownership="none">
  11482. <type name="none" c:type="void"/>
  11483. </return-value>
  11484. <parameters>
  11485. <instance-parameter name="server" transfer-ownership="none">
  11486. <doc xml:space="preserve">a #SoupServer</doc>
  11487. <type name="Server" c:type="SoupServer*"/>
  11488. </instance-parameter>
  11489. <parameter name="msg" transfer-ownership="none">
  11490. <doc xml:space="preserve">a #SoupMessage associated with @server.</doc>
  11491. <type name="Message" c:type="SoupMessage*"/>
  11492. </parameter>
  11493. </parameters>
  11494. </method>
  11495. <method name="quit" c:identifier="soup_server_quit" deprecated="1">
  11496. <doc xml:space="preserve">Stops processing for @server, if you are using the old API. Call
  11497. this to clean up after soup_server_run_async(), or to terminate a
  11498. call to soup_server_run().
  11499. Note that messages currently in progress will continue to be
  11500. handled, if the main loop associated with the server is resumed or
  11501. kept running.
  11502. @server is still in a working state after this call; you can start
  11503. and stop a server as many times as you want.</doc>
  11504. <doc-deprecated xml:space="preserve">When using soup_server_listen(), etc, the server will
  11505. always listen for connections, and will process them whenever the
  11506. thread-default #GMainContext is running.</doc-deprecated>
  11507. <return-value transfer-ownership="none">
  11508. <type name="none" c:type="void"/>
  11509. </return-value>
  11510. <parameters>
  11511. <instance-parameter name="server" transfer-ownership="none">
  11512. <doc xml:space="preserve">a #SoupServer</doc>
  11513. <type name="Server" c:type="SoupServer*"/>
  11514. </instance-parameter>
  11515. </parameters>
  11516. </method>
  11517. <method name="remove_auth_domain"
  11518. c:identifier="soup_server_remove_auth_domain">
  11519. <doc xml:space="preserve">Removes @auth_domain from @server.</doc>
  11520. <return-value transfer-ownership="none">
  11521. <type name="none" c:type="void"/>
  11522. </return-value>
  11523. <parameters>
  11524. <instance-parameter name="server" transfer-ownership="none">
  11525. <doc xml:space="preserve">a #SoupServer</doc>
  11526. <type name="Server" c:type="SoupServer*"/>
  11527. </instance-parameter>
  11528. <parameter name="auth_domain" transfer-ownership="none">
  11529. <doc xml:space="preserve">a #SoupAuthDomain</doc>
  11530. <type name="AuthDomain" c:type="SoupAuthDomain*"/>
  11531. </parameter>
  11532. </parameters>
  11533. </method>
  11534. <method name="remove_handler" c:identifier="soup_server_remove_handler">
  11535. <doc xml:space="preserve">Removes all handlers (early and normal) registered at @path.</doc>
  11536. <return-value transfer-ownership="none">
  11537. <type name="none" c:type="void"/>
  11538. </return-value>
  11539. <parameters>
  11540. <instance-parameter name="server" transfer-ownership="none">
  11541. <doc xml:space="preserve">a #SoupServer</doc>
  11542. <type name="Server" c:type="SoupServer*"/>
  11543. </instance-parameter>
  11544. <parameter name="path" transfer-ownership="none">
  11545. <doc xml:space="preserve">the toplevel path for the handler</doc>
  11546. <type name="utf8" c:type="const char*"/>
  11547. </parameter>
  11548. </parameters>
  11549. </method>
  11550. <method name="run" c:identifier="soup_server_run" deprecated="1">
  11551. <doc xml:space="preserve">Starts @server, if you are using the old API, causing it to listen
  11552. for and process incoming connections. Unlike
  11553. soup_server_run_async(), this creates a #GMainLoop and runs it, and
  11554. it will not return until someone calls soup_server_quit() to stop
  11555. the server.</doc>
  11556. <doc-deprecated xml:space="preserve">When using soup_server_listen(), etc, the server will
  11557. always listen for connections, and will process them whenever the
  11558. thread-default #GMainContext is running.</doc-deprecated>
  11559. <return-value transfer-ownership="none">
  11560. <type name="none" c:type="void"/>
  11561. </return-value>
  11562. <parameters>
  11563. <instance-parameter name="server" transfer-ownership="none">
  11564. <doc xml:space="preserve">a #SoupServer</doc>
  11565. <type name="Server" c:type="SoupServer*"/>
  11566. </instance-parameter>
  11567. </parameters>
  11568. </method>
  11569. <method name="run_async"
  11570. c:identifier="soup_server_run_async"
  11571. deprecated="1">
  11572. <doc xml:space="preserve">Starts @server, if you are using the old API, causing it to listen
  11573. for and process incoming connections.
  11574. The server runs in @server's #GMainContext. It will not actually
  11575. perform any processing unless the appropriate main loop is running.
  11576. In the simple case where you did not set the server's
  11577. %SOUP_SERVER_ASYNC_CONTEXT property, this means the server will run
  11578. whenever the glib main loop is running.</doc>
  11579. <doc-deprecated xml:space="preserve">When using soup_server_listen(), etc, the server will
  11580. always listen for connections, and will process them whenever the
  11581. thread-default #GMainContext is running.</doc-deprecated>
  11582. <return-value transfer-ownership="none">
  11583. <type name="none" c:type="void"/>
  11584. </return-value>
  11585. <parameters>
  11586. <instance-parameter name="server" transfer-ownership="none">
  11587. <doc xml:space="preserve">a #SoupServer</doc>
  11588. <type name="Server" c:type="SoupServer*"/>
  11589. </instance-parameter>
  11590. </parameters>
  11591. </method>
  11592. <method name="set_ssl_cert_file"
  11593. c:identifier="soup_server_set_ssl_cert_file"
  11594. version="2.48"
  11595. throws="1">
  11596. <doc xml:space="preserve">Sets @server up to do https, using the SSL/TLS certificate
  11597. specified by @ssl_cert_file and @ssl_key_file (which may point to
  11598. the same file).
  11599. Alternatively, you can set the #SoupServer:tls-certificate property
  11600. at construction time, if you already have a #GTlsCertificate.</doc>
  11601. <return-value transfer-ownership="none">
  11602. <doc xml:space="preserve">success or failure.</doc>
  11603. <type name="gboolean" c:type="gboolean"/>
  11604. </return-value>
  11605. <parameters>
  11606. <instance-parameter name="server" transfer-ownership="none">
  11607. <doc xml:space="preserve">a #SoupServer</doc>
  11608. <type name="Server" c:type="SoupServer*"/>
  11609. </instance-parameter>
  11610. <parameter name="ssl_cert_file" transfer-ownership="none">
  11611. <doc xml:space="preserve">path to a file containing a PEM-encoded SSL/TLS
  11612. certificate.</doc>
  11613. <type name="utf8" c:type="const char*"/>
  11614. </parameter>
  11615. <parameter name="ssl_key_file" transfer-ownership="none">
  11616. <doc xml:space="preserve">path to a file containing a PEM-encoded private key.</doc>
  11617. <type name="utf8" c:type="const char*"/>
  11618. </parameter>
  11619. </parameters>
  11620. </method>
  11621. <method name="unpause_message"
  11622. c:identifier="soup_server_unpause_message">
  11623. <doc xml:space="preserve">Resumes I/O on @msg. Use this to resume after calling
  11624. soup_server_pause_message(), or after adding a new chunk to a
  11625. chunked response.
  11626. I/O won't actually resume until you return to the main loop.
  11627. This must only be called on #SoupMessages which were created by the
  11628. #SoupServer and are currently doing I/O, such as those passed into a
  11629. #SoupServerCallback or emitted in a #SoupServer::request-read signal.</doc>
  11630. <return-value transfer-ownership="none">
  11631. <type name="none" c:type="void"/>
  11632. </return-value>
  11633. <parameters>
  11634. <instance-parameter name="server" transfer-ownership="none">
  11635. <doc xml:space="preserve">a #SoupServer</doc>
  11636. <type name="Server" c:type="SoupServer*"/>
  11637. </instance-parameter>
  11638. <parameter name="msg" transfer-ownership="none">
  11639. <doc xml:space="preserve">a #SoupMessage associated with @server.</doc>
  11640. <type name="Message" c:type="SoupMessage*"/>
  11641. </parameter>
  11642. </parameters>
  11643. </method>
  11644. <property name="async-context"
  11645. deprecated="1"
  11646. writable="1"
  11647. construct-only="1"
  11648. transfer-ownership="none">
  11649. <doc xml:space="preserve">The server's #GMainContext, if you are using the old API.
  11650. Servers created using soup_server_listen() will listen on
  11651. the #GMainContext that was the thread-default context at
  11652. the time soup_server_listen() was called.</doc>
  11653. <doc-deprecated xml:space="preserve">The new API uses the thread-default #GMainContext
  11654. rather than having an explicitly-specified one.</doc-deprecated>
  11655. <type name="gpointer" c:type="gpointer"/>
  11656. </property>
  11657. <property name="http-aliases"
  11658. version="2.44"
  11659. writable="1"
  11660. transfer-ownership="none">
  11661. <doc xml:space="preserve">A %NULL-terminated array of URI schemes that should be
  11662. considered to be aliases for "http". Eg, if this included
  11663. &lt;literal&gt;"dav"&lt;/literal&gt;, than a URI of
  11664. &lt;literal&gt;dav://example.com/path&lt;/literal&gt; would be treated
  11665. identically to &lt;literal&gt;http://example.com/path&lt;/literal&gt;.
  11666. In particular, this is needed in cases where a client
  11667. sends requests with absolute URIs, where those URIs do
  11668. not use "http:".
  11669. The default value is an array containing the single element
  11670. &lt;literal&gt;"*"&lt;/literal&gt;, a special value which means that
  11671. any scheme except "https" is considered to be an alias for
  11672. "http".
  11673. See also #SoupServer:https-aliases.</doc>
  11674. <array>
  11675. <type name="utf8"/>
  11676. </array>
  11677. </property>
  11678. <property name="https-aliases"
  11679. version="2.44"
  11680. writable="1"
  11681. transfer-ownership="none">
  11682. <doc xml:space="preserve">A comma-delimited list of URI schemes that should be
  11683. considered to be aliases for "https". See
  11684. #SoupServer:http-aliases for more information.
  11685. The default value is %NULL, meaning that no URI schemes
  11686. are considered aliases for "https".</doc>
  11687. <array>
  11688. <type name="utf8"/>
  11689. </array>
  11690. </property>
  11691. <property name="interface"
  11692. deprecated="1"
  11693. writable="1"
  11694. construct-only="1"
  11695. transfer-ownership="none">
  11696. <doc xml:space="preserve">The address of the network interface the server is
  11697. listening on, if you are using the old #SoupServer API.
  11698. (This will not be set if you use soup_server_listen(),
  11699. etc.)</doc>
  11700. <doc-deprecated xml:space="preserve">#SoupServers can listen on multiple interfaces
  11701. at once now. Use soup_server_listen(), etc, to listen on an
  11702. interface, and soup_server_get_uris() to see what addresses
  11703. are being listened on.</doc-deprecated>
  11704. <type name="Address"/>
  11705. </property>
  11706. <property name="port"
  11707. deprecated="1"
  11708. writable="1"
  11709. construct-only="1"
  11710. transfer-ownership="none">
  11711. <doc xml:space="preserve">The port the server is listening on, if you are using the
  11712. old #SoupServer API. (This will not be set if you use
  11713. soup_server_listen(), etc.)</doc>
  11714. <doc-deprecated xml:space="preserve">#SoupServers can listen on multiple interfaces
  11715. at once now. Use soup_server_listen(), etc, to listen on a
  11716. port, and soup_server_get_uris() to see what ports are
  11717. being listened on.</doc-deprecated>
  11718. <type name="guint" c:type="guint"/>
  11719. </property>
  11720. <property name="raw-paths"
  11721. writable="1"
  11722. construct-only="1"
  11723. transfer-ownership="none">
  11724. <type name="gboolean" c:type="gboolean"/>
  11725. </property>
  11726. <property name="server-header"
  11727. writable="1"
  11728. construct="1"
  11729. transfer-ownership="none">
  11730. <doc xml:space="preserve">If non-%NULL, the value to use for the "Server" header on
  11731. #SoupMessage&lt;!-- --&gt;s processed by this server.
  11732. The Server header is the server equivalent of the
  11733. User-Agent header, and provides information about the
  11734. server and its components. It contains a list of one or
  11735. more product tokens, separated by whitespace, with the most
  11736. significant product token coming first. The tokens must be
  11737. brief, ASCII, and mostly alphanumeric (although "-", "_",
  11738. and "." are also allowed), and may optionally include a "/"
  11739. followed by a version string. You may also put comments,
  11740. enclosed in parentheses, between or after the tokens.
  11741. Some HTTP server implementations intentionally do not use
  11742. version numbers in their Server header, so that
  11743. installations running older versions of the server don't
  11744. end up advertising their vulnerability to specific security
  11745. holes.
  11746. As with #SoupSession:user_agent, if you set a
  11747. #SoupServer:server_header property that has trailing whitespace,
  11748. #SoupServer will append its own product token (eg,
  11749. "&lt;literal&gt;libsoup/2.3.2&lt;/literal&gt;") to the end of the
  11750. header for you.</doc>
  11751. <type name="utf8" c:type="gchar*"/>
  11752. </property>
  11753. <property name="ssl-cert-file"
  11754. deprecated="1"
  11755. writable="1"
  11756. construct-only="1"
  11757. transfer-ownership="none">
  11758. <doc xml:space="preserve">Path to a file containing a PEM-encoded certificate.
  11759. If you set this property and #SoupServer:ssl-key-file at
  11760. construct time, then soup_server_new() will try to read the
  11761. files; if it cannot, it will return %NULL, with no explicit
  11762. indication of what went wrong (and logging a warning with
  11763. newer versions of glib, since returning %NULL from a
  11764. constructor is illegal).</doc>
  11765. <doc-deprecated xml:space="preserve">use #SoupServer:tls-certificate or
  11766. soup_server_set_ssl_certificate().</doc-deprecated>
  11767. <type name="utf8" c:type="gchar*"/>
  11768. </property>
  11769. <property name="ssl-key-file"
  11770. deprecated="1"
  11771. writable="1"
  11772. construct-only="1"
  11773. transfer-ownership="none">
  11774. <doc xml:space="preserve">Path to a file containing a PEM-encoded private key. See
  11775. #SoupServer:ssl-cert-file for more information about how this
  11776. is used.</doc>
  11777. <doc-deprecated xml:space="preserve">use #SoupServer:tls-certificate or
  11778. soup_server_set_ssl_certificate().</doc-deprecated>
  11779. <type name="utf8" c:type="gchar*"/>
  11780. </property>
  11781. <property name="tls-certificate"
  11782. version="2.38"
  11783. writable="1"
  11784. construct-only="1"
  11785. transfer-ownership="none">
  11786. <doc xml:space="preserve">A #GTlsCertificate that has a #GTlsCertificate:private-key
  11787. set. If this is set, then the server will be able to speak
  11788. https in addition to (or instead of) plain http.
  11789. Alternatively, you can call soup_server_set_ssl_cert_file()
  11790. to have #SoupServer read in a a certificate from a file.</doc>
  11791. <type name="Gio.TlsCertificate"/>
  11792. </property>
  11793. <field name="parent">
  11794. <type name="GObject.Object" c:type="GObject"/>
  11795. </field>
  11796. <glib:signal name="request-aborted" when="first">
  11797. <doc xml:space="preserve">Emitted when processing has failed for a message; this
  11798. could mean either that it could not be read (if
  11799. #SoupServer::request_read has not been emitted for it yet),
  11800. or that the response could not be written back (if
  11801. #SoupServer::request_read has been emitted but
  11802. #SoupServer::request_finished has not been).
  11803. @message is in an undefined state when this signal is
  11804. emitted; the signal exists primarily to allow the server to
  11805. free any state that it may have allocated in
  11806. #SoupServer::request_started.</doc>
  11807. <return-value transfer-ownership="none">
  11808. <type name="none" c:type="void"/>
  11809. </return-value>
  11810. <parameters>
  11811. <parameter name="message" transfer-ownership="none">
  11812. <doc xml:space="preserve">the message</doc>
  11813. <type name="Message"/>
  11814. </parameter>
  11815. <parameter name="client" transfer-ownership="none">
  11816. <doc xml:space="preserve">the client context</doc>
  11817. <type name="ClientContext"/>
  11818. </parameter>
  11819. </parameters>
  11820. </glib:signal>
  11821. <glib:signal name="request-finished" when="first">
  11822. <doc xml:space="preserve">Emitted when the server has finished writing a response to
  11823. a request.</doc>
  11824. <return-value transfer-ownership="none">
  11825. <type name="none" c:type="void"/>
  11826. </return-value>
  11827. <parameters>
  11828. <parameter name="message" transfer-ownership="none">
  11829. <doc xml:space="preserve">the message</doc>
  11830. <type name="Message"/>
  11831. </parameter>
  11832. <parameter name="client" transfer-ownership="none">
  11833. <doc xml:space="preserve">the client context</doc>
  11834. <type name="ClientContext"/>
  11835. </parameter>
  11836. </parameters>
  11837. </glib:signal>
  11838. <glib:signal name="request-read" when="first">
  11839. <doc xml:space="preserve">Emitted when the server has successfully read a request.
  11840. @message will have all of its request-side information
  11841. filled in, and if the message was authenticated, @client
  11842. will have information about that. This signal is emitted
  11843. before any (non-early) handlers are called for the message,
  11844. and if it sets the message's #status_code, then normal
  11845. handler processing will be skipped.</doc>
  11846. <return-value transfer-ownership="none">
  11847. <type name="none" c:type="void"/>
  11848. </return-value>
  11849. <parameters>
  11850. <parameter name="message" transfer-ownership="none">
  11851. <doc xml:space="preserve">the message</doc>
  11852. <type name="Message"/>
  11853. </parameter>
  11854. <parameter name="client" transfer-ownership="none">
  11855. <doc xml:space="preserve">the client context</doc>
  11856. <type name="ClientContext"/>
  11857. </parameter>
  11858. </parameters>
  11859. </glib:signal>
  11860. <glib:signal name="request-started" when="first">
  11861. <doc xml:space="preserve">Emitted when the server has started reading a new request.
  11862. @message will be completely blank; not even the
  11863. Request-Line will have been read yet. About the only thing
  11864. you can usefully do with it is connect to its signals.
  11865. If the request is read successfully, this will eventually
  11866. be followed by a #SoupServer::request_read signal. If a
  11867. response is then sent, the request processing will end with
  11868. a #SoupServer::request_finished signal. If a network error
  11869. occurs, the processing will instead end with
  11870. #SoupServer::request_aborted.</doc>
  11871. <return-value transfer-ownership="none">
  11872. <type name="none" c:type="void"/>
  11873. </return-value>
  11874. <parameters>
  11875. <parameter name="message" transfer-ownership="none">
  11876. <doc xml:space="preserve">the new message</doc>
  11877. <type name="Message"/>
  11878. </parameter>
  11879. <parameter name="client" transfer-ownership="none">
  11880. <doc xml:space="preserve">the client context</doc>
  11881. <type name="ClientContext"/>
  11882. </parameter>
  11883. </parameters>
  11884. </glib:signal>
  11885. </class>
  11886. <callback name="ServerCallback" c:type="SoupServerCallback">
  11887. <doc xml:space="preserve">A callback used to handle requests to a #SoupServer.
  11888. @path and @query contain the likewise-named components of the
  11889. Request-URI, subject to certain assumptions. By default,
  11890. #SoupServer decodes all percent-encoding in the URI path, such that
  11891. "/foo%&lt;!-- --&gt;2Fbar" is treated the same as "/foo/bar". If your
  11892. server is serving resources in some non-POSIX-filesystem namespace,
  11893. you may want to distinguish those as two distinct paths. In that
  11894. case, you can set the %SOUP_SERVER_RAW_PATHS property when creating
  11895. the #SoupServer, and it will leave those characters undecoded. (You
  11896. may want to call soup_uri_normalize() to decode any percent-encoded
  11897. characters that you aren't handling specially.)
  11898. @query contains the query component of the Request-URI parsed
  11899. according to the rules for HTML form handling. Although this is the
  11900. only commonly-used query string format in HTTP, there is nothing
  11901. that actually requires that HTTP URIs use that format; if your
  11902. server needs to use some other format, you can just ignore @query,
  11903. and call soup_message_get_uri() and parse the URI's query field
  11904. yourself.
  11905. See soup_server_add_handler() and soup_server_add_early_handler()
  11906. for details of what handlers can/should do.</doc>
  11907. <return-value transfer-ownership="none">
  11908. <type name="none" c:type="void"/>
  11909. </return-value>
  11910. <parameters>
  11911. <parameter name="server" transfer-ownership="none">
  11912. <doc xml:space="preserve">the #SoupServer</doc>
  11913. <type name="Server" c:type="SoupServer*"/>
  11914. </parameter>
  11915. <parameter name="msg" transfer-ownership="none">
  11916. <doc xml:space="preserve">the message being processed</doc>
  11917. <type name="Message" c:type="SoupMessage*"/>
  11918. </parameter>
  11919. <parameter name="path" transfer-ownership="none">
  11920. <doc xml:space="preserve">the path component of @msg's Request-URI</doc>
  11921. <type name="utf8" c:type="const char*"/>
  11922. </parameter>
  11923. <parameter name="query"
  11924. transfer-ownership="none"
  11925. nullable="1"
  11926. allow-none="1">
  11927. <doc xml:space="preserve">the parsed query
  11928. component of @msg's Request-URI</doc>
  11929. <type name="GLib.HashTable" c:type="GHashTable*">
  11930. <type name="utf8"/>
  11931. <type name="utf8"/>
  11932. </type>
  11933. </parameter>
  11934. <parameter name="client" transfer-ownership="none">
  11935. <doc xml:space="preserve">additional contextual information about the client</doc>
  11936. <type name="ClientContext" c:type="SoupClientContext*"/>
  11937. </parameter>
  11938. <parameter name="user_data"
  11939. transfer-ownership="none"
  11940. nullable="1"
  11941. allow-none="1"
  11942. closure="5">
  11943. <doc xml:space="preserve">the data passed to soup_server_add_handler() or
  11944. soup_server_add_early_handler().</doc>
  11945. <type name="gpointer" c:type="gpointer"/>
  11946. </parameter>
  11947. </parameters>
  11948. </callback>
  11949. <record name="ServerClass"
  11950. c:type="SoupServerClass"
  11951. glib:is-gtype-struct-for="Server">
  11952. <field name="parent_class">
  11953. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  11954. </field>
  11955. <field name="request_started">
  11956. <callback name="request_started">
  11957. <return-value transfer-ownership="none">
  11958. <type name="none" c:type="void"/>
  11959. </return-value>
  11960. <parameters>
  11961. <parameter name="server" transfer-ownership="none">
  11962. <type name="Server" c:type="SoupServer*"/>
  11963. </parameter>
  11964. <parameter name="msg" transfer-ownership="none">
  11965. <type name="Message" c:type="SoupMessage*"/>
  11966. </parameter>
  11967. <parameter name="client" transfer-ownership="none">
  11968. <type name="ClientContext" c:type="SoupClientContext*"/>
  11969. </parameter>
  11970. </parameters>
  11971. </callback>
  11972. </field>
  11973. <field name="request_read">
  11974. <callback name="request_read">
  11975. <return-value transfer-ownership="none">
  11976. <type name="none" c:type="void"/>
  11977. </return-value>
  11978. <parameters>
  11979. <parameter name="server" transfer-ownership="none">
  11980. <type name="Server" c:type="SoupServer*"/>
  11981. </parameter>
  11982. <parameter name="msg" transfer-ownership="none">
  11983. <type name="Message" c:type="SoupMessage*"/>
  11984. </parameter>
  11985. <parameter name="client" transfer-ownership="none">
  11986. <type name="ClientContext" c:type="SoupClientContext*"/>
  11987. </parameter>
  11988. </parameters>
  11989. </callback>
  11990. </field>
  11991. <field name="request_finished">
  11992. <callback name="request_finished">
  11993. <return-value transfer-ownership="none">
  11994. <type name="none" c:type="void"/>
  11995. </return-value>
  11996. <parameters>
  11997. <parameter name="server" transfer-ownership="none">
  11998. <type name="Server" c:type="SoupServer*"/>
  11999. </parameter>
  12000. <parameter name="msg" transfer-ownership="none">
  12001. <type name="Message" c:type="SoupMessage*"/>
  12002. </parameter>
  12003. <parameter name="client" transfer-ownership="none">
  12004. <type name="ClientContext" c:type="SoupClientContext*"/>
  12005. </parameter>
  12006. </parameters>
  12007. </callback>
  12008. </field>
  12009. <field name="request_aborted">
  12010. <callback name="request_aborted">
  12011. <return-value transfer-ownership="none">
  12012. <type name="none" c:type="void"/>
  12013. </return-value>
  12014. <parameters>
  12015. <parameter name="server" transfer-ownership="none">
  12016. <type name="Server" c:type="SoupServer*"/>
  12017. </parameter>
  12018. <parameter name="msg" transfer-ownership="none">
  12019. <type name="Message" c:type="SoupMessage*"/>
  12020. </parameter>
  12021. <parameter name="client" transfer-ownership="none">
  12022. <type name="ClientContext" c:type="SoupClientContext*"/>
  12023. </parameter>
  12024. </parameters>
  12025. </callback>
  12026. </field>
  12027. <field name="_libsoup_reserved1" introspectable="0">
  12028. <callback name="_libsoup_reserved1">
  12029. <return-value transfer-ownership="none">
  12030. <type name="none" c:type="void"/>
  12031. </return-value>
  12032. </callback>
  12033. </field>
  12034. <field name="_libsoup_reserved2" introspectable="0">
  12035. <callback name="_libsoup_reserved2">
  12036. <return-value transfer-ownership="none">
  12037. <type name="none" c:type="void"/>
  12038. </return-value>
  12039. </callback>
  12040. </field>
  12041. <field name="_libsoup_reserved3" introspectable="0">
  12042. <callback name="_libsoup_reserved3">
  12043. <return-value transfer-ownership="none">
  12044. <type name="none" c:type="void"/>
  12045. </return-value>
  12046. </callback>
  12047. </field>
  12048. <field name="_libsoup_reserved4" introspectable="0">
  12049. <callback name="_libsoup_reserved4">
  12050. <return-value transfer-ownership="none">
  12051. <type name="none" c:type="void"/>
  12052. </return-value>
  12053. </callback>
  12054. </field>
  12055. </record>
  12056. <bitfield name="ServerListenOptions"
  12057. version="2.48"
  12058. glib:type-name="SoupServerListenOptions"
  12059. glib:get-type="soup_server_listen_options_get_type"
  12060. c:type="SoupServerListenOptions">
  12061. <doc xml:space="preserve">Options to pass to soup_server_listen(), etc.
  12062. %SOUP_SERVER_LISTEN_IPV4_ONLY and %SOUP_SERVER_LISTEN_IPV6_ONLY
  12063. only make sense with soup_server_listen_all() and
  12064. soup_server_listen_local(), not plain soup_server_listen() (which
  12065. simply listens on whatever kind of socket you give it). And you
  12066. cannot specify both of them in a single call.</doc>
  12067. <member name="https"
  12068. value="1"
  12069. c:identifier="SOUP_SERVER_LISTEN_HTTPS"
  12070. glib:nick="https">
  12071. <doc xml:space="preserve">Listen for https connections rather
  12072. than plain http.</doc>
  12073. </member>
  12074. <member name="ipv4_only"
  12075. value="2"
  12076. c:identifier="SOUP_SERVER_LISTEN_IPV4_ONLY"
  12077. glib:nick="ipv4-only">
  12078. <doc xml:space="preserve">Only listen on IPv4 interfaces.</doc>
  12079. </member>
  12080. <member name="ipv6_only"
  12081. value="4"
  12082. c:identifier="SOUP_SERVER_LISTEN_IPV6_ONLY"
  12083. glib:nick="ipv6-only">
  12084. <doc xml:space="preserve">Only listen on IPv6 interfaces.</doc>
  12085. </member>
  12086. </bitfield>
  12087. <callback name="ServerWebsocketCallback"
  12088. c:type="SoupServerWebsocketCallback">
  12089. <doc xml:space="preserve">A callback used to handle WebSocket requests to a #SoupServer. The
  12090. callback will be invoked after sending the handshake response back
  12091. to the client (and is only invoked if the handshake was
  12092. successful).
  12093. @path contains the path of the Request-URI, subject to the same
  12094. rules as #SoupServerCallback (qv).</doc>
  12095. <return-value transfer-ownership="none">
  12096. <type name="none" c:type="void"/>
  12097. </return-value>
  12098. <parameters>
  12099. <parameter name="server" transfer-ownership="none">
  12100. <doc xml:space="preserve">the #SoupServer</doc>
  12101. <type name="Server" c:type="SoupServer*"/>
  12102. </parameter>
  12103. <parameter name="connection" transfer-ownership="none">
  12104. <doc xml:space="preserve">the newly created WebSocket connection</doc>
  12105. <type name="WebsocketConnection" c:type="SoupWebsocketConnection*"/>
  12106. </parameter>
  12107. <parameter name="path" transfer-ownership="none">
  12108. <doc xml:space="preserve">the path component of @msg's Request-URI</doc>
  12109. <type name="utf8" c:type="const char*"/>
  12110. </parameter>
  12111. <parameter name="client" transfer-ownership="none">
  12112. <doc xml:space="preserve">additional contextual information about the client</doc>
  12113. <type name="ClientContext" c:type="SoupClientContext*"/>
  12114. </parameter>
  12115. <parameter name="user_data"
  12116. transfer-ownership="none"
  12117. nullable="1"
  12118. allow-none="1"
  12119. closure="4">
  12120. <doc xml:space="preserve">the data passed to @soup_server_add_handler</doc>
  12121. <type name="gpointer" c:type="gpointer"/>
  12122. </parameter>
  12123. </parameters>
  12124. </callback>
  12125. <class name="Session"
  12126. c:symbol-prefix="session"
  12127. c:type="SoupSession"
  12128. parent="GObject.Object"
  12129. glib:type-name="SoupSession"
  12130. glib:get-type="soup_session_get_type"
  12131. glib:type-struct="SessionClass">
  12132. <constructor name="new" c:identifier="soup_session_new" version="2.42">
  12133. <doc xml:space="preserve">Creates a #SoupSession with the default options.</doc>
  12134. <return-value transfer-ownership="full">
  12135. <doc xml:space="preserve">the new session.</doc>
  12136. <type name="Session" c:type="SoupSession*"/>
  12137. </return-value>
  12138. </constructor>
  12139. <constructor name="new_with_options"
  12140. c:identifier="soup_session_new_with_options"
  12141. version="2.42"
  12142. introspectable="0">
  12143. <doc xml:space="preserve">Creates a #SoupSession with the specified options.</doc>
  12144. <return-value transfer-ownership="full">
  12145. <doc xml:space="preserve">the new session.</doc>
  12146. <type name="Session" c:type="SoupSession*"/>
  12147. </return-value>
  12148. <parameters>
  12149. <parameter name="optname1" transfer-ownership="none">
  12150. <doc xml:space="preserve">name of first property to set</doc>
  12151. <type name="utf8" c:type="const char*"/>
  12152. </parameter>
  12153. <parameter name="..." transfer-ownership="none">
  12154. <doc xml:space="preserve">value of @optname1, followed by additional property/value pairs</doc>
  12155. <varargs/>
  12156. </parameter>
  12157. </parameters>
  12158. </constructor>
  12159. <virtual-method name="auth_required">
  12160. <return-value transfer-ownership="none">
  12161. <type name="none" c:type="void"/>
  12162. </return-value>
  12163. <parameters>
  12164. <instance-parameter name="session" transfer-ownership="none">
  12165. <type name="Session" c:type="SoupSession*"/>
  12166. </instance-parameter>
  12167. <parameter name="msg" transfer-ownership="none">
  12168. <type name="Message" c:type="SoupMessage*"/>
  12169. </parameter>
  12170. <parameter name="auth" transfer-ownership="none">
  12171. <type name="Auth" c:type="SoupAuth*"/>
  12172. </parameter>
  12173. <parameter name="retrying" transfer-ownership="none">
  12174. <type name="gboolean" c:type="gboolean"/>
  12175. </parameter>
  12176. </parameters>
  12177. </virtual-method>
  12178. <virtual-method name="authenticate">
  12179. <return-value transfer-ownership="none">
  12180. <type name="none" c:type="void"/>
  12181. </return-value>
  12182. <parameters>
  12183. <instance-parameter name="session" transfer-ownership="none">
  12184. <type name="Session" c:type="SoupSession*"/>
  12185. </instance-parameter>
  12186. <parameter name="msg" transfer-ownership="none">
  12187. <type name="Message" c:type="SoupMessage*"/>
  12188. </parameter>
  12189. <parameter name="auth" transfer-ownership="none">
  12190. <type name="Auth" c:type="SoupAuth*"/>
  12191. </parameter>
  12192. <parameter name="retrying" transfer-ownership="none">
  12193. <type name="gboolean" c:type="gboolean"/>
  12194. </parameter>
  12195. </parameters>
  12196. </virtual-method>
  12197. <virtual-method name="cancel_message" invoker="cancel_message">
  12198. <doc xml:space="preserve">Causes @session to immediately finish processing @msg (regardless
  12199. of its current state) with a final status_code of @status_code. You
  12200. may call this at any time after handing @msg off to @session; if
  12201. @session has started sending the request but has not yet received
  12202. the complete response, then it will close the request's connection.
  12203. Note that with requests that have side effects (eg,
  12204. &lt;literal&gt;POST&lt;/literal&gt;, &lt;literal&gt;PUT&lt;/literal&gt;,
  12205. &lt;literal&gt;DELETE&lt;/literal&gt;) it is possible that you might cancel the
  12206. request after the server acts on it, but before it returns a
  12207. response, leaving the remote resource in an unknown state.
  12208. If the message is cancelled while its response body is being read,
  12209. then the response body in @msg will be left partially-filled-in.
  12210. The response headers, on the other hand, will always be either
  12211. empty or complete.
  12212. Beware that with the deprecated #SoupSessionAsync, messages queued
  12213. with soup_session_queue_message() will have their callbacks invoked
  12214. before soup_session_cancel_message() returns. The plain
  12215. #SoupSession does not have this behavior; cancelling an
  12216. asynchronous message will merely queue its callback to be run after
  12217. returning to the main loop.</doc>
  12218. <return-value transfer-ownership="none">
  12219. <type name="none" c:type="void"/>
  12220. </return-value>
  12221. <parameters>
  12222. <instance-parameter name="session" transfer-ownership="none">
  12223. <doc xml:space="preserve">a #SoupSession</doc>
  12224. <type name="Session" c:type="SoupSession*"/>
  12225. </instance-parameter>
  12226. <parameter name="msg" transfer-ownership="none">
  12227. <doc xml:space="preserve">the message to cancel</doc>
  12228. <type name="Message" c:type="SoupMessage*"/>
  12229. </parameter>
  12230. <parameter name="status_code" transfer-ownership="none">
  12231. <doc xml:space="preserve">status code to set on @msg (generally
  12232. %SOUP_STATUS_CANCELLED)</doc>
  12233. <type name="guint" c:type="guint"/>
  12234. </parameter>
  12235. </parameters>
  12236. </virtual-method>
  12237. <virtual-method name="flush_queue">
  12238. <return-value transfer-ownership="none">
  12239. <type name="none" c:type="void"/>
  12240. </return-value>
  12241. <parameters>
  12242. <instance-parameter name="session" transfer-ownership="none">
  12243. <type name="Session" c:type="SoupSession*"/>
  12244. </instance-parameter>
  12245. </parameters>
  12246. </virtual-method>
  12247. <virtual-method name="kick">
  12248. <return-value transfer-ownership="none">
  12249. <type name="none" c:type="void"/>
  12250. </return-value>
  12251. <parameters>
  12252. <instance-parameter name="session" transfer-ownership="none">
  12253. <type name="Session" c:type="SoupSession*"/>
  12254. </instance-parameter>
  12255. </parameters>
  12256. </virtual-method>
  12257. <virtual-method name="queue_message" invoker="queue_message">
  12258. <doc xml:space="preserve">Queues the message @msg for asynchronously sending the request and
  12259. receiving a response in the current thread-default #GMainContext.
  12260. If @msg has been processed before, any resources related to the
  12261. time it was last sent are freed.
  12262. Upon message completion, the callback specified in @callback will
  12263. be invoked. If after returning from this callback the message has not
  12264. been requeued, @msg will be unreffed.
  12265. (The behavior above applies to a plain #SoupSession; if you are
  12266. using #SoupSessionAsync or #SoupSessionSync, then the #GMainContext
  12267. that is used depends on the settings of #SoupSession:async-context
  12268. and #SoupSession:use-thread-context, and for #SoupSessionSync, the
  12269. message will actually be sent and processed in another thread, with
  12270. only the final callback occurring in the indicated #GMainContext.)
  12271. Contrast this method with soup_session_send_async(), which also
  12272. asynchronously sends a message, but returns before reading the
  12273. response body, and allows you to read the response via a
  12274. #GInputStream.</doc>
  12275. <return-value transfer-ownership="none">
  12276. <type name="none" c:type="void"/>
  12277. </return-value>
  12278. <parameters>
  12279. <instance-parameter name="session" transfer-ownership="none">
  12280. <doc xml:space="preserve">a #SoupSession</doc>
  12281. <type name="Session" c:type="SoupSession*"/>
  12282. </instance-parameter>
  12283. <parameter name="msg" transfer-ownership="full">
  12284. <doc xml:space="preserve">the message to queue</doc>
  12285. <type name="Message" c:type="SoupMessage*"/>
  12286. </parameter>
  12287. <parameter name="callback"
  12288. transfer-ownership="none"
  12289. nullable="1"
  12290. allow-none="1"
  12291. scope="async"
  12292. closure="2">
  12293. <doc xml:space="preserve">a #SoupSessionCallback which will
  12294. be called after the message completes or when an unrecoverable error occurs.</doc>
  12295. <type name="SessionCallback" c:type="SoupSessionCallback"/>
  12296. </parameter>
  12297. <parameter name="user_data"
  12298. transfer-ownership="none"
  12299. nullable="1"
  12300. allow-none="1"
  12301. closure="2">
  12302. <doc xml:space="preserve">a pointer passed to @callback.</doc>
  12303. <type name="gpointer" c:type="gpointer"/>
  12304. </parameter>
  12305. </parameters>
  12306. </virtual-method>
  12307. <virtual-method name="request_started">
  12308. <return-value transfer-ownership="none">
  12309. <type name="none" c:type="void"/>
  12310. </return-value>
  12311. <parameters>
  12312. <instance-parameter name="session" transfer-ownership="none">
  12313. <type name="Session" c:type="SoupSession*"/>
  12314. </instance-parameter>
  12315. <parameter name="msg" transfer-ownership="none">
  12316. <type name="Message" c:type="SoupMessage*"/>
  12317. </parameter>
  12318. <parameter name="socket" transfer-ownership="none">
  12319. <type name="Socket" c:type="SoupSocket*"/>
  12320. </parameter>
  12321. </parameters>
  12322. </virtual-method>
  12323. <virtual-method name="requeue_message" invoker="requeue_message">
  12324. <doc xml:space="preserve">This causes @msg to be placed back on the queue to be attempted
  12325. again.</doc>
  12326. <return-value transfer-ownership="none">
  12327. <type name="none" c:type="void"/>
  12328. </return-value>
  12329. <parameters>
  12330. <instance-parameter name="session" transfer-ownership="none">
  12331. <doc xml:space="preserve">a #SoupSession</doc>
  12332. <type name="Session" c:type="SoupSession*"/>
  12333. </instance-parameter>
  12334. <parameter name="msg" transfer-ownership="none">
  12335. <doc xml:space="preserve">the message to requeue</doc>
  12336. <type name="Message" c:type="SoupMessage*"/>
  12337. </parameter>
  12338. </parameters>
  12339. </virtual-method>
  12340. <virtual-method name="send_message" invoker="send_message">
  12341. <doc xml:space="preserve">Synchronously send @msg. This call will not return until the
  12342. transfer is finished successfully or there is an unrecoverable
  12343. error.
  12344. Unlike with soup_session_queue_message(), @msg is not freed upon
  12345. return.
  12346. (Note that if you call this method on a #SoupSessionAsync, it will
  12347. still use asynchronous I/O internally, running the glib main loop
  12348. to process the message, which may also cause other events to be
  12349. processed.)
  12350. Contrast this method with soup_session_send(), which also
  12351. synchronously sends a message, but returns before reading the
  12352. response body, and allows you to read the response via a
  12353. #GInputStream.</doc>
  12354. <return-value transfer-ownership="none">
  12355. <doc xml:space="preserve">the HTTP status code of the response</doc>
  12356. <type name="guint" c:type="guint"/>
  12357. </return-value>
  12358. <parameters>
  12359. <instance-parameter name="session" transfer-ownership="none">
  12360. <doc xml:space="preserve">a #SoupSession</doc>
  12361. <type name="Session" c:type="SoupSession*"/>
  12362. </instance-parameter>
  12363. <parameter name="msg" transfer-ownership="none">
  12364. <doc xml:space="preserve">the message to send</doc>
  12365. <type name="Message" c:type="SoupMessage*"/>
  12366. </parameter>
  12367. </parameters>
  12368. </virtual-method>
  12369. <method name="abort" c:identifier="soup_session_abort">
  12370. <doc xml:space="preserve">Cancels all pending requests in @session and closes all idle
  12371. persistent connections.
  12372. The message cancellation has the same semantics as with
  12373. soup_session_cancel_message(); asynchronous requests on a
  12374. #SoupSessionAsync will have their callback called before
  12375. soup_session_abort() returns. Requests on a plain #SoupSession will
  12376. not.</doc>
  12377. <return-value transfer-ownership="none">
  12378. <type name="none" c:type="void"/>
  12379. </return-value>
  12380. <parameters>
  12381. <instance-parameter name="session" transfer-ownership="none">
  12382. <doc xml:space="preserve">the session</doc>
  12383. <type name="Session" c:type="SoupSession*"/>
  12384. </instance-parameter>
  12385. </parameters>
  12386. </method>
  12387. <method name="add_feature"
  12388. c:identifier="soup_session_add_feature"
  12389. version="2.24">
  12390. <doc xml:space="preserve">Adds @feature's functionality to @session. You can also add a
  12391. feature to the session at construct time by using the
  12392. %SOUP_SESSION_ADD_FEATURE property.
  12393. See the main #SoupSession documentation for information on what
  12394. features are present in sessions by default.</doc>
  12395. <return-value transfer-ownership="none">
  12396. <type name="none" c:type="void"/>
  12397. </return-value>
  12398. <parameters>
  12399. <instance-parameter name="session" transfer-ownership="none">
  12400. <doc xml:space="preserve">a #SoupSession</doc>
  12401. <type name="Session" c:type="SoupSession*"/>
  12402. </instance-parameter>
  12403. <parameter name="feature" transfer-ownership="none">
  12404. <doc xml:space="preserve">an object that implements #SoupSessionFeature</doc>
  12405. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  12406. </parameter>
  12407. </parameters>
  12408. </method>
  12409. <method name="add_feature_by_type"
  12410. c:identifier="soup_session_add_feature_by_type"
  12411. version="2.24">
  12412. <doc xml:space="preserve">If @feature_type is the type of a class that implements
  12413. #SoupSessionFeature, this creates a new feature of that type and
  12414. adds it to @session as with soup_session_add_feature(). You can use
  12415. this when you don't need to customize the new feature in any way.
  12416. If @feature_type is not a #SoupSessionFeature type, this gives each
  12417. existing feature on @session the chance to accept @feature_type as
  12418. a "subfeature". This can be used to add new #SoupAuth or
  12419. #SoupRequest types, for instance.
  12420. You can also add a feature to the session at construct time by
  12421. using the %SOUP_SESSION_ADD_FEATURE_BY_TYPE property.
  12422. See the main #SoupSession documentation for information on what
  12423. features are present in sessions by default.</doc>
  12424. <return-value transfer-ownership="none">
  12425. <type name="none" c:type="void"/>
  12426. </return-value>
  12427. <parameters>
  12428. <instance-parameter name="session" transfer-ownership="none">
  12429. <doc xml:space="preserve">a #SoupSession</doc>
  12430. <type name="Session" c:type="SoupSession*"/>
  12431. </instance-parameter>
  12432. <parameter name="feature_type" transfer-ownership="none">
  12433. <doc xml:space="preserve">a #GType</doc>
  12434. <type name="GType" c:type="GType"/>
  12435. </parameter>
  12436. </parameters>
  12437. </method>
  12438. <method name="cancel_message" c:identifier="soup_session_cancel_message">
  12439. <doc xml:space="preserve">Causes @session to immediately finish processing @msg (regardless
  12440. of its current state) with a final status_code of @status_code. You
  12441. may call this at any time after handing @msg off to @session; if
  12442. @session has started sending the request but has not yet received
  12443. the complete response, then it will close the request's connection.
  12444. Note that with requests that have side effects (eg,
  12445. &lt;literal&gt;POST&lt;/literal&gt;, &lt;literal&gt;PUT&lt;/literal&gt;,
  12446. &lt;literal&gt;DELETE&lt;/literal&gt;) it is possible that you might cancel the
  12447. request after the server acts on it, but before it returns a
  12448. response, leaving the remote resource in an unknown state.
  12449. If the message is cancelled while its response body is being read,
  12450. then the response body in @msg will be left partially-filled-in.
  12451. The response headers, on the other hand, will always be either
  12452. empty or complete.
  12453. Beware that with the deprecated #SoupSessionAsync, messages queued
  12454. with soup_session_queue_message() will have their callbacks invoked
  12455. before soup_session_cancel_message() returns. The plain
  12456. #SoupSession does not have this behavior; cancelling an
  12457. asynchronous message will merely queue its callback to be run after
  12458. returning to the main loop.</doc>
  12459. <return-value transfer-ownership="none">
  12460. <type name="none" c:type="void"/>
  12461. </return-value>
  12462. <parameters>
  12463. <instance-parameter name="session" transfer-ownership="none">
  12464. <doc xml:space="preserve">a #SoupSession</doc>
  12465. <type name="Session" c:type="SoupSession*"/>
  12466. </instance-parameter>
  12467. <parameter name="msg" transfer-ownership="none">
  12468. <doc xml:space="preserve">the message to cancel</doc>
  12469. <type name="Message" c:type="SoupMessage*"/>
  12470. </parameter>
  12471. <parameter name="status_code" transfer-ownership="none">
  12472. <doc xml:space="preserve">status code to set on @msg (generally
  12473. %SOUP_STATUS_CANCELLED)</doc>
  12474. <type name="guint" c:type="guint"/>
  12475. </parameter>
  12476. </parameters>
  12477. </method>
  12478. <method name="get_async_context"
  12479. c:identifier="soup_session_get_async_context">
  12480. <doc xml:space="preserve">Gets @session's #SoupSession:async-context. This does not add a ref
  12481. to the context, so you will need to ref it yourself if you want it
  12482. to outlive its session.
  12483. For a modern #SoupSession, this will always just return the
  12484. thread-default #GMainContext, and so is not especially useful.</doc>
  12485. <return-value transfer-ownership="none" nullable="1">
  12486. <doc xml:space="preserve">@session's #GMainContext,
  12487. which may be %NULL</doc>
  12488. <type name="GLib.MainContext" c:type="GMainContext*"/>
  12489. </return-value>
  12490. <parameters>
  12491. <instance-parameter name="session" transfer-ownership="none">
  12492. <doc xml:space="preserve">a #SoupSession</doc>
  12493. <type name="Session" c:type="SoupSession*"/>
  12494. </instance-parameter>
  12495. </parameters>
  12496. </method>
  12497. <method name="get_feature"
  12498. c:identifier="soup_session_get_feature"
  12499. version="2.26">
  12500. <doc xml:space="preserve">Gets the first feature in @session of type @feature_type. For
  12501. features where there may be more than one feature of a given type,
  12502. use soup_session_get_features().</doc>
  12503. <return-value transfer-ownership="none" nullable="1">
  12504. <doc xml:space="preserve">a #SoupSessionFeature, or
  12505. %NULL. The feature is owned by @session.</doc>
  12506. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  12507. </return-value>
  12508. <parameters>
  12509. <instance-parameter name="session" transfer-ownership="none">
  12510. <doc xml:space="preserve">a #SoupSession</doc>
  12511. <type name="Session" c:type="SoupSession*"/>
  12512. </instance-parameter>
  12513. <parameter name="feature_type" transfer-ownership="none">
  12514. <doc xml:space="preserve">the #GType of the feature to get</doc>
  12515. <type name="GType" c:type="GType"/>
  12516. </parameter>
  12517. </parameters>
  12518. </method>
  12519. <method name="get_feature_for_message"
  12520. c:identifier="soup_session_get_feature_for_message"
  12521. version="2.28">
  12522. <doc xml:space="preserve">Gets the first feature in @session of type @feature_type, provided
  12523. that it is not disabled for @msg. As with
  12524. soup_session_get_feature(), this should only be used for features
  12525. where @feature_type is only expected to match a single feature. In
  12526. particular, if there are two matching features, and the first is
  12527. disabled on @msg, and the second is not, then this will return
  12528. %NULL, not the second feature.</doc>
  12529. <return-value transfer-ownership="none" nullable="1">
  12530. <doc xml:space="preserve">a #SoupSessionFeature, or %NULL. The
  12531. feature is owned by @session.</doc>
  12532. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  12533. </return-value>
  12534. <parameters>
  12535. <instance-parameter name="session" transfer-ownership="none">
  12536. <doc xml:space="preserve">a #SoupSession</doc>
  12537. <type name="Session" c:type="SoupSession*"/>
  12538. </instance-parameter>
  12539. <parameter name="feature_type" transfer-ownership="none">
  12540. <doc xml:space="preserve">the #GType of the feature to get</doc>
  12541. <type name="GType" c:type="GType"/>
  12542. </parameter>
  12543. <parameter name="msg" transfer-ownership="none">
  12544. <doc xml:space="preserve">a #SoupMessage</doc>
  12545. <type name="Message" c:type="SoupMessage*"/>
  12546. </parameter>
  12547. </parameters>
  12548. </method>
  12549. <method name="get_features"
  12550. c:identifier="soup_session_get_features"
  12551. version="2.26">
  12552. <doc xml:space="preserve">Generates a list of @session's features of type @feature_type. (If
  12553. you want to see all features, you can pass %SOUP_TYPE_SESSION_FEATURE
  12554. for @feature_type.)</doc>
  12555. <return-value transfer-ownership="container">
  12556. <doc xml:space="preserve">
  12557. a list of features. You must free the list, but not its contents</doc>
  12558. <type name="GLib.SList" c:type="GSList*">
  12559. <type name="SessionFeature"/>
  12560. </type>
  12561. </return-value>
  12562. <parameters>
  12563. <instance-parameter name="session" transfer-ownership="none">
  12564. <doc xml:space="preserve">a #SoupSession</doc>
  12565. <type name="Session" c:type="SoupSession*"/>
  12566. </instance-parameter>
  12567. <parameter name="feature_type" transfer-ownership="none">
  12568. <doc xml:space="preserve">the #GType of the class of features to get</doc>
  12569. <type name="GType" c:type="GType"/>
  12570. </parameter>
  12571. </parameters>
  12572. </method>
  12573. <method name="has_feature"
  12574. c:identifier="soup_session_has_feature"
  12575. version="2.42">
  12576. <doc xml:space="preserve">Tests if @session has at a feature of type @feature_type (which can
  12577. be the type of either a #SoupSessionFeature, or else a subtype of
  12578. some class managed by another feature, such as #SoupAuth or
  12579. #SoupRequest).</doc>
  12580. <return-value transfer-ownership="none">
  12581. <doc xml:space="preserve">%TRUE or %FALSE</doc>
  12582. <type name="gboolean" c:type="gboolean"/>
  12583. </return-value>
  12584. <parameters>
  12585. <instance-parameter name="session" transfer-ownership="none">
  12586. <doc xml:space="preserve">a #SoupSession</doc>
  12587. <type name="Session" c:type="SoupSession*"/>
  12588. </instance-parameter>
  12589. <parameter name="feature_type" transfer-ownership="none">
  12590. <doc xml:space="preserve">the #GType of the class of features to check for</doc>
  12591. <type name="GType" c:type="GType"/>
  12592. </parameter>
  12593. </parameters>
  12594. </method>
  12595. <method name="pause_message" c:identifier="soup_session_pause_message">
  12596. <doc xml:space="preserve">Pauses HTTP I/O on @msg. Call soup_session_unpause_message() to
  12597. resume I/O.
  12598. This may only be called for asynchronous messages (those sent on a
  12599. #SoupSessionAsync or using soup_session_queue_message()).</doc>
  12600. <return-value transfer-ownership="none">
  12601. <type name="none" c:type="void"/>
  12602. </return-value>
  12603. <parameters>
  12604. <instance-parameter name="session" transfer-ownership="none">
  12605. <doc xml:space="preserve">a #SoupSession</doc>
  12606. <type name="Session" c:type="SoupSession*"/>
  12607. </instance-parameter>
  12608. <parameter name="msg" transfer-ownership="none">
  12609. <doc xml:space="preserve">a #SoupMessage currently running on @session</doc>
  12610. <type name="Message" c:type="SoupMessage*"/>
  12611. </parameter>
  12612. </parameters>
  12613. </method>
  12614. <method name="prefetch_dns"
  12615. c:identifier="soup_session_prefetch_dns"
  12616. version="2.38">
  12617. <doc xml:space="preserve">Tells @session that an URI from the given @hostname may be requested
  12618. shortly, and so the session can try to prepare by resolving the
  12619. domain name in advance, in order to work more quickly once the URI
  12620. is actually requested.
  12621. If @cancellable is non-%NULL, it can be used to cancel the
  12622. resolution. @callback will still be invoked in this case, with a
  12623. status of %SOUP_STATUS_CANCELLED.</doc>
  12624. <return-value transfer-ownership="none">
  12625. <type name="none" c:type="void"/>
  12626. </return-value>
  12627. <parameters>
  12628. <instance-parameter name="session" transfer-ownership="none">
  12629. <doc xml:space="preserve">a #SoupSession</doc>
  12630. <type name="Session" c:type="SoupSession*"/>
  12631. </instance-parameter>
  12632. <parameter name="hostname" transfer-ownership="none">
  12633. <doc xml:space="preserve">a hostname to be resolved</doc>
  12634. <type name="utf8" c:type="const char*"/>
  12635. </parameter>
  12636. <parameter name="cancellable"
  12637. transfer-ownership="none"
  12638. nullable="1"
  12639. allow-none="1">
  12640. <doc xml:space="preserve">a #GCancellable object, or %NULL</doc>
  12641. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  12642. </parameter>
  12643. <parameter name="callback"
  12644. transfer-ownership="none"
  12645. nullable="1"
  12646. allow-none="1"
  12647. scope="async"
  12648. closure="3">
  12649. <doc xml:space="preserve">callback to call with the
  12650. result, or %NULL</doc>
  12651. <type name="AddressCallback" c:type="SoupAddressCallback"/>
  12652. </parameter>
  12653. <parameter name="user_data"
  12654. transfer-ownership="none"
  12655. nullable="1"
  12656. allow-none="1">
  12657. <doc xml:space="preserve">data for @callback</doc>
  12658. <type name="gpointer" c:type="gpointer"/>
  12659. </parameter>
  12660. </parameters>
  12661. </method>
  12662. <method name="prepare_for_uri"
  12663. c:identifier="soup_session_prepare_for_uri"
  12664. version="2.30"
  12665. deprecated="1"
  12666. deprecated-version="2.38">
  12667. <doc xml:space="preserve">Tells @session that @uri may be requested shortly, and so the
  12668. session can try to prepare (resolving the domain name, obtaining
  12669. proxy address, etc.) in order to work more quickly once the URI is
  12670. actually requested.</doc>
  12671. <doc-deprecated xml:space="preserve">use soup_session_prefetch_dns() instead</doc-deprecated>
  12672. <return-value transfer-ownership="none">
  12673. <type name="none" c:type="void"/>
  12674. </return-value>
  12675. <parameters>
  12676. <instance-parameter name="session" transfer-ownership="none">
  12677. <doc xml:space="preserve">a #SoupSession</doc>
  12678. <type name="Session" c:type="SoupSession*"/>
  12679. </instance-parameter>
  12680. <parameter name="uri" transfer-ownership="none">
  12681. <doc xml:space="preserve">a #SoupURI which may be required</doc>
  12682. <type name="URI" c:type="SoupURI*"/>
  12683. </parameter>
  12684. </parameters>
  12685. </method>
  12686. <method name="queue_message" c:identifier="soup_session_queue_message">
  12687. <doc xml:space="preserve">Queues the message @msg for asynchronously sending the request and
  12688. receiving a response in the current thread-default #GMainContext.
  12689. If @msg has been processed before, any resources related to the
  12690. time it was last sent are freed.
  12691. Upon message completion, the callback specified in @callback will
  12692. be invoked. If after returning from this callback the message has not
  12693. been requeued, @msg will be unreffed.
  12694. (The behavior above applies to a plain #SoupSession; if you are
  12695. using #SoupSessionAsync or #SoupSessionSync, then the #GMainContext
  12696. that is used depends on the settings of #SoupSession:async-context
  12697. and #SoupSession:use-thread-context, and for #SoupSessionSync, the
  12698. message will actually be sent and processed in another thread, with
  12699. only the final callback occurring in the indicated #GMainContext.)
  12700. Contrast this method with soup_session_send_async(), which also
  12701. asynchronously sends a message, but returns before reading the
  12702. response body, and allows you to read the response via a
  12703. #GInputStream.</doc>
  12704. <return-value transfer-ownership="none">
  12705. <type name="none" c:type="void"/>
  12706. </return-value>
  12707. <parameters>
  12708. <instance-parameter name="session" transfer-ownership="none">
  12709. <doc xml:space="preserve">a #SoupSession</doc>
  12710. <type name="Session" c:type="SoupSession*"/>
  12711. </instance-parameter>
  12712. <parameter name="msg" transfer-ownership="full">
  12713. <doc xml:space="preserve">the message to queue</doc>
  12714. <type name="Message" c:type="SoupMessage*"/>
  12715. </parameter>
  12716. <parameter name="callback"
  12717. transfer-ownership="none"
  12718. nullable="1"
  12719. allow-none="1"
  12720. scope="async"
  12721. closure="2">
  12722. <doc xml:space="preserve">a #SoupSessionCallback which will
  12723. be called after the message completes or when an unrecoverable error occurs.</doc>
  12724. <type name="SessionCallback" c:type="SoupSessionCallback"/>
  12725. </parameter>
  12726. <parameter name="user_data"
  12727. transfer-ownership="none"
  12728. nullable="1"
  12729. allow-none="1">
  12730. <doc xml:space="preserve">a pointer passed to @callback.</doc>
  12731. <type name="gpointer" c:type="gpointer"/>
  12732. </parameter>
  12733. </parameters>
  12734. </method>
  12735. <method name="redirect_message"
  12736. c:identifier="soup_session_redirect_message"
  12737. version="2.38">
  12738. <doc xml:space="preserve">Updates @msg's URI according to its status code and "Location"
  12739. header, and requeues it on @session. Use this when you have set
  12740. %SOUP_MESSAGE_NO_REDIRECT on a message, but have decided to allow a
  12741. particular redirection to occur, or if you want to allow a
  12742. redirection that #SoupSession will not perform automatically (eg,
  12743. redirecting a non-safe method such as DELETE).
  12744. If @msg's status code indicates that it should be retried as a GET
  12745. request, then @msg will be modified accordingly.
  12746. If @msg has already been redirected too many times, this will
  12747. cause it to fail with %SOUP_STATUS_TOO_MANY_REDIRECTS.</doc>
  12748. <return-value transfer-ownership="none">
  12749. <doc xml:space="preserve">%TRUE if a redirection was applied, %FALSE if not
  12750. (eg, because there was no Location header, or it could not be
  12751. parsed).</doc>
  12752. <type name="gboolean" c:type="gboolean"/>
  12753. </return-value>
  12754. <parameters>
  12755. <instance-parameter name="session" transfer-ownership="none">
  12756. <doc xml:space="preserve">the session</doc>
  12757. <type name="Session" c:type="SoupSession*"/>
  12758. </instance-parameter>
  12759. <parameter name="msg" transfer-ownership="none">
  12760. <doc xml:space="preserve">a #SoupMessage that has received a 3xx response</doc>
  12761. <type name="Message" c:type="SoupMessage*"/>
  12762. </parameter>
  12763. </parameters>
  12764. </method>
  12765. <method name="remove_feature"
  12766. c:identifier="soup_session_remove_feature"
  12767. version="2.24">
  12768. <doc xml:space="preserve">Removes @feature's functionality from @session.</doc>
  12769. <return-value transfer-ownership="none">
  12770. <type name="none" c:type="void"/>
  12771. </return-value>
  12772. <parameters>
  12773. <instance-parameter name="session" transfer-ownership="none">
  12774. <doc xml:space="preserve">a #SoupSession</doc>
  12775. <type name="Session" c:type="SoupSession*"/>
  12776. </instance-parameter>
  12777. <parameter name="feature" transfer-ownership="none">
  12778. <doc xml:space="preserve">a feature that has previously been added to @session</doc>
  12779. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  12780. </parameter>
  12781. </parameters>
  12782. </method>
  12783. <method name="remove_feature_by_type"
  12784. c:identifier="soup_session_remove_feature_by_type"
  12785. version="2.24">
  12786. <doc xml:space="preserve">Removes all features of type @feature_type (or any subclass of
  12787. @feature_type) from @session. You can also remove standard features
  12788. from the session at construct time by using the
  12789. %SOUP_SESSION_REMOVE_FEATURE_BY_TYPE property.</doc>
  12790. <return-value transfer-ownership="none">
  12791. <type name="none" c:type="void"/>
  12792. </return-value>
  12793. <parameters>
  12794. <instance-parameter name="session" transfer-ownership="none">
  12795. <doc xml:space="preserve">a #SoupSession</doc>
  12796. <type name="Session" c:type="SoupSession*"/>
  12797. </instance-parameter>
  12798. <parameter name="feature_type" transfer-ownership="none">
  12799. <doc xml:space="preserve">a #GType</doc>
  12800. <type name="GType" c:type="GType"/>
  12801. </parameter>
  12802. </parameters>
  12803. </method>
  12804. <method name="request"
  12805. c:identifier="soup_session_request"
  12806. version="2.42"
  12807. throws="1">
  12808. <doc xml:space="preserve">Creates a #SoupRequest for retrieving @uri_string.</doc>
  12809. <return-value transfer-ownership="full">
  12810. <doc xml:space="preserve">a new #SoupRequest, or
  12811. %NULL on error.</doc>
  12812. <type name="Request" c:type="SoupRequest*"/>
  12813. </return-value>
  12814. <parameters>
  12815. <instance-parameter name="session" transfer-ownership="none">
  12816. <doc xml:space="preserve">a #SoupSession</doc>
  12817. <type name="Session" c:type="SoupSession*"/>
  12818. </instance-parameter>
  12819. <parameter name="uri_string" transfer-ownership="none">
  12820. <doc xml:space="preserve">a URI, in string form</doc>
  12821. <type name="utf8" c:type="const char*"/>
  12822. </parameter>
  12823. </parameters>
  12824. </method>
  12825. <method name="request_http"
  12826. c:identifier="soup_session_request_http"
  12827. version="2.42"
  12828. throws="1">
  12829. <doc xml:space="preserve">Creates a #SoupRequest for retrieving @uri_string, which must be an
  12830. "http" or "https" URI (or another protocol listed in @session's
  12831. #SoupSession:http-aliases or #SoupSession:https-aliases).</doc>
  12832. <return-value transfer-ownership="full">
  12833. <doc xml:space="preserve">a new #SoupRequestHTTP, or
  12834. %NULL on error.</doc>
  12835. <type name="RequestHTTP" c:type="SoupRequestHTTP*"/>
  12836. </return-value>
  12837. <parameters>
  12838. <instance-parameter name="session" transfer-ownership="none">
  12839. <doc xml:space="preserve">a #SoupSession</doc>
  12840. <type name="Session" c:type="SoupSession*"/>
  12841. </instance-parameter>
  12842. <parameter name="method" transfer-ownership="none">
  12843. <doc xml:space="preserve">an HTTP method</doc>
  12844. <type name="utf8" c:type="const char*"/>
  12845. </parameter>
  12846. <parameter name="uri_string" transfer-ownership="none">
  12847. <doc xml:space="preserve">a URI, in string form</doc>
  12848. <type name="utf8" c:type="const char*"/>
  12849. </parameter>
  12850. </parameters>
  12851. </method>
  12852. <method name="request_http_uri"
  12853. c:identifier="soup_session_request_http_uri"
  12854. version="2.42"
  12855. throws="1">
  12856. <doc xml:space="preserve">Creates a #SoupRequest for retrieving @uri, which must be an
  12857. "http" or "https" URI (or another protocol listed in @session's
  12858. #SoupSession:http-aliases or #SoupSession:https-aliases).</doc>
  12859. <return-value transfer-ownership="full">
  12860. <doc xml:space="preserve">a new #SoupRequestHTTP, or
  12861. %NULL on error.</doc>
  12862. <type name="RequestHTTP" c:type="SoupRequestHTTP*"/>
  12863. </return-value>
  12864. <parameters>
  12865. <instance-parameter name="session" transfer-ownership="none">
  12866. <doc xml:space="preserve">a #SoupSession</doc>
  12867. <type name="Session" c:type="SoupSession*"/>
  12868. </instance-parameter>
  12869. <parameter name="method" transfer-ownership="none">
  12870. <doc xml:space="preserve">an HTTP method</doc>
  12871. <type name="utf8" c:type="const char*"/>
  12872. </parameter>
  12873. <parameter name="uri" transfer-ownership="none">
  12874. <doc xml:space="preserve">a #SoupURI representing the URI to retrieve</doc>
  12875. <type name="URI" c:type="SoupURI*"/>
  12876. </parameter>
  12877. </parameters>
  12878. </method>
  12879. <method name="request_uri"
  12880. c:identifier="soup_session_request_uri"
  12881. version="2.42"
  12882. throws="1">
  12883. <doc xml:space="preserve">Creates a #SoupRequest for retrieving @uri.</doc>
  12884. <return-value transfer-ownership="full">
  12885. <doc xml:space="preserve">a new #SoupRequest, or
  12886. %NULL on error.</doc>
  12887. <type name="Request" c:type="SoupRequest*"/>
  12888. </return-value>
  12889. <parameters>
  12890. <instance-parameter name="session" transfer-ownership="none">
  12891. <doc xml:space="preserve">a #SoupSession</doc>
  12892. <type name="Session" c:type="SoupSession*"/>
  12893. </instance-parameter>
  12894. <parameter name="uri" transfer-ownership="none">
  12895. <doc xml:space="preserve">a #SoupURI representing the URI to retrieve</doc>
  12896. <type name="URI" c:type="SoupURI*"/>
  12897. </parameter>
  12898. </parameters>
  12899. </method>
  12900. <method name="requeue_message"
  12901. c:identifier="soup_session_requeue_message">
  12902. <doc xml:space="preserve">This causes @msg to be placed back on the queue to be attempted
  12903. again.</doc>
  12904. <return-value transfer-ownership="none">
  12905. <type name="none" c:type="void"/>
  12906. </return-value>
  12907. <parameters>
  12908. <instance-parameter name="session" transfer-ownership="none">
  12909. <doc xml:space="preserve">a #SoupSession</doc>
  12910. <type name="Session" c:type="SoupSession*"/>
  12911. </instance-parameter>
  12912. <parameter name="msg" transfer-ownership="none">
  12913. <doc xml:space="preserve">the message to requeue</doc>
  12914. <type name="Message" c:type="SoupMessage*"/>
  12915. </parameter>
  12916. </parameters>
  12917. </method>
  12918. <method name="send"
  12919. c:identifier="soup_session_send"
  12920. version="2.42"
  12921. throws="1">
  12922. <doc xml:space="preserve">Synchronously sends @msg and waits for the beginning of a response.
  12923. On success, a #GInputStream will be returned which you can use to
  12924. read the response body. ("Success" here means only that an HTTP
  12925. response was received and understood; it does not necessarily mean
  12926. that a 2xx class status code was received.)
  12927. If non-%NULL, @cancellable can be used to cancel the request;
  12928. soup_session_send() will return a %G_IO_ERROR_CANCELLED error. Note
  12929. that with requests that have side effects (eg,
  12930. &lt;literal&gt;POST&lt;/literal&gt;, &lt;literal&gt;PUT&lt;/literal&gt;,
  12931. &lt;literal&gt;DELETE&lt;/literal&gt;) it is possible that you might cancel the
  12932. request after the server acts on it, but before it returns a
  12933. response, leaving the remote resource in an unknown state.
  12934. If @msg is requeued due to a redirect or authentication, the
  12935. initial (3xx/401/407) response body will be suppressed, and
  12936. soup_session_send() will only return once a final response has been
  12937. received.
  12938. Contrast this method with soup_session_send_message(), which also
  12939. synchronously sends a #SoupMessage, but doesn't return until the
  12940. response has been completely read.
  12941. (Note that this method cannot be called on the deprecated
  12942. #SoupSessionAsync subclass.)</doc>
  12943. <return-value transfer-ownership="full">
  12944. <doc xml:space="preserve">a #GInputStream for reading the
  12945. response body, or %NULL on error.</doc>
  12946. <type name="Gio.InputStream" c:type="GInputStream*"/>
  12947. </return-value>
  12948. <parameters>
  12949. <instance-parameter name="session" transfer-ownership="none">
  12950. <doc xml:space="preserve">a #SoupSession</doc>
  12951. <type name="Session" c:type="SoupSession*"/>
  12952. </instance-parameter>
  12953. <parameter name="msg" transfer-ownership="none">
  12954. <doc xml:space="preserve">a #SoupMessage</doc>
  12955. <type name="Message" c:type="SoupMessage*"/>
  12956. </parameter>
  12957. <parameter name="cancellable"
  12958. transfer-ownership="none"
  12959. nullable="1"
  12960. allow-none="1">
  12961. <doc xml:space="preserve">a #GCancellable</doc>
  12962. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  12963. </parameter>
  12964. </parameters>
  12965. </method>
  12966. <method name="send_async"
  12967. c:identifier="soup_session_send_async"
  12968. version="2.42">
  12969. <doc xml:space="preserve">Asynchronously sends @msg and waits for the beginning of a
  12970. response. When @callback is called, then either @msg has been sent,
  12971. and its response headers received, or else an error has occurred.
  12972. Call soup_session_send_finish() to get a #GInputStream for reading
  12973. the response body.
  12974. See soup_session_send() for more details on the general semantics.
  12975. Contrast this method with soup_session_queue_message(), which also
  12976. asynchronously sends a #SoupMessage, but doesn't invoke its
  12977. callback until the response has been completely read.
  12978. (Note that this method cannot be called on the deprecated
  12979. #SoupSessionSync subclass, and can only be called on
  12980. #SoupSessionAsync if you have set the
  12981. #SoupSession:use-thread-context property.)</doc>
  12982. <return-value transfer-ownership="none">
  12983. <type name="none" c:type="void"/>
  12984. </return-value>
  12985. <parameters>
  12986. <instance-parameter name="session" transfer-ownership="none">
  12987. <doc xml:space="preserve">a #SoupSession</doc>
  12988. <type name="Session" c:type="SoupSession*"/>
  12989. </instance-parameter>
  12990. <parameter name="msg" transfer-ownership="none">
  12991. <doc xml:space="preserve">a #SoupMessage</doc>
  12992. <type name="Message" c:type="SoupMessage*"/>
  12993. </parameter>
  12994. <parameter name="cancellable"
  12995. transfer-ownership="none"
  12996. nullable="1"
  12997. allow-none="1">
  12998. <doc xml:space="preserve">a #GCancellable</doc>
  12999. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  13000. </parameter>
  13001. <parameter name="callback"
  13002. transfer-ownership="none"
  13003. nullable="1"
  13004. allow-none="1"
  13005. scope="async"
  13006. closure="3">
  13007. <doc xml:space="preserve">the callback to invoke</doc>
  13008. <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
  13009. </parameter>
  13010. <parameter name="user_data"
  13011. transfer-ownership="none"
  13012. nullable="1"
  13013. allow-none="1">
  13014. <doc xml:space="preserve">data for @callback</doc>
  13015. <type name="gpointer" c:type="gpointer"/>
  13016. </parameter>
  13017. </parameters>
  13018. </method>
  13019. <method name="send_finish"
  13020. c:identifier="soup_session_send_finish"
  13021. version="2.42"
  13022. throws="1">
  13023. <doc xml:space="preserve">Gets the response to a soup_session_send_async() call and (if
  13024. successful), returns a #GInputStream that can be used to read the
  13025. response body.</doc>
  13026. <return-value transfer-ownership="full">
  13027. <doc xml:space="preserve">a #GInputStream for reading the
  13028. response body, or %NULL on error.</doc>
  13029. <type name="Gio.InputStream" c:type="GInputStream*"/>
  13030. </return-value>
  13031. <parameters>
  13032. <instance-parameter name="session" transfer-ownership="none">
  13033. <doc xml:space="preserve">a #SoupSession</doc>
  13034. <type name="Session" c:type="SoupSession*"/>
  13035. </instance-parameter>
  13036. <parameter name="result" transfer-ownership="none">
  13037. <doc xml:space="preserve">the #GAsyncResult passed to your callback</doc>
  13038. <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
  13039. </parameter>
  13040. </parameters>
  13041. </method>
  13042. <method name="send_message" c:identifier="soup_session_send_message">
  13043. <doc xml:space="preserve">Synchronously send @msg. This call will not return until the
  13044. transfer is finished successfully or there is an unrecoverable
  13045. error.
  13046. Unlike with soup_session_queue_message(), @msg is not freed upon
  13047. return.
  13048. (Note that if you call this method on a #SoupSessionAsync, it will
  13049. still use asynchronous I/O internally, running the glib main loop
  13050. to process the message, which may also cause other events to be
  13051. processed.)
  13052. Contrast this method with soup_session_send(), which also
  13053. synchronously sends a message, but returns before reading the
  13054. response body, and allows you to read the response via a
  13055. #GInputStream.</doc>
  13056. <return-value transfer-ownership="none">
  13057. <doc xml:space="preserve">the HTTP status code of the response</doc>
  13058. <type name="guint" c:type="guint"/>
  13059. </return-value>
  13060. <parameters>
  13061. <instance-parameter name="session" transfer-ownership="none">
  13062. <doc xml:space="preserve">a #SoupSession</doc>
  13063. <type name="Session" c:type="SoupSession*"/>
  13064. </instance-parameter>
  13065. <parameter name="msg" transfer-ownership="none">
  13066. <doc xml:space="preserve">the message to send</doc>
  13067. <type name="Message" c:type="SoupMessage*"/>
  13068. </parameter>
  13069. </parameters>
  13070. </method>
  13071. <method name="steal_connection"
  13072. c:identifier="soup_session_steal_connection"
  13073. version="2.50">
  13074. <doc xml:space="preserve">"Steals" the HTTP connection associated with @msg from @session.
  13075. This happens immediately, regardless of the current state of the
  13076. connection, and @msg's callback will not be called. You can steal
  13077. the connection from a #SoupMessage signal handler if you need to
  13078. wait for part or all of the response to be received first.
  13079. Calling this function may cause @msg to be freed if you are not
  13080. holding any other reference to it.</doc>
  13081. <return-value transfer-ownership="full">
  13082. <doc xml:space="preserve">the #GIOStream formerly associated
  13083. with @msg (or %NULL if @msg was no longer associated with a
  13084. connection). No guarantees are made about what kind of #GIOStream
  13085. is returned.</doc>
  13086. <type name="Gio.IOStream" c:type="GIOStream*"/>
  13087. </return-value>
  13088. <parameters>
  13089. <instance-parameter name="session" transfer-ownership="none">
  13090. <doc xml:space="preserve">a #SoupSession</doc>
  13091. <type name="Session" c:type="SoupSession*"/>
  13092. </instance-parameter>
  13093. <parameter name="msg" transfer-ownership="none">
  13094. <doc xml:space="preserve">the message whose connection is to be stolen</doc>
  13095. <type name="Message" c:type="SoupMessage*"/>
  13096. </parameter>
  13097. </parameters>
  13098. </method>
  13099. <method name="unpause_message"
  13100. c:identifier="soup_session_unpause_message">
  13101. <doc xml:space="preserve">Resumes HTTP I/O on @msg. Use this to resume after calling
  13102. soup_session_pause_message().
  13103. If @msg is being sent via blocking I/O, this will resume reading or
  13104. writing immediately. If @msg is using non-blocking I/O, then
  13105. reading or writing won't resume until you return to the main loop.
  13106. This may only be called for asynchronous messages (those sent on a
  13107. #SoupSessionAsync or using soup_session_queue_message()).</doc>
  13108. <return-value transfer-ownership="none">
  13109. <type name="none" c:type="void"/>
  13110. </return-value>
  13111. <parameters>
  13112. <instance-parameter name="session" transfer-ownership="none">
  13113. <doc xml:space="preserve">a #SoupSession</doc>
  13114. <type name="Session" c:type="SoupSession*"/>
  13115. </instance-parameter>
  13116. <parameter name="msg" transfer-ownership="none">
  13117. <doc xml:space="preserve">a #SoupMessage currently running on @session</doc>
  13118. <type name="Message" c:type="SoupMessage*"/>
  13119. </parameter>
  13120. </parameters>
  13121. </method>
  13122. <method name="websocket_connect_async"
  13123. c:identifier="soup_session_websocket_connect_async"
  13124. version="2.50">
  13125. <doc xml:space="preserve">Asynchronously creates a #SoupWebsocketConnection to communicate
  13126. with a remote server.
  13127. All necessary WebSocket-related headers will be added to @msg, and
  13128. it will then be sent and asynchronously processed normally
  13129. (including handling of redirection and HTTP authentication).
  13130. If the server returns "101 Switching Protocols", then @msg's status
  13131. code and response headers will be updated, and then the WebSocket
  13132. handshake will be completed. On success,
  13133. soup_websocket_connect_finish() will return a new
  13134. #SoupWebsocketConnection. On failure it will return a #GError.
  13135. If the server returns a status other than "101 Switching
  13136. Protocols", then @msg will contain the complete response headers
  13137. and body from the server's response, and
  13138. soup_websocket_connect_finish() will return
  13139. %SOUP_WEBSOCKET_ERROR_NOT_WEBSOCKET.</doc>
  13140. <return-value transfer-ownership="none">
  13141. <type name="none" c:type="void"/>
  13142. </return-value>
  13143. <parameters>
  13144. <instance-parameter name="session" transfer-ownership="none">
  13145. <doc xml:space="preserve">a #SoupSession</doc>
  13146. <type name="Session" c:type="SoupSession*"/>
  13147. </instance-parameter>
  13148. <parameter name="msg" transfer-ownership="none">
  13149. <doc xml:space="preserve">#SoupMessage indicating the WebSocket server to connect to</doc>
  13150. <type name="Message" c:type="SoupMessage*"/>
  13151. </parameter>
  13152. <parameter name="origin"
  13153. transfer-ownership="none"
  13154. nullable="1"
  13155. allow-none="1">
  13156. <doc xml:space="preserve">origin of the connection</doc>
  13157. <type name="utf8" c:type="const char*"/>
  13158. </parameter>
  13159. <parameter name="protocols"
  13160. transfer-ownership="none"
  13161. nullable="1"
  13162. allow-none="1">
  13163. <doc xml:space="preserve">a
  13164. %NULL-terminated array of protocols supported</doc>
  13165. <array c:type="char**">
  13166. <type name="utf8" c:type="char*"/>
  13167. </array>
  13168. </parameter>
  13169. <parameter name="cancellable"
  13170. transfer-ownership="none"
  13171. nullable="1"
  13172. allow-none="1">
  13173. <doc xml:space="preserve">a #GCancellable</doc>
  13174. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  13175. </parameter>
  13176. <parameter name="callback"
  13177. transfer-ownership="none"
  13178. nullable="1"
  13179. allow-none="1"
  13180. scope="async"
  13181. closure="5">
  13182. <doc xml:space="preserve">the callback to invoke</doc>
  13183. <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
  13184. </parameter>
  13185. <parameter name="user_data"
  13186. transfer-ownership="none"
  13187. nullable="1"
  13188. allow-none="1">
  13189. <doc xml:space="preserve">data for @callback</doc>
  13190. <type name="gpointer" c:type="gpointer"/>
  13191. </parameter>
  13192. </parameters>
  13193. </method>
  13194. <method name="websocket_connect_finish"
  13195. c:identifier="soup_session_websocket_connect_finish"
  13196. version="2.50"
  13197. throws="1">
  13198. <doc xml:space="preserve">Gets the #SoupWebsocketConnection response to a
  13199. soup_session_websocket_connect_async() call and (if successful),
  13200. returns a #SoupWebsockConnection that can be used to communicate
  13201. with the server.</doc>
  13202. <return-value transfer-ownership="full">
  13203. <doc xml:space="preserve">a new #SoupWebsocketConnection, or
  13204. %NULL on error.</doc>
  13205. <type name="WebsocketConnection" c:type="SoupWebsocketConnection*"/>
  13206. </return-value>
  13207. <parameters>
  13208. <instance-parameter name="session" transfer-ownership="none">
  13209. <doc xml:space="preserve">a #SoupSession</doc>
  13210. <type name="Session" c:type="SoupSession*"/>
  13211. </instance-parameter>
  13212. <parameter name="result" transfer-ownership="none">
  13213. <doc xml:space="preserve">the #GAsyncResult passed to your callback</doc>
  13214. <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
  13215. </parameter>
  13216. </parameters>
  13217. </method>
  13218. <method name="would_redirect"
  13219. c:identifier="soup_session_would_redirect"
  13220. version="2.38">
  13221. <doc xml:space="preserve">Checks if @msg contains a response that would cause @session to
  13222. redirect it to a new URL (ignoring @msg's %SOUP_MESSAGE_NO_REDIRECT
  13223. flag, and the number of times it has already been redirected).</doc>
  13224. <return-value transfer-ownership="none">
  13225. <doc xml:space="preserve">whether @msg would be redirected</doc>
  13226. <type name="gboolean" c:type="gboolean"/>
  13227. </return-value>
  13228. <parameters>
  13229. <instance-parameter name="session" transfer-ownership="none">
  13230. <doc xml:space="preserve">a #SoupSession</doc>
  13231. <type name="Session" c:type="SoupSession*"/>
  13232. </instance-parameter>
  13233. <parameter name="msg" transfer-ownership="none">
  13234. <doc xml:space="preserve">a #SoupMessage that has response headers</doc>
  13235. <type name="Message" c:type="SoupMessage*"/>
  13236. </parameter>
  13237. </parameters>
  13238. </method>
  13239. <property name="accept-language"
  13240. version="2.30"
  13241. writable="1"
  13242. transfer-ownership="none">
  13243. <doc xml:space="preserve">If non-%NULL, the value to use for the "Accept-Language" header
  13244. on #SoupMessage&lt;!-- --&gt;s sent from this session.
  13245. Setting this will disable
  13246. #SoupSession:accept-language-auto.</doc>
  13247. <type name="utf8" c:type="gchar*"/>
  13248. </property>
  13249. <property name="accept-language-auto"
  13250. version="2.30"
  13251. writable="1"
  13252. transfer-ownership="none">
  13253. <doc xml:space="preserve">If %TRUE, #SoupSession will automatically set the string
  13254. for the "Accept-Language" header on every #SoupMessage
  13255. sent, based on the return value of g_get_language_names().
  13256. Setting this will override any previous value of
  13257. #SoupSession:accept-language.</doc>
  13258. <type name="gboolean" c:type="gboolean"/>
  13259. </property>
  13260. <property name="add-feature"
  13261. version="2.24"
  13262. introspectable="0"
  13263. writable="1"
  13264. transfer-ownership="none">
  13265. <doc xml:space="preserve">Add a feature object to the session. (Shortcut for calling
  13266. soup_session_add_feature().)</doc>
  13267. <type name="SessionFeature"/>
  13268. </property>
  13269. <property name="add-feature-by-type"
  13270. version="2.24"
  13271. introspectable="0"
  13272. writable="1"
  13273. transfer-ownership="none">
  13274. <doc xml:space="preserve">Add a feature object of the given type to the session.
  13275. (Shortcut for calling soup_session_add_feature_by_type().)</doc>
  13276. <type name="GType" c:type="GType"/>
  13277. </property>
  13278. <property name="async-context"
  13279. writable="1"
  13280. construct-only="1"
  13281. transfer-ownership="none">
  13282. <doc xml:space="preserve">The #GMainContext that miscellaneous session-related
  13283. asynchronous callbacks are invoked on. (Eg, setting
  13284. #SoupSession:idle-timeout will add a timeout source on this
  13285. context.)
  13286. For a plain #SoupSession, this property is always set to
  13287. the #GMainContext that is the thread-default at the time
  13288. the session was created, and cannot be overridden. For the
  13289. deprecated #SoupSession subclasses, the default value is
  13290. %NULL, meaning to use the global default #GMainContext.
  13291. If #SoupSession:use-thread-context is %FALSE, this context
  13292. will also be used for asynchronous HTTP I/O.</doc>
  13293. <type name="gpointer" c:type="gpointer"/>
  13294. </property>
  13295. <property name="http-aliases"
  13296. version="2.38"
  13297. writable="1"
  13298. transfer-ownership="none">
  13299. <doc xml:space="preserve">A %NULL-terminated array of URI schemes that should be
  13300. considered to be aliases for "http". Eg, if this included
  13301. &lt;literal&gt;"dav"&lt;/literal&gt;, than a URI of
  13302. &lt;literal&gt;dav://example.com/path&lt;/literal&gt; would be treated
  13303. identically to &lt;literal&gt;http://example.com/path&lt;/literal&gt;.
  13304. In a plain #SoupSession, the default value is %NULL,
  13305. meaning that only "http" is recognized as meaning "http".
  13306. In #SoupSessionAsync and #SoupSessionSync, for backward
  13307. compatibility, the default value is an array containing the
  13308. single element &lt;literal&gt;"*"&lt;/literal&gt;, a special value
  13309. which means that any scheme except "https" is considered to
  13310. be an alias for "http".
  13311. See also #SoupSession:https-aliases.</doc>
  13312. <array>
  13313. <type name="utf8"/>
  13314. </array>
  13315. </property>
  13316. <property name="https-aliases"
  13317. version="2.38"
  13318. writable="1"
  13319. transfer-ownership="none">
  13320. <doc xml:space="preserve">A comma-delimited list of URI schemes that should be
  13321. considered to be aliases for "https". See
  13322. #SoupSession:http-aliases for more information.
  13323. The default value is %NULL, meaning that no URI schemes
  13324. are considered aliases for "https".</doc>
  13325. <array>
  13326. <type name="utf8"/>
  13327. </array>
  13328. </property>
  13329. <property name="idle-timeout"
  13330. version="2.24"
  13331. writable="1"
  13332. transfer-ownership="none">
  13333. <doc xml:space="preserve">Connection lifetime (in seconds) when idle. Any connection
  13334. left idle longer than this will be closed.
  13335. Although you can change this property at any time, it will
  13336. only affect newly-created connections, not currently-open
  13337. ones. You can call soup_session_abort() after setting this
  13338. if you want to ensure that all future connections will have
  13339. this timeout value.
  13340. Note that the default value of 60 seconds only applies to
  13341. plain #SoupSessions. If you are using #SoupSessionAsync or
  13342. #SoupSessionSync, the default value is 0 (meaning idle
  13343. connections will never time out).</doc>
  13344. <type name="guint" c:type="guint"/>
  13345. </property>
  13346. <property name="local-address"
  13347. version="2.42"
  13348. writable="1"
  13349. construct-only="1"
  13350. transfer-ownership="none">
  13351. <doc xml:space="preserve">Sets the #SoupAddress to use for the client side of
  13352. the connection.
  13353. Use this property if you want for instance to bind the
  13354. local socket to a specific IP address.</doc>
  13355. <type name="Address"/>
  13356. </property>
  13357. <property name="max-conns" writable="1" transfer-ownership="none">
  13358. <type name="gint" c:type="gint"/>
  13359. </property>
  13360. <property name="max-conns-per-host"
  13361. writable="1"
  13362. transfer-ownership="none">
  13363. <type name="gint" c:type="gint"/>
  13364. </property>
  13365. <property name="proxy-resolver"
  13366. version="2.42"
  13367. writable="1"
  13368. transfer-ownership="none">
  13369. <doc xml:space="preserve">A #GProxyResolver to use with this session. Setting this
  13370. will clear the #SoupSession:proxy-uri property, and remove
  13371. any &lt;type&gt;SoupProxyURIResolver&lt;/type&gt; features that have
  13372. been added to the session.
  13373. By default, in a plain #SoupSession, this is set to the
  13374. default #GProxyResolver, but you can set it to %NULL if you
  13375. don't want to use proxies, or set it to your own
  13376. #GProxyResolver if you want to control what proxies get
  13377. used.</doc>
  13378. <type name="Gio.ProxyResolver"/>
  13379. </property>
  13380. <property name="proxy-uri" writable="1" transfer-ownership="none">
  13381. <doc xml:space="preserve">A proxy to use for all http and https requests in this
  13382. session. Setting this will clear the
  13383. #SoupSession:proxy-resolver property, and remove any
  13384. &lt;type&gt;SoupProxyURIResolver&lt;/type&gt; features that have been
  13385. added to the session. Setting this property will also
  13386. cancel all currently pending messages.
  13387. Note that #SoupSession will normally handle looking up the
  13388. user's proxy settings for you; you should only use
  13389. #SoupSession:proxy-uri if you need to override the user's
  13390. normal proxy settings.
  13391. Also note that this proxy will be used for
  13392. &lt;emphasis&gt;all&lt;/emphasis&gt; requests; even requests to
  13393. &lt;literal&gt;localhost&lt;/literal&gt;. If you need more control over
  13394. proxies, you can create a #GSimpleProxyResolver and set the
  13395. #SoupSession:proxy-resolver property.</doc>
  13396. <type name="URI"/>
  13397. </property>
  13398. <property name="remove-feature-by-type"
  13399. version="2.24"
  13400. introspectable="0"
  13401. writable="1"
  13402. transfer-ownership="none">
  13403. <doc xml:space="preserve">Remove feature objects from the session. (Shortcut for
  13404. calling soup_session_remove_feature_by_type().)</doc>
  13405. <type name="GType" c:type="GType"/>
  13406. </property>
  13407. <property name="ssl-ca-file"
  13408. deprecated="1"
  13409. writable="1"
  13410. transfer-ownership="none">
  13411. <doc xml:space="preserve">File containing SSL CA certificates.
  13412. If the specified file does not exist or cannot be read,
  13413. then libsoup will print a warning, and then behave as
  13414. though it had read in a empty CA file, meaning that all SSL
  13415. certificates will be considered invalid.</doc>
  13416. <doc-deprecated xml:space="preserve">use #SoupSession:ssl-use-system-ca-file, or
  13417. else #SoupSession:tls-database with a #GTlsFileDatabase
  13418. (which allows you to do explicit error handling).</doc-deprecated>
  13419. <type name="utf8" c:type="gchar*"/>
  13420. </property>
  13421. <property name="ssl-strict"
  13422. version="2.30"
  13423. writable="1"
  13424. transfer-ownership="none">
  13425. <doc xml:space="preserve">Normally, if #SoupSession:tls-database is set (including if
  13426. it was set via #SoupSession:ssl-use-system-ca-file or
  13427. #SoupSession:ssl-ca-file), then libsoup will reject any
  13428. certificate that is invalid (ie, expired) or that is not
  13429. signed by one of the given CA certificates, and the
  13430. #SoupMessage will fail with the status
  13431. %SOUP_STATUS_SSL_FAILED.
  13432. If you set #SoupSession:ssl-strict to %FALSE, then all
  13433. certificates will be accepted, and you will need to call
  13434. soup_message_get_https_status() to distinguish valid from
  13435. invalid certificates. (This can be used, eg, if you want to
  13436. accept invalid certificates after giving some sort of
  13437. warning.)
  13438. For a plain #SoupSession, if the session has no CA file or
  13439. TLS database, and this property is %TRUE, then all
  13440. certificates will be rejected. However, beware that the
  13441. deprecated #SoupSession subclasses (#SoupSessionAsync and
  13442. #SoupSessionSync) have the opposite behavior: if there is
  13443. no CA file or TLS database, then all certificates are always
  13444. accepted, and this property has no effect.</doc>
  13445. <type name="gboolean" c:type="gboolean"/>
  13446. </property>
  13447. <property name="ssl-use-system-ca-file"
  13448. version="2.38"
  13449. writable="1"
  13450. transfer-ownership="none">
  13451. <doc xml:space="preserve">Setting this to %TRUE is equivalent to setting
  13452. #SoupSession:tls-database to the default system CA database.
  13453. (and likewise, setting #SoupSession:tls-database to the
  13454. default database by hand will cause this property to
  13455. become %TRUE).
  13456. Setting this to %FALSE (when it was previously %TRUE) will
  13457. clear the #SoupSession:tls-database field.
  13458. See #SoupSession:ssl-strict for more information on how
  13459. https certificate validation is handled.
  13460. Note that the default value of %TRUE only applies to plain
  13461. #SoupSessions. If you are using #SoupSessionAsync or
  13462. #SoupSessionSync, the default value is %FALSE, for backward
  13463. compatibility.</doc>
  13464. <type name="gboolean" c:type="gboolean"/>
  13465. </property>
  13466. <property name="timeout" writable="1" transfer-ownership="none">
  13467. <doc xml:space="preserve">The timeout (in seconds) for socket I/O operations
  13468. (including connecting to a server, and waiting for a reply
  13469. to an HTTP request).
  13470. Although you can change this property at any time, it will
  13471. only affect newly-created connections, not currently-open
  13472. ones. You can call soup_session_abort() after setting this
  13473. if you want to ensure that all future connections will have
  13474. this timeout value.
  13475. Note that the default value of 60 seconds only applies to
  13476. plain #SoupSessions. If you are using #SoupSessionAsync or
  13477. #SoupSessionSync, the default value is 0 (meaning socket I/O
  13478. will not time out).
  13479. Not to be confused with #SoupSession:idle-timeout (which is
  13480. the length of time that idle persistent connections will be
  13481. kept open).</doc>
  13482. <type name="guint" c:type="guint"/>
  13483. </property>
  13484. <property name="tls-database"
  13485. version="2.38"
  13486. writable="1"
  13487. transfer-ownership="none">
  13488. <doc xml:space="preserve">Sets the #GTlsDatabase to use for validating SSL/TLS
  13489. certificates.
  13490. Note that setting the #SoupSession:ssl-ca-file or
  13491. #SoupSession:ssl-use-system-ca-file property will cause
  13492. this property to be set to a #GTlsDatabase corresponding to
  13493. the indicated file or system default.
  13494. See #SoupSession:ssl-strict for more information on how
  13495. https certificate validation is handled.
  13496. If you are using a plain #SoupSession then
  13497. #SoupSession:ssl-use-system-ca-file will be %TRUE by
  13498. default, and so this property will be a copy of the system
  13499. CA database. If you are using #SoupSessionAsync or
  13500. #SoupSessionSync, this property will be %NULL by default.</doc>
  13501. <type name="Gio.TlsDatabase"/>
  13502. </property>
  13503. <property name="tls-interaction"
  13504. version="2.48"
  13505. writable="1"
  13506. transfer-ownership="none">
  13507. <doc xml:space="preserve">A #GTlsInteraction object that will be passed on to any
  13508. #GTlsConnections created by the session. (This can be used to
  13509. provide client-side certificates, for example.)</doc>
  13510. <type name="Gio.TlsInteraction"/>
  13511. </property>
  13512. <property name="use-ntlm"
  13513. deprecated="1"
  13514. writable="1"
  13515. transfer-ownership="none">
  13516. <doc xml:space="preserve">Whether or not to use NTLM authentication.</doc>
  13517. <doc-deprecated xml:space="preserve">use soup_session_add_feature_by_type() with
  13518. #SOUP_TYPE_AUTH_NTLM.</doc-deprecated>
  13519. <type name="gboolean" c:type="gboolean"/>
  13520. </property>
  13521. <property name="use-thread-context"
  13522. version="2.38"
  13523. writable="1"
  13524. transfer-ownership="none">
  13525. <doc xml:space="preserve">If %TRUE (which it always is on a plain #SoupSession),
  13526. asynchronous HTTP requests in this session will run in
  13527. whatever the thread-default #GMainContext is at the time
  13528. they are started, rather than always occurring in
  13529. #SoupSession:async-context.</doc>
  13530. <type name="gboolean" c:type="gboolean"/>
  13531. </property>
  13532. <property name="user-agent" writable="1" transfer-ownership="none">
  13533. <doc xml:space="preserve">If non-%NULL, the value to use for the "User-Agent" header
  13534. on #SoupMessage&lt;!-- --&gt;s sent from this session.
  13535. RFC 2616 says: "The User-Agent request-header field
  13536. contains information about the user agent originating the
  13537. request. This is for statistical purposes, the tracing of
  13538. protocol violations, and automated recognition of user
  13539. agents for the sake of tailoring responses to avoid
  13540. particular user agent limitations. User agents SHOULD
  13541. include this field with requests."
  13542. The User-Agent header contains a list of one or more
  13543. product tokens, separated by whitespace, with the most
  13544. significant product token coming first. The tokens must be
  13545. brief, ASCII, and mostly alphanumeric (although "-", "_",
  13546. and "." are also allowed), and may optionally include a "/"
  13547. followed by a version string. You may also put comments,
  13548. enclosed in parentheses, between or after the tokens.
  13549. If you set a #SoupSession:user_agent property that has trailing
  13550. whitespace, #SoupSession will append its own product token
  13551. (eg, "&lt;literal&gt;libsoup/2.3.2&lt;/literal&gt;") to the end of the
  13552. header for you.</doc>
  13553. <type name="utf8" c:type="gchar*"/>
  13554. </property>
  13555. <field name="parent">
  13556. <type name="GObject.Object" c:type="GObject"/>
  13557. </field>
  13558. <glib:signal name="authenticate" when="first">
  13559. <doc xml:space="preserve">Emitted when the session requires authentication. If
  13560. credentials are available call soup_auth_authenticate() on
  13561. @auth. If these credentials fail, the signal will be
  13562. emitted again, with @retrying set to %TRUE, which will
  13563. continue until you return without calling
  13564. soup_auth_authenticate() on @auth.
  13565. Note that this may be emitted before @msg's body has been
  13566. fully read.
  13567. If you call soup_session_pause_message() on @msg before
  13568. returning, then you can authenticate @auth asynchronously
  13569. (as long as you g_object_ref() it to make sure it doesn't
  13570. get destroyed), and then unpause @msg when you are ready
  13571. for it to continue.</doc>
  13572. <return-value transfer-ownership="none">
  13573. <type name="none" c:type="void"/>
  13574. </return-value>
  13575. <parameters>
  13576. <parameter name="msg" transfer-ownership="none">
  13577. <doc xml:space="preserve">the #SoupMessage being sent</doc>
  13578. <type name="Message"/>
  13579. </parameter>
  13580. <parameter name="auth" transfer-ownership="none">
  13581. <doc xml:space="preserve">the #SoupAuth to authenticate</doc>
  13582. <type name="Auth"/>
  13583. </parameter>
  13584. <parameter name="retrying" transfer-ownership="none">
  13585. <doc xml:space="preserve">%TRUE if this is the second (or later) attempt</doc>
  13586. <type name="gboolean" c:type="gboolean"/>
  13587. </parameter>
  13588. </parameters>
  13589. </glib:signal>
  13590. <glib:signal name="connection-created" when="first" version="2.30">
  13591. <doc xml:space="preserve">Emitted when a new connection is created. This is an
  13592. internal signal intended only to be used for debugging
  13593. purposes, and may go away in the future.</doc>
  13594. <return-value transfer-ownership="none">
  13595. <type name="none" c:type="void"/>
  13596. </return-value>
  13597. <parameters>
  13598. <parameter name="connection" transfer-ownership="none">
  13599. <doc xml:space="preserve">the connection</doc>
  13600. <type name="GObject.Object"/>
  13601. </parameter>
  13602. </parameters>
  13603. </glib:signal>
  13604. <glib:signal name="request-queued" when="first" version="2.24">
  13605. <doc xml:space="preserve">Emitted when a request is queued on @session. (Note that
  13606. "queued" doesn't just mean soup_session_queue_message();
  13607. soup_session_send_message() implicitly queues the message
  13608. as well.)
  13609. When sending a request, first #SoupSession::request_queued
  13610. is emitted, indicating that the session has become aware of
  13611. the request.
  13612. Once a connection is available to send the request on, the
  13613. session emits #SoupSession::request_started. Then, various
  13614. #SoupMessage signals are emitted as the message is
  13615. processed. If the message is requeued, it will emit
  13616. #SoupMessage::restarted, which will then be followed by
  13617. another #SoupSession::request_started and another set of
  13618. #SoupMessage signals when the message is re-sent.
  13619. Eventually, the message will emit #SoupMessage::finished.
  13620. Normally, this signals the completion of message
  13621. processing. However, it is possible that the application
  13622. will requeue the message from the "finished" handler (or
  13623. equivalently, from the soup_session_queue_message()
  13624. callback). In that case, the process will loop back to
  13625. #SoupSession::request_started.
  13626. Eventually, a message will reach "finished" and not be
  13627. requeued. At that point, the session will emit
  13628. #SoupSession::request_unqueued to indicate that it is done
  13629. with the message.
  13630. To sum up: #SoupSession::request_queued and
  13631. #SoupSession::request_unqueued are guaranteed to be emitted
  13632. exactly once, but #SoupSession::request_started and
  13633. #SoupMessage::finished (and all of the other #SoupMessage
  13634. signals) may be invoked multiple times for a given message.</doc>
  13635. <return-value transfer-ownership="none">
  13636. <type name="none" c:type="void"/>
  13637. </return-value>
  13638. <parameters>
  13639. <parameter name="msg" transfer-ownership="none">
  13640. <doc xml:space="preserve">the request that was queued</doc>
  13641. <type name="Message"/>
  13642. </parameter>
  13643. </parameters>
  13644. </glib:signal>
  13645. <glib:signal name="request-started"
  13646. when="first"
  13647. deprecated="1"
  13648. deprecated-version="2.50.">
  13649. <doc xml:space="preserve">Emitted just before a request is sent. See
  13650. #SoupSession::request_queued for a detailed description of
  13651. the message lifecycle within a session.</doc>
  13652. <doc-deprecated xml:space="preserve">Use #SoupMessage::starting instead.</doc-deprecated>
  13653. <return-value transfer-ownership="none">
  13654. <type name="none" c:type="void"/>
  13655. </return-value>
  13656. <parameters>
  13657. <parameter name="msg" transfer-ownership="none">
  13658. <doc xml:space="preserve">the request being sent</doc>
  13659. <type name="Message"/>
  13660. </parameter>
  13661. <parameter name="socket" transfer-ownership="none">
  13662. <doc xml:space="preserve">the socket the request is being sent on</doc>
  13663. <type name="Socket"/>
  13664. </parameter>
  13665. </parameters>
  13666. </glib:signal>
  13667. <glib:signal name="request-unqueued" when="first" version="2.24">
  13668. <doc xml:space="preserve">Emitted when a request is removed from @session's queue,
  13669. indicating that @session is done with it. See
  13670. #SoupSession::request_queued for a detailed description of the
  13671. message lifecycle within a session.</doc>
  13672. <return-value transfer-ownership="none">
  13673. <type name="none" c:type="void"/>
  13674. </return-value>
  13675. <parameters>
  13676. <parameter name="msg" transfer-ownership="none">
  13677. <doc xml:space="preserve">the request that was unqueued</doc>
  13678. <type name="Message"/>
  13679. </parameter>
  13680. </parameters>
  13681. </glib:signal>
  13682. <glib:signal name="tunneling" when="first" version="2.30">
  13683. <doc xml:space="preserve">Emitted when an SSL tunnel is being created on a proxy
  13684. connection. This is an internal signal intended only to be
  13685. used for debugging purposes, and may go away in the future.</doc>
  13686. <return-value transfer-ownership="none">
  13687. <type name="none" c:type="void"/>
  13688. </return-value>
  13689. <parameters>
  13690. <parameter name="connection" transfer-ownership="none">
  13691. <doc xml:space="preserve">the connection</doc>
  13692. <type name="GObject.Object"/>
  13693. </parameter>
  13694. </parameters>
  13695. </glib:signal>
  13696. </class>
  13697. <class name="SessionAsync"
  13698. c:symbol-prefix="session_async"
  13699. c:type="SoupSessionAsync"
  13700. parent="Session"
  13701. glib:type-name="SoupSessionAsync"
  13702. glib:get-type="soup_session_async_get_type"
  13703. glib:type-struct="SessionAsyncClass">
  13704. <constructor name="new"
  13705. c:identifier="soup_session_async_new"
  13706. deprecated="1">
  13707. <doc xml:space="preserve">Creates an asynchronous #SoupSession with the default options.</doc>
  13708. <doc-deprecated xml:space="preserve">#SoupSessionAsync is deprecated; use a plain
  13709. #SoupSession, created with soup_session_new(). See the &lt;link
  13710. linkend="libsoup-session-porting"&gt;porting guide&lt;/link&gt;.</doc-deprecated>
  13711. <return-value transfer-ownership="full">
  13712. <doc xml:space="preserve">the new session.</doc>
  13713. <type name="Session" c:type="SoupSession*"/>
  13714. </return-value>
  13715. </constructor>
  13716. <constructor name="new_with_options"
  13717. c:identifier="soup_session_async_new_with_options"
  13718. introspectable="0"
  13719. deprecated="1">
  13720. <doc xml:space="preserve">Creates an asynchronous #SoupSession with the specified options.</doc>
  13721. <doc-deprecated xml:space="preserve">#SoupSessionAsync is deprecated; use a plain
  13722. #SoupSession, created with soup_session_new_with_options(). See the
  13723. &lt;link linkend="libsoup-session-porting"&gt;porting guide&lt;/link&gt;.</doc-deprecated>
  13724. <return-value transfer-ownership="full">
  13725. <doc xml:space="preserve">the new session.</doc>
  13726. <type name="Session" c:type="SoupSession*"/>
  13727. </return-value>
  13728. <parameters>
  13729. <parameter name="optname1" transfer-ownership="none">
  13730. <doc xml:space="preserve">name of first property to set</doc>
  13731. <type name="utf8" c:type="const char*"/>
  13732. </parameter>
  13733. <parameter name="..." transfer-ownership="none">
  13734. <doc xml:space="preserve">value of @optname1, followed by additional property/value pairs</doc>
  13735. <varargs/>
  13736. </parameter>
  13737. </parameters>
  13738. </constructor>
  13739. <field name="parent">
  13740. <type name="Session" c:type="SoupSession"/>
  13741. </field>
  13742. </class>
  13743. <record name="SessionAsyncClass"
  13744. c:type="SoupSessionAsyncClass"
  13745. glib:is-gtype-struct-for="SessionAsync">
  13746. <field name="parent_class">
  13747. <type name="SessionClass" c:type="SoupSessionClass"/>
  13748. </field>
  13749. <field name="_libsoup_reserved1" introspectable="0">
  13750. <callback name="_libsoup_reserved1">
  13751. <return-value transfer-ownership="none">
  13752. <type name="none" c:type="void"/>
  13753. </return-value>
  13754. </callback>
  13755. </field>
  13756. <field name="_libsoup_reserved2" introspectable="0">
  13757. <callback name="_libsoup_reserved2">
  13758. <return-value transfer-ownership="none">
  13759. <type name="none" c:type="void"/>
  13760. </return-value>
  13761. </callback>
  13762. </field>
  13763. <field name="_libsoup_reserved3" introspectable="0">
  13764. <callback name="_libsoup_reserved3">
  13765. <return-value transfer-ownership="none">
  13766. <type name="none" c:type="void"/>
  13767. </return-value>
  13768. </callback>
  13769. </field>
  13770. <field name="_libsoup_reserved4" introspectable="0">
  13771. <callback name="_libsoup_reserved4">
  13772. <return-value transfer-ownership="none">
  13773. <type name="none" c:type="void"/>
  13774. </return-value>
  13775. </callback>
  13776. </field>
  13777. </record>
  13778. <callback name="SessionCallback" c:type="SoupSessionCallback">
  13779. <doc xml:space="preserve">Prototype for the callback passed to soup_session_queue_message(),
  13780. qv.</doc>
  13781. <return-value transfer-ownership="none">
  13782. <type name="none" c:type="void"/>
  13783. </return-value>
  13784. <parameters>
  13785. <parameter name="session" transfer-ownership="none">
  13786. <doc xml:space="preserve">the session</doc>
  13787. <type name="Session" c:type="SoupSession*"/>
  13788. </parameter>
  13789. <parameter name="msg" transfer-ownership="none">
  13790. <doc xml:space="preserve">the message that has finished</doc>
  13791. <type name="Message" c:type="SoupMessage*"/>
  13792. </parameter>
  13793. <parameter name="user_data"
  13794. transfer-ownership="none"
  13795. nullable="1"
  13796. allow-none="1"
  13797. closure="2">
  13798. <doc xml:space="preserve">the data passed to soup_session_queue_message</doc>
  13799. <type name="gpointer" c:type="gpointer"/>
  13800. </parameter>
  13801. </parameters>
  13802. </callback>
  13803. <record name="SessionClass"
  13804. c:type="SoupSessionClass"
  13805. glib:is-gtype-struct-for="Session">
  13806. <field name="parent_class">
  13807. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  13808. </field>
  13809. <field name="request_started">
  13810. <callback name="request_started">
  13811. <return-value transfer-ownership="none">
  13812. <type name="none" c:type="void"/>
  13813. </return-value>
  13814. <parameters>
  13815. <parameter name="session" transfer-ownership="none">
  13816. <type name="Session" c:type="SoupSession*"/>
  13817. </parameter>
  13818. <parameter name="msg" transfer-ownership="none">
  13819. <type name="Message" c:type="SoupMessage*"/>
  13820. </parameter>
  13821. <parameter name="socket" transfer-ownership="none">
  13822. <type name="Socket" c:type="SoupSocket*"/>
  13823. </parameter>
  13824. </parameters>
  13825. </callback>
  13826. </field>
  13827. <field name="authenticate">
  13828. <callback name="authenticate">
  13829. <return-value transfer-ownership="none">
  13830. <type name="none" c:type="void"/>
  13831. </return-value>
  13832. <parameters>
  13833. <parameter name="session" transfer-ownership="none">
  13834. <type name="Session" c:type="SoupSession*"/>
  13835. </parameter>
  13836. <parameter name="msg" transfer-ownership="none">
  13837. <type name="Message" c:type="SoupMessage*"/>
  13838. </parameter>
  13839. <parameter name="auth" transfer-ownership="none">
  13840. <type name="Auth" c:type="SoupAuth*"/>
  13841. </parameter>
  13842. <parameter name="retrying" transfer-ownership="none">
  13843. <type name="gboolean" c:type="gboolean"/>
  13844. </parameter>
  13845. </parameters>
  13846. </callback>
  13847. </field>
  13848. <field name="queue_message">
  13849. <callback name="queue_message">
  13850. <return-value transfer-ownership="none">
  13851. <type name="none" c:type="void"/>
  13852. </return-value>
  13853. <parameters>
  13854. <parameter name="session" transfer-ownership="none">
  13855. <doc xml:space="preserve">a #SoupSession</doc>
  13856. <type name="Session" c:type="SoupSession*"/>
  13857. </parameter>
  13858. <parameter name="msg" transfer-ownership="full">
  13859. <doc xml:space="preserve">the message to queue</doc>
  13860. <type name="Message" c:type="SoupMessage*"/>
  13861. </parameter>
  13862. <parameter name="callback"
  13863. transfer-ownership="none"
  13864. nullable="1"
  13865. allow-none="1"
  13866. scope="async"
  13867. closure="3">
  13868. <doc xml:space="preserve">a #SoupSessionCallback which will
  13869. be called after the message completes or when an unrecoverable error occurs.</doc>
  13870. <type name="SessionCallback" c:type="SoupSessionCallback"/>
  13871. </parameter>
  13872. <parameter name="user_data"
  13873. transfer-ownership="none"
  13874. nullable="1"
  13875. allow-none="1"
  13876. closure="3">
  13877. <doc xml:space="preserve">a pointer passed to @callback.</doc>
  13878. <type name="gpointer" c:type="gpointer"/>
  13879. </parameter>
  13880. </parameters>
  13881. </callback>
  13882. </field>
  13883. <field name="requeue_message">
  13884. <callback name="requeue_message">
  13885. <return-value transfer-ownership="none">
  13886. <type name="none" c:type="void"/>
  13887. </return-value>
  13888. <parameters>
  13889. <parameter name="session" transfer-ownership="none">
  13890. <doc xml:space="preserve">a #SoupSession</doc>
  13891. <type name="Session" c:type="SoupSession*"/>
  13892. </parameter>
  13893. <parameter name="msg" transfer-ownership="none">
  13894. <doc xml:space="preserve">the message to requeue</doc>
  13895. <type name="Message" c:type="SoupMessage*"/>
  13896. </parameter>
  13897. </parameters>
  13898. </callback>
  13899. </field>
  13900. <field name="send_message">
  13901. <callback name="send_message">
  13902. <return-value transfer-ownership="none">
  13903. <doc xml:space="preserve">the HTTP status code of the response</doc>
  13904. <type name="guint" c:type="guint"/>
  13905. </return-value>
  13906. <parameters>
  13907. <parameter name="session" transfer-ownership="none">
  13908. <doc xml:space="preserve">a #SoupSession</doc>
  13909. <type name="Session" c:type="SoupSession*"/>
  13910. </parameter>
  13911. <parameter name="msg" transfer-ownership="none">
  13912. <doc xml:space="preserve">the message to send</doc>
  13913. <type name="Message" c:type="SoupMessage*"/>
  13914. </parameter>
  13915. </parameters>
  13916. </callback>
  13917. </field>
  13918. <field name="cancel_message">
  13919. <callback name="cancel_message">
  13920. <return-value transfer-ownership="none">
  13921. <type name="none" c:type="void"/>
  13922. </return-value>
  13923. <parameters>
  13924. <parameter name="session" transfer-ownership="none">
  13925. <doc xml:space="preserve">a #SoupSession</doc>
  13926. <type name="Session" c:type="SoupSession*"/>
  13927. </parameter>
  13928. <parameter name="msg" transfer-ownership="none">
  13929. <doc xml:space="preserve">the message to cancel</doc>
  13930. <type name="Message" c:type="SoupMessage*"/>
  13931. </parameter>
  13932. <parameter name="status_code" transfer-ownership="none">
  13933. <doc xml:space="preserve">status code to set on @msg (generally
  13934. %SOUP_STATUS_CANCELLED)</doc>
  13935. <type name="guint" c:type="guint"/>
  13936. </parameter>
  13937. </parameters>
  13938. </callback>
  13939. </field>
  13940. <field name="auth_required">
  13941. <callback name="auth_required">
  13942. <return-value transfer-ownership="none">
  13943. <type name="none" c:type="void"/>
  13944. </return-value>
  13945. <parameters>
  13946. <parameter name="session" transfer-ownership="none">
  13947. <type name="Session" c:type="SoupSession*"/>
  13948. </parameter>
  13949. <parameter name="msg" transfer-ownership="none">
  13950. <type name="Message" c:type="SoupMessage*"/>
  13951. </parameter>
  13952. <parameter name="auth" transfer-ownership="none">
  13953. <type name="Auth" c:type="SoupAuth*"/>
  13954. </parameter>
  13955. <parameter name="retrying" transfer-ownership="none">
  13956. <type name="gboolean" c:type="gboolean"/>
  13957. </parameter>
  13958. </parameters>
  13959. </callback>
  13960. </field>
  13961. <field name="flush_queue">
  13962. <callback name="flush_queue">
  13963. <return-value transfer-ownership="none">
  13964. <type name="none" c:type="void"/>
  13965. </return-value>
  13966. <parameters>
  13967. <parameter name="session" transfer-ownership="none">
  13968. <type name="Session" c:type="SoupSession*"/>
  13969. </parameter>
  13970. </parameters>
  13971. </callback>
  13972. </field>
  13973. <field name="kick">
  13974. <callback name="kick">
  13975. <return-value transfer-ownership="none">
  13976. <type name="none" c:type="void"/>
  13977. </return-value>
  13978. <parameters>
  13979. <parameter name="session" transfer-ownership="none">
  13980. <type name="Session" c:type="SoupSession*"/>
  13981. </parameter>
  13982. </parameters>
  13983. </callback>
  13984. </field>
  13985. <field name="_libsoup_reserved4" introspectable="0">
  13986. <callback name="_libsoup_reserved4">
  13987. <return-value transfer-ownership="none">
  13988. <type name="none" c:type="void"/>
  13989. </return-value>
  13990. </callback>
  13991. </field>
  13992. </record>
  13993. <interface name="SessionFeature"
  13994. c:symbol-prefix="session_feature"
  13995. c:type="SoupSessionFeature"
  13996. version="2.24"
  13997. glib:type-name="SoupSessionFeature"
  13998. glib:get-type="soup_session_feature_get_type"
  13999. glib:type-struct="SessionFeatureInterface">
  14000. <doc xml:space="preserve">An object that implement some sort of optional feature for
  14001. #SoupSession.</doc>
  14002. <virtual-method name="add_feature" invoker="add_feature" version="2.34">
  14003. <doc xml:space="preserve">Adds a "sub-feature" of type @type to the base feature @feature.
  14004. This is used for features that can be extended with multiple
  14005. different types. Eg, the authentication manager can be extended
  14006. with subtypes of #SoupAuth.</doc>
  14007. <return-value transfer-ownership="none">
  14008. <doc xml:space="preserve">%TRUE if @feature accepted @type as a subfeature.</doc>
  14009. <type name="gboolean" c:type="gboolean"/>
  14010. </return-value>
  14011. <parameters>
  14012. <instance-parameter name="feature" transfer-ownership="none">
  14013. <doc xml:space="preserve">the "base" feature</doc>
  14014. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14015. </instance-parameter>
  14016. <parameter name="type" transfer-ownership="none">
  14017. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14018. <type name="GType" c:type="GType"/>
  14019. </parameter>
  14020. </parameters>
  14021. </virtual-method>
  14022. <virtual-method name="attach" invoker="attach">
  14023. <return-value transfer-ownership="none">
  14024. <type name="none" c:type="void"/>
  14025. </return-value>
  14026. <parameters>
  14027. <instance-parameter name="feature" transfer-ownership="none">
  14028. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14029. </instance-parameter>
  14030. <parameter name="session" transfer-ownership="none">
  14031. <type name="Session" c:type="SoupSession*"/>
  14032. </parameter>
  14033. </parameters>
  14034. </virtual-method>
  14035. <virtual-method name="detach" invoker="detach">
  14036. <return-value transfer-ownership="none">
  14037. <type name="none" c:type="void"/>
  14038. </return-value>
  14039. <parameters>
  14040. <instance-parameter name="feature" transfer-ownership="none">
  14041. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14042. </instance-parameter>
  14043. <parameter name="session" transfer-ownership="none">
  14044. <type name="Session" c:type="SoupSession*"/>
  14045. </parameter>
  14046. </parameters>
  14047. </virtual-method>
  14048. <virtual-method name="has_feature" invoker="has_feature" version="2.34">
  14049. <doc xml:space="preserve">Tests if @feature has a "sub-feature" of type @type. See
  14050. soup_session_feature_add_feature().</doc>
  14051. <return-value transfer-ownership="none">
  14052. <doc xml:space="preserve">%TRUE if @feature has a subfeature of type @type</doc>
  14053. <type name="gboolean" c:type="gboolean"/>
  14054. </return-value>
  14055. <parameters>
  14056. <instance-parameter name="feature" transfer-ownership="none">
  14057. <doc xml:space="preserve">the "base" feature</doc>
  14058. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14059. </instance-parameter>
  14060. <parameter name="type" transfer-ownership="none">
  14061. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14062. <type name="GType" c:type="GType"/>
  14063. </parameter>
  14064. </parameters>
  14065. </virtual-method>
  14066. <virtual-method name="remove_feature"
  14067. invoker="remove_feature"
  14068. version="2.34">
  14069. <doc xml:space="preserve">Removes the "sub-feature" of type @type from the base feature
  14070. @feature. See soup_session_feature_add_feature().</doc>
  14071. <return-value transfer-ownership="none">
  14072. <doc xml:space="preserve">%TRUE if @type was removed from @feature</doc>
  14073. <type name="gboolean" c:type="gboolean"/>
  14074. </return-value>
  14075. <parameters>
  14076. <instance-parameter name="feature" transfer-ownership="none">
  14077. <doc xml:space="preserve">the "base" feature</doc>
  14078. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14079. </instance-parameter>
  14080. <parameter name="type" transfer-ownership="none">
  14081. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14082. <type name="GType" c:type="GType"/>
  14083. </parameter>
  14084. </parameters>
  14085. </virtual-method>
  14086. <virtual-method name="request_queued">
  14087. <return-value transfer-ownership="none">
  14088. <type name="none" c:type="void"/>
  14089. </return-value>
  14090. <parameters>
  14091. <instance-parameter name="feature" transfer-ownership="none">
  14092. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14093. </instance-parameter>
  14094. <parameter name="session" transfer-ownership="none">
  14095. <type name="Session" c:type="SoupSession*"/>
  14096. </parameter>
  14097. <parameter name="msg" transfer-ownership="none">
  14098. <type name="Message" c:type="SoupMessage*"/>
  14099. </parameter>
  14100. </parameters>
  14101. </virtual-method>
  14102. <virtual-method name="request_started">
  14103. <return-value transfer-ownership="none">
  14104. <type name="none" c:type="void"/>
  14105. </return-value>
  14106. <parameters>
  14107. <instance-parameter name="feature" transfer-ownership="none">
  14108. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14109. </instance-parameter>
  14110. <parameter name="session" transfer-ownership="none">
  14111. <type name="Session" c:type="SoupSession*"/>
  14112. </parameter>
  14113. <parameter name="msg" transfer-ownership="none">
  14114. <type name="Message" c:type="SoupMessage*"/>
  14115. </parameter>
  14116. <parameter name="socket" transfer-ownership="none">
  14117. <type name="Socket" c:type="SoupSocket*"/>
  14118. </parameter>
  14119. </parameters>
  14120. </virtual-method>
  14121. <virtual-method name="request_unqueued">
  14122. <return-value transfer-ownership="none">
  14123. <type name="none" c:type="void"/>
  14124. </return-value>
  14125. <parameters>
  14126. <instance-parameter name="feature" transfer-ownership="none">
  14127. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14128. </instance-parameter>
  14129. <parameter name="session" transfer-ownership="none">
  14130. <type name="Session" c:type="SoupSession*"/>
  14131. </parameter>
  14132. <parameter name="msg" transfer-ownership="none">
  14133. <type name="Message" c:type="SoupMessage*"/>
  14134. </parameter>
  14135. </parameters>
  14136. </virtual-method>
  14137. <method name="add_feature"
  14138. c:identifier="soup_session_feature_add_feature"
  14139. version="2.34">
  14140. <doc xml:space="preserve">Adds a "sub-feature" of type @type to the base feature @feature.
  14141. This is used for features that can be extended with multiple
  14142. different types. Eg, the authentication manager can be extended
  14143. with subtypes of #SoupAuth.</doc>
  14144. <return-value transfer-ownership="none">
  14145. <doc xml:space="preserve">%TRUE if @feature accepted @type as a subfeature.</doc>
  14146. <type name="gboolean" c:type="gboolean"/>
  14147. </return-value>
  14148. <parameters>
  14149. <instance-parameter name="feature" transfer-ownership="none">
  14150. <doc xml:space="preserve">the "base" feature</doc>
  14151. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14152. </instance-parameter>
  14153. <parameter name="type" transfer-ownership="none">
  14154. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14155. <type name="GType" c:type="GType"/>
  14156. </parameter>
  14157. </parameters>
  14158. </method>
  14159. <method name="attach" c:identifier="soup_session_feature_attach">
  14160. <return-value transfer-ownership="none">
  14161. <type name="none" c:type="void"/>
  14162. </return-value>
  14163. <parameters>
  14164. <instance-parameter name="feature" transfer-ownership="none">
  14165. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14166. </instance-parameter>
  14167. <parameter name="session" transfer-ownership="none">
  14168. <type name="Session" c:type="SoupSession*"/>
  14169. </parameter>
  14170. </parameters>
  14171. </method>
  14172. <method name="detach" c:identifier="soup_session_feature_detach">
  14173. <return-value transfer-ownership="none">
  14174. <type name="none" c:type="void"/>
  14175. </return-value>
  14176. <parameters>
  14177. <instance-parameter name="feature" transfer-ownership="none">
  14178. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14179. </instance-parameter>
  14180. <parameter name="session" transfer-ownership="none">
  14181. <type name="Session" c:type="SoupSession*"/>
  14182. </parameter>
  14183. </parameters>
  14184. </method>
  14185. <method name="has_feature"
  14186. c:identifier="soup_session_feature_has_feature"
  14187. version="2.34">
  14188. <doc xml:space="preserve">Tests if @feature has a "sub-feature" of type @type. See
  14189. soup_session_feature_add_feature().</doc>
  14190. <return-value transfer-ownership="none">
  14191. <doc xml:space="preserve">%TRUE if @feature has a subfeature of type @type</doc>
  14192. <type name="gboolean" c:type="gboolean"/>
  14193. </return-value>
  14194. <parameters>
  14195. <instance-parameter name="feature" transfer-ownership="none">
  14196. <doc xml:space="preserve">the "base" feature</doc>
  14197. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14198. </instance-parameter>
  14199. <parameter name="type" transfer-ownership="none">
  14200. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14201. <type name="GType" c:type="GType"/>
  14202. </parameter>
  14203. </parameters>
  14204. </method>
  14205. <method name="remove_feature"
  14206. c:identifier="soup_session_feature_remove_feature"
  14207. version="2.34">
  14208. <doc xml:space="preserve">Removes the "sub-feature" of type @type from the base feature
  14209. @feature. See soup_session_feature_add_feature().</doc>
  14210. <return-value transfer-ownership="none">
  14211. <doc xml:space="preserve">%TRUE if @type was removed from @feature</doc>
  14212. <type name="gboolean" c:type="gboolean"/>
  14213. </return-value>
  14214. <parameters>
  14215. <instance-parameter name="feature" transfer-ownership="none">
  14216. <doc xml:space="preserve">the "base" feature</doc>
  14217. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14218. </instance-parameter>
  14219. <parameter name="type" transfer-ownership="none">
  14220. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14221. <type name="GType" c:type="GType"/>
  14222. </parameter>
  14223. </parameters>
  14224. </method>
  14225. </interface>
  14226. <record name="SessionFeatureInterface"
  14227. c:type="SoupSessionFeatureInterface"
  14228. glib:is-gtype-struct-for="SessionFeature"
  14229. version="2.24">
  14230. <doc xml:space="preserve">The interface implemented by #SoupSessionFeature&lt;!-- --&gt;s.</doc>
  14231. <field name="parent">
  14232. <doc xml:space="preserve">The parent interface.</doc>
  14233. <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
  14234. </field>
  14235. <field name="attach">
  14236. <callback name="attach">
  14237. <return-value transfer-ownership="none">
  14238. <type name="none" c:type="void"/>
  14239. </return-value>
  14240. <parameters>
  14241. <parameter name="feature" transfer-ownership="none">
  14242. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14243. </parameter>
  14244. <parameter name="session" transfer-ownership="none">
  14245. <type name="Session" c:type="SoupSession*"/>
  14246. </parameter>
  14247. </parameters>
  14248. </callback>
  14249. </field>
  14250. <field name="detach">
  14251. <callback name="detach">
  14252. <return-value transfer-ownership="none">
  14253. <type name="none" c:type="void"/>
  14254. </return-value>
  14255. <parameters>
  14256. <parameter name="feature" transfer-ownership="none">
  14257. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14258. </parameter>
  14259. <parameter name="session" transfer-ownership="none">
  14260. <type name="Session" c:type="SoupSession*"/>
  14261. </parameter>
  14262. </parameters>
  14263. </callback>
  14264. </field>
  14265. <field name="request_queued">
  14266. <callback name="request_queued">
  14267. <return-value transfer-ownership="none">
  14268. <type name="none" c:type="void"/>
  14269. </return-value>
  14270. <parameters>
  14271. <parameter name="feature" transfer-ownership="none">
  14272. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14273. </parameter>
  14274. <parameter name="session" transfer-ownership="none">
  14275. <type name="Session" c:type="SoupSession*"/>
  14276. </parameter>
  14277. <parameter name="msg" transfer-ownership="none">
  14278. <type name="Message" c:type="SoupMessage*"/>
  14279. </parameter>
  14280. </parameters>
  14281. </callback>
  14282. </field>
  14283. <field name="request_started">
  14284. <callback name="request_started">
  14285. <return-value transfer-ownership="none">
  14286. <type name="none" c:type="void"/>
  14287. </return-value>
  14288. <parameters>
  14289. <parameter name="feature" transfer-ownership="none">
  14290. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14291. </parameter>
  14292. <parameter name="session" transfer-ownership="none">
  14293. <type name="Session" c:type="SoupSession*"/>
  14294. </parameter>
  14295. <parameter name="msg" transfer-ownership="none">
  14296. <type name="Message" c:type="SoupMessage*"/>
  14297. </parameter>
  14298. <parameter name="socket" transfer-ownership="none">
  14299. <type name="Socket" c:type="SoupSocket*"/>
  14300. </parameter>
  14301. </parameters>
  14302. </callback>
  14303. </field>
  14304. <field name="request_unqueued">
  14305. <callback name="request_unqueued">
  14306. <return-value transfer-ownership="none">
  14307. <type name="none" c:type="void"/>
  14308. </return-value>
  14309. <parameters>
  14310. <parameter name="feature" transfer-ownership="none">
  14311. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14312. </parameter>
  14313. <parameter name="session" transfer-ownership="none">
  14314. <type name="Session" c:type="SoupSession*"/>
  14315. </parameter>
  14316. <parameter name="msg" transfer-ownership="none">
  14317. <type name="Message" c:type="SoupMessage*"/>
  14318. </parameter>
  14319. </parameters>
  14320. </callback>
  14321. </field>
  14322. <field name="add_feature">
  14323. <callback name="add_feature">
  14324. <return-value transfer-ownership="none">
  14325. <doc xml:space="preserve">%TRUE if @feature accepted @type as a subfeature.</doc>
  14326. <type name="gboolean" c:type="gboolean"/>
  14327. </return-value>
  14328. <parameters>
  14329. <parameter name="feature" transfer-ownership="none">
  14330. <doc xml:space="preserve">the "base" feature</doc>
  14331. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14332. </parameter>
  14333. <parameter name="type" transfer-ownership="none">
  14334. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14335. <type name="GType" c:type="GType"/>
  14336. </parameter>
  14337. </parameters>
  14338. </callback>
  14339. </field>
  14340. <field name="remove_feature">
  14341. <callback name="remove_feature">
  14342. <return-value transfer-ownership="none">
  14343. <doc xml:space="preserve">%TRUE if @type was removed from @feature</doc>
  14344. <type name="gboolean" c:type="gboolean"/>
  14345. </return-value>
  14346. <parameters>
  14347. <parameter name="feature" transfer-ownership="none">
  14348. <doc xml:space="preserve">the "base" feature</doc>
  14349. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14350. </parameter>
  14351. <parameter name="type" transfer-ownership="none">
  14352. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14353. <type name="GType" c:type="GType"/>
  14354. </parameter>
  14355. </parameters>
  14356. </callback>
  14357. </field>
  14358. <field name="has_feature">
  14359. <callback name="has_feature">
  14360. <return-value transfer-ownership="none">
  14361. <doc xml:space="preserve">%TRUE if @feature has a subfeature of type @type</doc>
  14362. <type name="gboolean" c:type="gboolean"/>
  14363. </return-value>
  14364. <parameters>
  14365. <parameter name="feature" transfer-ownership="none">
  14366. <doc xml:space="preserve">the "base" feature</doc>
  14367. <type name="SessionFeature" c:type="SoupSessionFeature*"/>
  14368. </parameter>
  14369. <parameter name="type" transfer-ownership="none">
  14370. <doc xml:space="preserve">the #GType of a "sub-feature"</doc>
  14371. <type name="GType" c:type="GType"/>
  14372. </parameter>
  14373. </parameters>
  14374. </callback>
  14375. </field>
  14376. </record>
  14377. <class name="SessionSync"
  14378. c:symbol-prefix="session_sync"
  14379. c:type="SoupSessionSync"
  14380. parent="Session"
  14381. glib:type-name="SoupSessionSync"
  14382. glib:get-type="soup_session_sync_get_type"
  14383. glib:type-struct="SessionSyncClass">
  14384. <constructor name="new"
  14385. c:identifier="soup_session_sync_new"
  14386. deprecated="1">
  14387. <doc xml:space="preserve">Creates an synchronous #SoupSession with the default options.</doc>
  14388. <doc-deprecated xml:space="preserve">#SoupSessionSync is deprecated; use a plain
  14389. #SoupSession, created with soup_session_new(). See the &lt;link
  14390. linkend="libsoup-session-porting"&gt;porting guide&lt;/link&gt;.</doc-deprecated>
  14391. <return-value transfer-ownership="full">
  14392. <doc xml:space="preserve">the new session.</doc>
  14393. <type name="Session" c:type="SoupSession*"/>
  14394. </return-value>
  14395. </constructor>
  14396. <constructor name="new_with_options"
  14397. c:identifier="soup_session_sync_new_with_options"
  14398. introspectable="0"
  14399. deprecated="1">
  14400. <doc xml:space="preserve">Creates an synchronous #SoupSession with the specified options.</doc>
  14401. <doc-deprecated xml:space="preserve">#SoupSessionSync is deprecated; use a plain
  14402. #SoupSession, created with soup_session_new_with_options(). See the
  14403. &lt;link linkend="libsoup-session-porting"&gt;porting guide&lt;/link&gt;.</doc-deprecated>
  14404. <return-value transfer-ownership="full">
  14405. <doc xml:space="preserve">the new session.</doc>
  14406. <type name="Session" c:type="SoupSession*"/>
  14407. </return-value>
  14408. <parameters>
  14409. <parameter name="optname1" transfer-ownership="none">
  14410. <doc xml:space="preserve">name of first property to set</doc>
  14411. <type name="utf8" c:type="const char*"/>
  14412. </parameter>
  14413. <parameter name="..." transfer-ownership="none">
  14414. <doc xml:space="preserve">value of @optname1, followed by additional property/value pairs</doc>
  14415. <varargs/>
  14416. </parameter>
  14417. </parameters>
  14418. </constructor>
  14419. <field name="parent">
  14420. <type name="Session" c:type="SoupSession"/>
  14421. </field>
  14422. </class>
  14423. <record name="SessionSyncClass"
  14424. c:type="SoupSessionSyncClass"
  14425. glib:is-gtype-struct-for="SessionSync">
  14426. <field name="parent_class">
  14427. <type name="SessionClass" c:type="SoupSessionClass"/>
  14428. </field>
  14429. <field name="_libsoup_reserved1" introspectable="0">
  14430. <callback name="_libsoup_reserved1">
  14431. <return-value transfer-ownership="none">
  14432. <type name="none" c:type="void"/>
  14433. </return-value>
  14434. </callback>
  14435. </field>
  14436. <field name="_libsoup_reserved2" introspectable="0">
  14437. <callback name="_libsoup_reserved2">
  14438. <return-value transfer-ownership="none">
  14439. <type name="none" c:type="void"/>
  14440. </return-value>
  14441. </callback>
  14442. </field>
  14443. <field name="_libsoup_reserved3" introspectable="0">
  14444. <callback name="_libsoup_reserved3">
  14445. <return-value transfer-ownership="none">
  14446. <type name="none" c:type="void"/>
  14447. </return-value>
  14448. </callback>
  14449. </field>
  14450. <field name="_libsoup_reserved4" introspectable="0">
  14451. <callback name="_libsoup_reserved4">
  14452. <return-value transfer-ownership="none">
  14453. <type name="none" c:type="void"/>
  14454. </return-value>
  14455. </callback>
  14456. </field>
  14457. </record>
  14458. <class name="Socket"
  14459. c:symbol-prefix="socket"
  14460. c:type="SoupSocket"
  14461. parent="GObject.Object"
  14462. glib:type-name="SoupSocket"
  14463. glib:get-type="soup_socket_get_type"
  14464. glib:type-struct="SocketClass">
  14465. <implements name="Gio.Initable"/>
  14466. <constructor name="new"
  14467. c:identifier="soup_socket_new"
  14468. introspectable="0">
  14469. <doc xml:space="preserve">Creates a new (disconnected) socket</doc>
  14470. <return-value transfer-ownership="full">
  14471. <doc xml:space="preserve">the new socket</doc>
  14472. <type name="Socket" c:type="SoupSocket*"/>
  14473. </return-value>
  14474. <parameters>
  14475. <parameter name="optname1" transfer-ownership="none">
  14476. <doc xml:space="preserve">name of first property to set (or %NULL)</doc>
  14477. <type name="utf8" c:type="const char*"/>
  14478. </parameter>
  14479. <parameter name="..." transfer-ownership="none">
  14480. <doc xml:space="preserve">value of @optname1, followed by additional property/value pairs</doc>
  14481. <varargs/>
  14482. </parameter>
  14483. </parameters>
  14484. </constructor>
  14485. <virtual-method name="disconnected">
  14486. <return-value transfer-ownership="none">
  14487. <type name="none" c:type="void"/>
  14488. </return-value>
  14489. <parameters>
  14490. <instance-parameter name="sock" transfer-ownership="none">
  14491. <type name="Socket" c:type="SoupSocket*"/>
  14492. </instance-parameter>
  14493. </parameters>
  14494. </virtual-method>
  14495. <virtual-method name="new_connection">
  14496. <return-value transfer-ownership="none">
  14497. <type name="none" c:type="void"/>
  14498. </return-value>
  14499. <parameters>
  14500. <instance-parameter name="listener" transfer-ownership="none">
  14501. <type name="Socket" c:type="SoupSocket*"/>
  14502. </instance-parameter>
  14503. <parameter name="new_sock" transfer-ownership="none">
  14504. <type name="Socket" c:type="SoupSocket*"/>
  14505. </parameter>
  14506. </parameters>
  14507. </virtual-method>
  14508. <virtual-method name="readable">
  14509. <return-value transfer-ownership="none">
  14510. <type name="none" c:type="void"/>
  14511. </return-value>
  14512. <parameters>
  14513. <instance-parameter name="sock" transfer-ownership="none">
  14514. <type name="Socket" c:type="SoupSocket*"/>
  14515. </instance-parameter>
  14516. </parameters>
  14517. </virtual-method>
  14518. <virtual-method name="writable">
  14519. <return-value transfer-ownership="none">
  14520. <type name="none" c:type="void"/>
  14521. </return-value>
  14522. <parameters>
  14523. <instance-parameter name="sock" transfer-ownership="none">
  14524. <type name="Socket" c:type="SoupSocket*"/>
  14525. </instance-parameter>
  14526. </parameters>
  14527. </virtual-method>
  14528. <method name="connect_async" c:identifier="soup_socket_connect_async">
  14529. <doc xml:space="preserve">Begins asynchronously connecting to @sock's remote address. The
  14530. socket will call @callback when it succeeds or fails (but not
  14531. before returning from this function).
  14532. If @cancellable is non-%NULL, it can be used to cancel the
  14533. connection. @callback will still be invoked in this case, with a
  14534. status of %SOUP_STATUS_CANCELLED.</doc>
  14535. <return-value transfer-ownership="none">
  14536. <type name="none" c:type="void"/>
  14537. </return-value>
  14538. <parameters>
  14539. <instance-parameter name="sock" transfer-ownership="none">
  14540. <doc xml:space="preserve">a client #SoupSocket (which must not already be connected)</doc>
  14541. <type name="Socket" c:type="SoupSocket*"/>
  14542. </instance-parameter>
  14543. <parameter name="cancellable"
  14544. transfer-ownership="none"
  14545. nullable="1"
  14546. allow-none="1">
  14547. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  14548. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  14549. </parameter>
  14550. <parameter name="callback"
  14551. transfer-ownership="none"
  14552. scope="async"
  14553. closure="2">
  14554. <doc xml:space="preserve">callback to call after connecting</doc>
  14555. <type name="SocketCallback" c:type="SoupSocketCallback"/>
  14556. </parameter>
  14557. <parameter name="user_data"
  14558. transfer-ownership="none"
  14559. nullable="1"
  14560. allow-none="1">
  14561. <doc xml:space="preserve">data to pass to @callback</doc>
  14562. <type name="gpointer" c:type="gpointer"/>
  14563. </parameter>
  14564. </parameters>
  14565. </method>
  14566. <method name="connect_sync" c:identifier="soup_socket_connect_sync">
  14567. <doc xml:space="preserve">Attempt to synchronously connect @sock to its remote address.
  14568. If @cancellable is non-%NULL, it can be used to cancel the
  14569. connection, in which case soup_socket_connect_sync() will return
  14570. %SOUP_STATUS_CANCELLED.</doc>
  14571. <return-value transfer-ownership="none">
  14572. <doc xml:space="preserve">a success or failure code.</doc>
  14573. <type name="guint" c:type="guint"/>
  14574. </return-value>
  14575. <parameters>
  14576. <instance-parameter name="sock" transfer-ownership="none">
  14577. <doc xml:space="preserve">a client #SoupSocket (which must not already be connected)</doc>
  14578. <type name="Socket" c:type="SoupSocket*"/>
  14579. </instance-parameter>
  14580. <parameter name="cancellable"
  14581. transfer-ownership="none"
  14582. nullable="1"
  14583. allow-none="1">
  14584. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  14585. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  14586. </parameter>
  14587. </parameters>
  14588. </method>
  14589. <method name="disconnect" c:identifier="soup_socket_disconnect">
  14590. <doc xml:space="preserve">Disconnects @sock. Any further read or write attempts on it will
  14591. fail.</doc>
  14592. <return-value transfer-ownership="none">
  14593. <type name="none" c:type="void"/>
  14594. </return-value>
  14595. <parameters>
  14596. <instance-parameter name="sock" transfer-ownership="none">
  14597. <doc xml:space="preserve">a #SoupSocket</doc>
  14598. <type name="Socket" c:type="SoupSocket*"/>
  14599. </instance-parameter>
  14600. </parameters>
  14601. </method>
  14602. <method name="get_fd" c:identifier="soup_socket_get_fd">
  14603. <doc xml:space="preserve">Gets @sock's underlying file descriptor.
  14604. Note that fiddling with the file descriptor may break the
  14605. #SoupSocket.</doc>
  14606. <return-value transfer-ownership="none">
  14607. <doc xml:space="preserve">@sock's file descriptor.</doc>
  14608. <type name="gint" c:type="int"/>
  14609. </return-value>
  14610. <parameters>
  14611. <instance-parameter name="sock" transfer-ownership="none">
  14612. <doc xml:space="preserve">a #SoupSocket</doc>
  14613. <type name="Socket" c:type="SoupSocket*"/>
  14614. </instance-parameter>
  14615. </parameters>
  14616. </method>
  14617. <method name="get_local_address"
  14618. c:identifier="soup_socket_get_local_address">
  14619. <doc xml:space="preserve">Returns the #SoupAddress corresponding to the local end of @sock.
  14620. Calling this method on an unconnected socket is considered to be
  14621. an error, and produces undefined results.</doc>
  14622. <return-value transfer-ownership="none">
  14623. <doc xml:space="preserve">the #SoupAddress</doc>
  14624. <type name="Address" c:type="SoupAddress*"/>
  14625. </return-value>
  14626. <parameters>
  14627. <instance-parameter name="sock" transfer-ownership="none">
  14628. <doc xml:space="preserve">a #SoupSocket</doc>
  14629. <type name="Socket" c:type="SoupSocket*"/>
  14630. </instance-parameter>
  14631. </parameters>
  14632. </method>
  14633. <method name="get_remote_address"
  14634. c:identifier="soup_socket_get_remote_address">
  14635. <doc xml:space="preserve">Returns the #SoupAddress corresponding to the remote end of @sock.
  14636. Calling this method on an unconnected socket is considered to be
  14637. an error, and produces undefined results.</doc>
  14638. <return-value transfer-ownership="none">
  14639. <doc xml:space="preserve">the #SoupAddress</doc>
  14640. <type name="Address" c:type="SoupAddress*"/>
  14641. </return-value>
  14642. <parameters>
  14643. <instance-parameter name="sock" transfer-ownership="none">
  14644. <doc xml:space="preserve">a #SoupSocket</doc>
  14645. <type name="Socket" c:type="SoupSocket*"/>
  14646. </instance-parameter>
  14647. </parameters>
  14648. </method>
  14649. <method name="is_connected" c:identifier="soup_socket_is_connected">
  14650. <doc xml:space="preserve">Tests if @sock is connected to another host</doc>
  14651. <return-value transfer-ownership="none">
  14652. <doc xml:space="preserve">%TRUE or %FALSE.</doc>
  14653. <type name="gboolean" c:type="gboolean"/>
  14654. </return-value>
  14655. <parameters>
  14656. <instance-parameter name="sock" transfer-ownership="none">
  14657. <doc xml:space="preserve">a #SoupSocket</doc>
  14658. <type name="Socket" c:type="SoupSocket*"/>
  14659. </instance-parameter>
  14660. </parameters>
  14661. </method>
  14662. <method name="is_ssl" c:identifier="soup_socket_is_ssl">
  14663. <doc xml:space="preserve">Tests if @sock is doing (or has attempted to do) SSL.</doc>
  14664. <return-value transfer-ownership="none">
  14665. <doc xml:space="preserve">%TRUE if @sock has SSL credentials set</doc>
  14666. <type name="gboolean" c:type="gboolean"/>
  14667. </return-value>
  14668. <parameters>
  14669. <instance-parameter name="sock" transfer-ownership="none">
  14670. <doc xml:space="preserve">a #SoupSocket</doc>
  14671. <type name="Socket" c:type="SoupSocket*"/>
  14672. </instance-parameter>
  14673. </parameters>
  14674. </method>
  14675. <method name="listen" c:identifier="soup_socket_listen">
  14676. <doc xml:space="preserve">Makes @sock start listening on its local address. When connections
  14677. come in, @sock will emit #SoupSocket::new_connection.</doc>
  14678. <return-value transfer-ownership="none">
  14679. <doc xml:space="preserve">whether or not @sock is now listening.</doc>
  14680. <type name="gboolean" c:type="gboolean"/>
  14681. </return-value>
  14682. <parameters>
  14683. <instance-parameter name="sock" transfer-ownership="none">
  14684. <doc xml:space="preserve">a server #SoupSocket (which must not already be connected or
  14685. listening)</doc>
  14686. <type name="Socket" c:type="SoupSocket*"/>
  14687. </instance-parameter>
  14688. </parameters>
  14689. </method>
  14690. <method name="read" c:identifier="soup_socket_read" throws="1">
  14691. <doc xml:space="preserve">Attempts to read up to @len bytes from @sock into @buffer. If some
  14692. data is successfully read, soup_socket_read() will return
  14693. %SOUP_SOCKET_OK, and *@nread will contain the number of bytes
  14694. actually read (which may be less than @len).
  14695. If @sock is non-blocking, and no data is available, the return
  14696. value will be %SOUP_SOCKET_WOULD_BLOCK. In this case, the caller
  14697. can connect to the #SoupSocket::readable signal to know when there
  14698. is more data to read. (NB: You MUST read all available data off the
  14699. socket first. #SoupSocket::readable is only emitted after
  14700. soup_socket_read() returns %SOUP_SOCKET_WOULD_BLOCK, and it is only
  14701. emitted once. See the documentation for #SoupSocket:non-blocking.)</doc>
  14702. <return-value transfer-ownership="none">
  14703. <doc xml:space="preserve">a #SoupSocketIOStatus, as described above (or
  14704. %SOUP_SOCKET_EOF if the socket is no longer connected, or
  14705. %SOUP_SOCKET_ERROR on any other error, in which case @error will
  14706. also be set).</doc>
  14707. <type name="SocketIOStatus" c:type="SoupSocketIOStatus"/>
  14708. </return-value>
  14709. <parameters>
  14710. <instance-parameter name="sock" transfer-ownership="none">
  14711. <doc xml:space="preserve">the socket</doc>
  14712. <type name="Socket" c:type="SoupSocket*"/>
  14713. </instance-parameter>
  14714. <parameter name="buffer" transfer-ownership="none">
  14715. <doc xml:space="preserve">buffer to read
  14716. into</doc>
  14717. <array length="1" zero-terminated="0" c:type="gpointer">
  14718. <type name="guint8"/>
  14719. </array>
  14720. </parameter>
  14721. <parameter name="len" transfer-ownership="none">
  14722. <doc xml:space="preserve">size of @buffer in bytes</doc>
  14723. <type name="gsize" c:type="gsize"/>
  14724. </parameter>
  14725. <parameter name="nread"
  14726. direction="out"
  14727. caller-allocates="0"
  14728. transfer-ownership="full">
  14729. <doc xml:space="preserve">on return, the number of bytes read into @buffer</doc>
  14730. <type name="gsize" c:type="gsize*"/>
  14731. </parameter>
  14732. <parameter name="cancellable"
  14733. transfer-ownership="none"
  14734. nullable="1"
  14735. allow-none="1">
  14736. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  14737. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  14738. </parameter>
  14739. </parameters>
  14740. </method>
  14741. <method name="read_until"
  14742. c:identifier="soup_socket_read_until"
  14743. throws="1">
  14744. <doc xml:space="preserve">Like soup_socket_read(), but reads no further than the first
  14745. occurrence of @boundary. (If the boundary is found, it will be
  14746. included in the returned data, and *@got_boundary will be set to
  14747. %TRUE.) Any data after the boundary will returned in future reads.
  14748. soup_socket_read_until() will almost always return fewer than @len
  14749. bytes: if the boundary is found, then it will only return the bytes
  14750. up until the end of the boundary, and if the boundary is not found,
  14751. then it will leave the last &lt;literal&gt;(boundary_len - 1)&lt;/literal&gt;
  14752. bytes in its internal buffer, in case they form the start of the
  14753. boundary string. Thus, @len normally needs to be at least 1 byte
  14754. longer than @boundary_len if you want to make any progress at all.</doc>
  14755. <return-value transfer-ownership="none">
  14756. <doc xml:space="preserve">as for soup_socket_read()</doc>
  14757. <type name="SocketIOStatus" c:type="SoupSocketIOStatus"/>
  14758. </return-value>
  14759. <parameters>
  14760. <instance-parameter name="sock" transfer-ownership="none">
  14761. <doc xml:space="preserve">the socket</doc>
  14762. <type name="Socket" c:type="SoupSocket*"/>
  14763. </instance-parameter>
  14764. <parameter name="buffer" transfer-ownership="none">
  14765. <doc xml:space="preserve">buffer to read
  14766. into</doc>
  14767. <array length="1" zero-terminated="0" c:type="gpointer">
  14768. <type name="guint8"/>
  14769. </array>
  14770. </parameter>
  14771. <parameter name="len" transfer-ownership="none">
  14772. <doc xml:space="preserve">size of @buffer in bytes</doc>
  14773. <type name="gsize" c:type="gsize"/>
  14774. </parameter>
  14775. <parameter name="boundary"
  14776. transfer-ownership="none"
  14777. nullable="1"
  14778. allow-none="1">
  14779. <doc xml:space="preserve">boundary to read until</doc>
  14780. <type name="gpointer" c:type="gconstpointer"/>
  14781. </parameter>
  14782. <parameter name="boundary_len" transfer-ownership="none">
  14783. <doc xml:space="preserve">length of @boundary in bytes</doc>
  14784. <type name="gsize" c:type="gsize"/>
  14785. </parameter>
  14786. <parameter name="nread"
  14787. direction="out"
  14788. caller-allocates="0"
  14789. transfer-ownership="full">
  14790. <doc xml:space="preserve">on return, the number of bytes read into @buffer</doc>
  14791. <type name="gsize" c:type="gsize*"/>
  14792. </parameter>
  14793. <parameter name="got_boundary" transfer-ownership="none">
  14794. <doc xml:space="preserve">on return, whether or not the data in @buffer
  14795. ends with the boundary string</doc>
  14796. <type name="gboolean" c:type="gboolean*"/>
  14797. </parameter>
  14798. <parameter name="cancellable"
  14799. transfer-ownership="none"
  14800. nullable="1"
  14801. allow-none="1">
  14802. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  14803. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  14804. </parameter>
  14805. </parameters>
  14806. </method>
  14807. <method name="start_proxy_ssl"
  14808. c:identifier="soup_socket_start_proxy_ssl">
  14809. <doc xml:space="preserve">Starts using SSL on @socket, expecting to find a host named
  14810. @ssl_host.</doc>
  14811. <return-value transfer-ownership="none">
  14812. <doc xml:space="preserve">success or failure</doc>
  14813. <type name="gboolean" c:type="gboolean"/>
  14814. </return-value>
  14815. <parameters>
  14816. <instance-parameter name="sock" transfer-ownership="none">
  14817. <doc xml:space="preserve">the socket</doc>
  14818. <type name="Socket" c:type="SoupSocket*"/>
  14819. </instance-parameter>
  14820. <parameter name="ssl_host" transfer-ownership="none">
  14821. <doc xml:space="preserve">hostname of the SSL server</doc>
  14822. <type name="utf8" c:type="const char*"/>
  14823. </parameter>
  14824. <parameter name="cancellable"
  14825. transfer-ownership="none"
  14826. nullable="1"
  14827. allow-none="1">
  14828. <doc xml:space="preserve">a #GCancellable</doc>
  14829. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  14830. </parameter>
  14831. </parameters>
  14832. </method>
  14833. <method name="start_ssl" c:identifier="soup_socket_start_ssl">
  14834. <doc xml:space="preserve">Starts using SSL on @socket.</doc>
  14835. <return-value transfer-ownership="none">
  14836. <doc xml:space="preserve">success or failure</doc>
  14837. <type name="gboolean" c:type="gboolean"/>
  14838. </return-value>
  14839. <parameters>
  14840. <instance-parameter name="sock" transfer-ownership="none">
  14841. <doc xml:space="preserve">the socket</doc>
  14842. <type name="Socket" c:type="SoupSocket*"/>
  14843. </instance-parameter>
  14844. <parameter name="cancellable"
  14845. transfer-ownership="none"
  14846. nullable="1"
  14847. allow-none="1">
  14848. <doc xml:space="preserve">a #GCancellable</doc>
  14849. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  14850. </parameter>
  14851. </parameters>
  14852. </method>
  14853. <method name="write" c:identifier="soup_socket_write" throws="1">
  14854. <doc xml:space="preserve">Attempts to write @len bytes from @buffer to @sock. If some data is
  14855. successfully written, the return status will be %SOUP_SOCKET_OK,
  14856. and *@nwrote will contain the number of bytes actually written
  14857. (which may be less than @len).
  14858. If @sock is non-blocking, and no data could be written right away,
  14859. the return value will be %SOUP_SOCKET_WOULD_BLOCK. In this case,
  14860. the caller can connect to the #SoupSocket::writable signal to know
  14861. when more data can be written. (NB: #SoupSocket::writable is only
  14862. emitted after soup_socket_write() returns %SOUP_SOCKET_WOULD_BLOCK,
  14863. and it is only emitted once. See the documentation for
  14864. #SoupSocket:non-blocking.)</doc>
  14865. <return-value transfer-ownership="none">
  14866. <doc xml:space="preserve">a #SoupSocketIOStatus, as described above (or
  14867. %SOUP_SOCKET_EOF or %SOUP_SOCKET_ERROR. @error will be set if the
  14868. return value is %SOUP_SOCKET_ERROR.)</doc>
  14869. <type name="SocketIOStatus" c:type="SoupSocketIOStatus"/>
  14870. </return-value>
  14871. <parameters>
  14872. <instance-parameter name="sock" transfer-ownership="none">
  14873. <doc xml:space="preserve">the socket</doc>
  14874. <type name="Socket" c:type="SoupSocket*"/>
  14875. </instance-parameter>
  14876. <parameter name="buffer" transfer-ownership="none">
  14877. <doc xml:space="preserve">data to write</doc>
  14878. <array length="1" zero-terminated="0" c:type="gconstpointer">
  14879. <type name="guint8"/>
  14880. </array>
  14881. </parameter>
  14882. <parameter name="len" transfer-ownership="none">
  14883. <doc xml:space="preserve">size of @buffer, in bytes</doc>
  14884. <type name="gsize" c:type="gsize"/>
  14885. </parameter>
  14886. <parameter name="nwrote"
  14887. direction="out"
  14888. caller-allocates="0"
  14889. transfer-ownership="full">
  14890. <doc xml:space="preserve">on return, number of bytes written</doc>
  14891. <type name="gsize" c:type="gsize*"/>
  14892. </parameter>
  14893. <parameter name="cancellable"
  14894. transfer-ownership="none"
  14895. nullable="1"
  14896. allow-none="1">
  14897. <doc xml:space="preserve">a #GCancellable, or %NULL</doc>
  14898. <type name="Gio.Cancellable" c:type="GCancellable*"/>
  14899. </parameter>
  14900. </parameters>
  14901. </method>
  14902. <property name="async-context"
  14903. writable="1"
  14904. construct-only="1"
  14905. transfer-ownership="none">
  14906. <type name="gpointer" c:type="gpointer"/>
  14907. </property>
  14908. <property name="fd"
  14909. writable="1"
  14910. construct-only="1"
  14911. transfer-ownership="none">
  14912. <type name="gint" c:type="gint"/>
  14913. </property>
  14914. <property name="gsocket"
  14915. readable="0"
  14916. writable="1"
  14917. construct-only="1"
  14918. transfer-ownership="none">
  14919. <type name="Gio.Socket"/>
  14920. </property>
  14921. <property name="iostream"
  14922. readable="0"
  14923. writable="1"
  14924. construct-only="1"
  14925. transfer-ownership="none">
  14926. <type name="Gio.IOStream"/>
  14927. </property>
  14928. <property name="ipv6-only" writable="1" transfer-ownership="none">
  14929. <type name="gboolean" c:type="gboolean"/>
  14930. </property>
  14931. <property name="is-server" transfer-ownership="none">
  14932. <doc xml:space="preserve">Whether or not the socket is a server socket.
  14933. Note that for "ordinary" #SoupSockets this will be set for
  14934. both listening sockets and the sockets emitted by
  14935. #SoupSocket::new-connection, but for sockets created by
  14936. setting #SoupSocket:fd, it will only be set for listening
  14937. sockets.</doc>
  14938. <type name="gboolean" c:type="gboolean"/>
  14939. </property>
  14940. <property name="local-address"
  14941. writable="1"
  14942. construct-only="1"
  14943. transfer-ownership="none">
  14944. <type name="Address"/>
  14945. </property>
  14946. <property name="non-blocking" writable="1" transfer-ownership="none">
  14947. <doc xml:space="preserve">Whether or not the socket uses non-blocking I/O.
  14948. #SoupSocket's I/O methods are designed around the idea of
  14949. using a single codepath for both synchronous and
  14950. asynchronous I/O. If you want to read off a #SoupSocket,
  14951. the "correct" way to do it is to call soup_socket_read() or
  14952. soup_socket_read_until() repeatedly until you have read
  14953. everything you want. If it returns %SOUP_SOCKET_WOULD_BLOCK
  14954. at any point, stop reading and wait for it to emit the
  14955. #SoupSocket::readable signal. Then go back to the
  14956. reading-as-much-as-you-can loop. Likewise, for writing to a
  14957. #SoupSocket, you should call soup_socket_write() either
  14958. until you have written everything, or it returns
  14959. %SOUP_SOCKET_WOULD_BLOCK (in which case you wait for
  14960. #SoupSocket::writable and then go back into the loop).
  14961. Code written this way will work correctly with both
  14962. blocking and non-blocking sockets; blocking sockets will
  14963. simply never return %SOUP_SOCKET_WOULD_BLOCK, and so the
  14964. code that handles that case just won't get used for them.</doc>
  14965. <type name="gboolean" c:type="gboolean"/>
  14966. </property>
  14967. <property name="remote-address"
  14968. writable="1"
  14969. construct-only="1"
  14970. transfer-ownership="none">
  14971. <type name="Address"/>
  14972. </property>
  14973. <property name="socket-properties"
  14974. introspectable="0"
  14975. readable="0"
  14976. writable="1"
  14977. transfer-ownership="none">
  14978. <type/>
  14979. </property>
  14980. <property name="ssl-creds" writable="1" transfer-ownership="none">
  14981. <type name="gpointer" c:type="gpointer"/>
  14982. </property>
  14983. <property name="ssl-fallback"
  14984. writable="1"
  14985. construct-only="1"
  14986. transfer-ownership="none">
  14987. <type name="gboolean" c:type="gboolean"/>
  14988. </property>
  14989. <property name="ssl-strict"
  14990. writable="1"
  14991. construct-only="1"
  14992. transfer-ownership="none">
  14993. <type name="gboolean" c:type="gboolean"/>
  14994. </property>
  14995. <property name="timeout" writable="1" transfer-ownership="none">
  14996. <type name="guint" c:type="guint"/>
  14997. </property>
  14998. <property name="tls-certificate" transfer-ownership="none">
  14999. <type name="Gio.TlsCertificate"/>
  15000. </property>
  15001. <property name="tls-errors" transfer-ownership="none">
  15002. <type name="Gio.TlsCertificateFlags"/>
  15003. </property>
  15004. <property name="trusted-certificate" transfer-ownership="none">
  15005. <type name="gboolean" c:type="gboolean"/>
  15006. </property>
  15007. <property name="use-thread-context"
  15008. version="2.38"
  15009. writable="1"
  15010. construct-only="1"
  15011. transfer-ownership="none">
  15012. <doc xml:space="preserve">Use g_main_context_get_thread_default().</doc>
  15013. <type name="gboolean" c:type="gboolean"/>
  15014. </property>
  15015. <field name="parent">
  15016. <type name="GObject.Object" c:type="GObject"/>
  15017. </field>
  15018. <glib:signal name="disconnected" when="last">
  15019. <doc xml:space="preserve">Emitted when the socket is disconnected, for whatever
  15020. reason.</doc>
  15021. <return-value transfer-ownership="none">
  15022. <type name="none" c:type="void"/>
  15023. </return-value>
  15024. </glib:signal>
  15025. <glib:signal name="event" when="last" version="2.38">
  15026. <doc xml:space="preserve">Emitted when a network-related event occurs. See
  15027. #GSocketClient::event for more details.</doc>
  15028. <return-value transfer-ownership="none">
  15029. <type name="none" c:type="void"/>
  15030. </return-value>
  15031. <parameters>
  15032. <parameter name="event" transfer-ownership="none">
  15033. <doc xml:space="preserve">the event that occurred</doc>
  15034. <type name="Gio.SocketClientEvent"/>
  15035. </parameter>
  15036. <parameter name="connection" transfer-ownership="none">
  15037. <doc xml:space="preserve">the current connection state</doc>
  15038. <type name="Gio.IOStream"/>
  15039. </parameter>
  15040. </parameters>
  15041. </glib:signal>
  15042. <glib:signal name="new-connection" when="first">
  15043. <doc xml:space="preserve">Emitted when a listening socket (set up with
  15044. soup_socket_listen()) receives a new connection.
  15045. You must ref the @new if you want to keep it; otherwise it
  15046. will be destroyed after the signal is emitted.</doc>
  15047. <return-value transfer-ownership="none">
  15048. <type name="none" c:type="void"/>
  15049. </return-value>
  15050. <parameters>
  15051. <parameter name="new" transfer-ownership="none">
  15052. <doc xml:space="preserve">the new socket</doc>
  15053. <type name="Socket"/>
  15054. </parameter>
  15055. </parameters>
  15056. </glib:signal>
  15057. <glib:signal name="readable" when="last">
  15058. <doc xml:space="preserve">Emitted when an async socket is readable. See
  15059. soup_socket_read(), soup_socket_read_until() and
  15060. #SoupSocket:non-blocking.</doc>
  15061. <return-value transfer-ownership="none">
  15062. <type name="none" c:type="void"/>
  15063. </return-value>
  15064. </glib:signal>
  15065. <glib:signal name="writable" when="last">
  15066. <doc xml:space="preserve">Emitted when an async socket is writable. See
  15067. soup_socket_write() and #SoupSocket:non-blocking.</doc>
  15068. <return-value transfer-ownership="none">
  15069. <type name="none" c:type="void"/>
  15070. </return-value>
  15071. </glib:signal>
  15072. </class>
  15073. <callback name="SocketCallback" c:type="SoupSocketCallback">
  15074. <doc xml:space="preserve">The callback function passed to soup_socket_connect_async().</doc>
  15075. <return-value transfer-ownership="none">
  15076. <type name="none" c:type="void"/>
  15077. </return-value>
  15078. <parameters>
  15079. <parameter name="sock" transfer-ownership="none">
  15080. <doc xml:space="preserve">the #SoupSocket</doc>
  15081. <type name="Socket" c:type="SoupSocket*"/>
  15082. </parameter>
  15083. <parameter name="status" transfer-ownership="none">
  15084. <doc xml:space="preserve">an HTTP status code indicating success or failure</doc>
  15085. <type name="guint" c:type="guint"/>
  15086. </parameter>
  15087. <parameter name="user_data"
  15088. transfer-ownership="none"
  15089. nullable="1"
  15090. allow-none="1"
  15091. closure="2">
  15092. <doc xml:space="preserve">the data passed to soup_socket_connect_async()</doc>
  15093. <type name="gpointer" c:type="gpointer"/>
  15094. </parameter>
  15095. </parameters>
  15096. </callback>
  15097. <record name="SocketClass"
  15098. c:type="SoupSocketClass"
  15099. glib:is-gtype-struct-for="Socket">
  15100. <field name="parent_class">
  15101. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  15102. </field>
  15103. <field name="readable">
  15104. <callback name="readable">
  15105. <return-value transfer-ownership="none">
  15106. <type name="none" c:type="void"/>
  15107. </return-value>
  15108. <parameters>
  15109. <parameter name="sock" transfer-ownership="none">
  15110. <type name="Socket" c:type="SoupSocket*"/>
  15111. </parameter>
  15112. </parameters>
  15113. </callback>
  15114. </field>
  15115. <field name="writable">
  15116. <callback name="writable">
  15117. <return-value transfer-ownership="none">
  15118. <type name="none" c:type="void"/>
  15119. </return-value>
  15120. <parameters>
  15121. <parameter name="sock" transfer-ownership="none">
  15122. <type name="Socket" c:type="SoupSocket*"/>
  15123. </parameter>
  15124. </parameters>
  15125. </callback>
  15126. </field>
  15127. <field name="disconnected">
  15128. <callback name="disconnected">
  15129. <return-value transfer-ownership="none">
  15130. <type name="none" c:type="void"/>
  15131. </return-value>
  15132. <parameters>
  15133. <parameter name="sock" transfer-ownership="none">
  15134. <type name="Socket" c:type="SoupSocket*"/>
  15135. </parameter>
  15136. </parameters>
  15137. </callback>
  15138. </field>
  15139. <field name="new_connection">
  15140. <callback name="new_connection">
  15141. <return-value transfer-ownership="none">
  15142. <type name="none" c:type="void"/>
  15143. </return-value>
  15144. <parameters>
  15145. <parameter name="listener" transfer-ownership="none">
  15146. <type name="Socket" c:type="SoupSocket*"/>
  15147. </parameter>
  15148. <parameter name="new_sock" transfer-ownership="none">
  15149. <type name="Socket" c:type="SoupSocket*"/>
  15150. </parameter>
  15151. </parameters>
  15152. </callback>
  15153. </field>
  15154. <field name="_libsoup_reserved1" introspectable="0">
  15155. <callback name="_libsoup_reserved1">
  15156. <return-value transfer-ownership="none">
  15157. <type name="none" c:type="void"/>
  15158. </return-value>
  15159. </callback>
  15160. </field>
  15161. <field name="_libsoup_reserved2" introspectable="0">
  15162. <callback name="_libsoup_reserved2">
  15163. <return-value transfer-ownership="none">
  15164. <type name="none" c:type="void"/>
  15165. </return-value>
  15166. </callback>
  15167. </field>
  15168. <field name="_libsoup_reserved3" introspectable="0">
  15169. <callback name="_libsoup_reserved3">
  15170. <return-value transfer-ownership="none">
  15171. <type name="none" c:type="void"/>
  15172. </return-value>
  15173. </callback>
  15174. </field>
  15175. <field name="_libsoup_reserved4" introspectable="0">
  15176. <callback name="_libsoup_reserved4">
  15177. <return-value transfer-ownership="none">
  15178. <type name="none" c:type="void"/>
  15179. </return-value>
  15180. </callback>
  15181. </field>
  15182. </record>
  15183. <enumeration name="SocketIOStatus"
  15184. glib:type-name="SoupSocketIOStatus"
  15185. glib:get-type="soup_socket_io_status_get_type"
  15186. c:type="SoupSocketIOStatus">
  15187. <doc xml:space="preserve">Return value from the #SoupSocket IO methods.</doc>
  15188. <member name="ok" value="0" c:identifier="SOUP_SOCKET_OK" glib:nick="ok">
  15189. <doc xml:space="preserve">Success</doc>
  15190. </member>
  15191. <member name="would_block"
  15192. value="1"
  15193. c:identifier="SOUP_SOCKET_WOULD_BLOCK"
  15194. glib:nick="would-block">
  15195. <doc xml:space="preserve">Cannot read/write any more at this time</doc>
  15196. </member>
  15197. <member name="eof"
  15198. value="2"
  15199. c:identifier="SOUP_SOCKET_EOF"
  15200. glib:nick="eof">
  15201. <doc xml:space="preserve">End of file</doc>
  15202. </member>
  15203. <member name="error"
  15204. value="3"
  15205. c:identifier="SOUP_SOCKET_ERROR"
  15206. glib:nick="error">
  15207. <doc xml:space="preserve">Other error</doc>
  15208. </member>
  15209. </enumeration>
  15210. <enumeration name="Status"
  15211. glib:type-name="SoupStatus"
  15212. glib:get-type="soup_status_get_type"
  15213. c:type="SoupStatus">
  15214. <doc xml:space="preserve">These represent the known HTTP status code values, plus various
  15215. network and internal errors.
  15216. Note that no libsoup functions take or return this type directly;
  15217. any function that works with status codes will accept unrecognized
  15218. status codes as well.
  15219. Prior to 2.44 this type was called
  15220. &lt;literal&gt;SoupKnownStatusCode&lt;/literal&gt;, but the individual values
  15221. have always had the names they have now.</doc>
  15222. <member name="none"
  15223. value="0"
  15224. c:identifier="SOUP_STATUS_NONE"
  15225. glib:nick="none">
  15226. <doc xml:space="preserve">No status available. (Eg, the message has not
  15227. been sent yet)</doc>
  15228. </member>
  15229. <member name="cancelled"
  15230. value="1"
  15231. c:identifier="SOUP_STATUS_CANCELLED"
  15232. glib:nick="cancelled">
  15233. <doc xml:space="preserve">Message was cancelled locally</doc>
  15234. </member>
  15235. <member name="cant_resolve"
  15236. value="2"
  15237. c:identifier="SOUP_STATUS_CANT_RESOLVE"
  15238. glib:nick="cant-resolve">
  15239. <doc xml:space="preserve">Unable to resolve destination host name</doc>
  15240. </member>
  15241. <member name="cant_resolve_proxy"
  15242. value="3"
  15243. c:identifier="SOUP_STATUS_CANT_RESOLVE_PROXY"
  15244. glib:nick="cant-resolve-proxy">
  15245. <doc xml:space="preserve">Unable to resolve proxy host name</doc>
  15246. </member>
  15247. <member name="cant_connect"
  15248. value="4"
  15249. c:identifier="SOUP_STATUS_CANT_CONNECT"
  15250. glib:nick="cant-connect">
  15251. <doc xml:space="preserve">Unable to connect to remote host</doc>
  15252. </member>
  15253. <member name="cant_connect_proxy"
  15254. value="5"
  15255. c:identifier="SOUP_STATUS_CANT_CONNECT_PROXY"
  15256. glib:nick="cant-connect-proxy">
  15257. <doc xml:space="preserve">Unable to connect to proxy</doc>
  15258. </member>
  15259. <member name="ssl_failed"
  15260. value="6"
  15261. c:identifier="SOUP_STATUS_SSL_FAILED"
  15262. glib:nick="ssl-failed">
  15263. <doc xml:space="preserve">SSL/TLS negotiation failed</doc>
  15264. </member>
  15265. <member name="io_error"
  15266. value="7"
  15267. c:identifier="SOUP_STATUS_IO_ERROR"
  15268. glib:nick="io-error">
  15269. <doc xml:space="preserve">A network error occurred, or the other end
  15270. closed the connection unexpectedly</doc>
  15271. </member>
  15272. <member name="malformed"
  15273. value="8"
  15274. c:identifier="SOUP_STATUS_MALFORMED"
  15275. glib:nick="malformed">
  15276. <doc xml:space="preserve">Malformed data (usually a programmer error)</doc>
  15277. </member>
  15278. <member name="try_again"
  15279. value="9"
  15280. c:identifier="SOUP_STATUS_TRY_AGAIN"
  15281. glib:nick="try-again">
  15282. <doc xml:space="preserve">Used internally</doc>
  15283. </member>
  15284. <member name="too_many_redirects"
  15285. value="10"
  15286. c:identifier="SOUP_STATUS_TOO_MANY_REDIRECTS"
  15287. glib:nick="too-many-redirects">
  15288. <doc xml:space="preserve">There were too many redirections</doc>
  15289. </member>
  15290. <member name="tls_failed"
  15291. value="11"
  15292. c:identifier="SOUP_STATUS_TLS_FAILED"
  15293. glib:nick="tls-failed">
  15294. <doc xml:space="preserve">Used internally</doc>
  15295. </member>
  15296. <member name="continue"
  15297. value="100"
  15298. c:identifier="SOUP_STATUS_CONTINUE"
  15299. glib:nick="continue">
  15300. <doc xml:space="preserve">100 Continue (HTTP)</doc>
  15301. </member>
  15302. <member name="switching_protocols"
  15303. value="101"
  15304. c:identifier="SOUP_STATUS_SWITCHING_PROTOCOLS"
  15305. glib:nick="switching-protocols">
  15306. <doc xml:space="preserve">101 Switching Protocols (HTTP)</doc>
  15307. </member>
  15308. <member name="processing"
  15309. value="102"
  15310. c:identifier="SOUP_STATUS_PROCESSING"
  15311. glib:nick="processing">
  15312. <doc xml:space="preserve">102 Processing (WebDAV)</doc>
  15313. </member>
  15314. <member name="ok"
  15315. value="200"
  15316. c:identifier="SOUP_STATUS_OK"
  15317. glib:nick="ok">
  15318. <doc xml:space="preserve">200 Success (HTTP). Also used by many lower-level
  15319. soup routines to indicate success.</doc>
  15320. </member>
  15321. <member name="created"
  15322. value="201"
  15323. c:identifier="SOUP_STATUS_CREATED"
  15324. glib:nick="created">
  15325. <doc xml:space="preserve">201 Created (HTTP)</doc>
  15326. </member>
  15327. <member name="accepted"
  15328. value="202"
  15329. c:identifier="SOUP_STATUS_ACCEPTED"
  15330. glib:nick="accepted">
  15331. <doc xml:space="preserve">202 Accepted (HTTP)</doc>
  15332. </member>
  15333. <member name="non_authoritative"
  15334. value="203"
  15335. c:identifier="SOUP_STATUS_NON_AUTHORITATIVE"
  15336. glib:nick="non-authoritative">
  15337. <doc xml:space="preserve">203 Non-Authoritative Information
  15338. (HTTP)</doc>
  15339. </member>
  15340. <member name="no_content"
  15341. value="204"
  15342. c:identifier="SOUP_STATUS_NO_CONTENT"
  15343. glib:nick="no-content">
  15344. <doc xml:space="preserve">204 No Content (HTTP)</doc>
  15345. </member>
  15346. <member name="reset_content"
  15347. value="205"
  15348. c:identifier="SOUP_STATUS_RESET_CONTENT"
  15349. glib:nick="reset-content">
  15350. <doc xml:space="preserve">205 Reset Content (HTTP)</doc>
  15351. </member>
  15352. <member name="partial_content"
  15353. value="206"
  15354. c:identifier="SOUP_STATUS_PARTIAL_CONTENT"
  15355. glib:nick="partial-content">
  15356. <doc xml:space="preserve">206 Partial Content (HTTP)</doc>
  15357. </member>
  15358. <member name="multi_status"
  15359. value="207"
  15360. c:identifier="SOUP_STATUS_MULTI_STATUS"
  15361. glib:nick="multi-status">
  15362. <doc xml:space="preserve">207 Multi-Status (WebDAV)</doc>
  15363. </member>
  15364. <member name="multiple_choices"
  15365. value="300"
  15366. c:identifier="SOUP_STATUS_MULTIPLE_CHOICES"
  15367. glib:nick="multiple-choices">
  15368. <doc xml:space="preserve">300 Multiple Choices (HTTP)</doc>
  15369. </member>
  15370. <member name="moved_permanently"
  15371. value="301"
  15372. c:identifier="SOUP_STATUS_MOVED_PERMANENTLY"
  15373. glib:nick="moved-permanently">
  15374. <doc xml:space="preserve">301 Moved Permanently (HTTP)</doc>
  15375. </member>
  15376. <member name="found"
  15377. value="302"
  15378. c:identifier="SOUP_STATUS_FOUND"
  15379. glib:nick="found">
  15380. <doc xml:space="preserve">302 Found (HTTP)</doc>
  15381. </member>
  15382. <member name="moved_temporarily"
  15383. value="302"
  15384. c:identifier="SOUP_STATUS_MOVED_TEMPORARILY"
  15385. glib:nick="moved-temporarily">
  15386. <doc xml:space="preserve">302 Moved Temporarily (old name,
  15387. RFC 2068)</doc>
  15388. </member>
  15389. <member name="see_other"
  15390. value="303"
  15391. c:identifier="SOUP_STATUS_SEE_OTHER"
  15392. glib:nick="see-other">
  15393. <doc xml:space="preserve">303 See Other (HTTP)</doc>
  15394. </member>
  15395. <member name="not_modified"
  15396. value="304"
  15397. c:identifier="SOUP_STATUS_NOT_MODIFIED"
  15398. glib:nick="not-modified">
  15399. <doc xml:space="preserve">304 Not Modified (HTTP)</doc>
  15400. </member>
  15401. <member name="use_proxy"
  15402. value="305"
  15403. c:identifier="SOUP_STATUS_USE_PROXY"
  15404. glib:nick="use-proxy">
  15405. <doc xml:space="preserve">305 Use Proxy (HTTP)</doc>
  15406. </member>
  15407. <member name="not_appearing_in_this_protocol"
  15408. value="306"
  15409. c:identifier="SOUP_STATUS_NOT_APPEARING_IN_THIS_PROTOCOL"
  15410. glib:nick="not-appearing-in-this-protocol">
  15411. <doc xml:space="preserve">306 [Unused] (HTTP)</doc>
  15412. </member>
  15413. <member name="temporary_redirect"
  15414. value="307"
  15415. c:identifier="SOUP_STATUS_TEMPORARY_REDIRECT"
  15416. glib:nick="temporary-redirect">
  15417. <doc xml:space="preserve">307 Temporary Redirect (HTTP)</doc>
  15418. </member>
  15419. <member name="bad_request"
  15420. value="400"
  15421. c:identifier="SOUP_STATUS_BAD_REQUEST"
  15422. glib:nick="bad-request">
  15423. <doc xml:space="preserve">400 Bad Request (HTTP)</doc>
  15424. </member>
  15425. <member name="unauthorized"
  15426. value="401"
  15427. c:identifier="SOUP_STATUS_UNAUTHORIZED"
  15428. glib:nick="unauthorized">
  15429. <doc xml:space="preserve">401 Unauthorized (HTTP)</doc>
  15430. </member>
  15431. <member name="payment_required"
  15432. value="402"
  15433. c:identifier="SOUP_STATUS_PAYMENT_REQUIRED"
  15434. glib:nick="payment-required">
  15435. <doc xml:space="preserve">402 Payment Required (HTTP)</doc>
  15436. </member>
  15437. <member name="forbidden"
  15438. value="403"
  15439. c:identifier="SOUP_STATUS_FORBIDDEN"
  15440. glib:nick="forbidden">
  15441. <doc xml:space="preserve">403 Forbidden (HTTP)</doc>
  15442. </member>
  15443. <member name="not_found"
  15444. value="404"
  15445. c:identifier="SOUP_STATUS_NOT_FOUND"
  15446. glib:nick="not-found">
  15447. <doc xml:space="preserve">404 Not Found (HTTP)</doc>
  15448. </member>
  15449. <member name="method_not_allowed"
  15450. value="405"
  15451. c:identifier="SOUP_STATUS_METHOD_NOT_ALLOWED"
  15452. glib:nick="method-not-allowed">
  15453. <doc xml:space="preserve">405 Method Not Allowed (HTTP)</doc>
  15454. </member>
  15455. <member name="not_acceptable"
  15456. value="406"
  15457. c:identifier="SOUP_STATUS_NOT_ACCEPTABLE"
  15458. glib:nick="not-acceptable">
  15459. <doc xml:space="preserve">406 Not Acceptable (HTTP)</doc>
  15460. </member>
  15461. <member name="proxy_authentication_required"
  15462. value="407"
  15463. c:identifier="SOUP_STATUS_PROXY_AUTHENTICATION_REQUIRED"
  15464. glib:nick="proxy-authentication-required">
  15465. <doc xml:space="preserve">407 Proxy Authentication
  15466. Required (HTTP)</doc>
  15467. </member>
  15468. <member name="proxy_unauthorized"
  15469. value="407"
  15470. c:identifier="SOUP_STATUS_PROXY_UNAUTHORIZED"
  15471. glib:nick="proxy-unauthorized">
  15472. <doc xml:space="preserve">shorter alias for
  15473. %SOUP_STATUS_PROXY_AUTHENTICATION_REQUIRED</doc>
  15474. </member>
  15475. <member name="request_timeout"
  15476. value="408"
  15477. c:identifier="SOUP_STATUS_REQUEST_TIMEOUT"
  15478. glib:nick="request-timeout">
  15479. <doc xml:space="preserve">408 Request Timeout (HTTP)</doc>
  15480. </member>
  15481. <member name="conflict"
  15482. value="409"
  15483. c:identifier="SOUP_STATUS_CONFLICT"
  15484. glib:nick="conflict">
  15485. <doc xml:space="preserve">409 Conflict (HTTP)</doc>
  15486. </member>
  15487. <member name="gone"
  15488. value="410"
  15489. c:identifier="SOUP_STATUS_GONE"
  15490. glib:nick="gone">
  15491. <doc xml:space="preserve">410 Gone (HTTP)</doc>
  15492. </member>
  15493. <member name="length_required"
  15494. value="411"
  15495. c:identifier="SOUP_STATUS_LENGTH_REQUIRED"
  15496. glib:nick="length-required">
  15497. <doc xml:space="preserve">411 Length Required (HTTP)</doc>
  15498. </member>
  15499. <member name="precondition_failed"
  15500. value="412"
  15501. c:identifier="SOUP_STATUS_PRECONDITION_FAILED"
  15502. glib:nick="precondition-failed">
  15503. <doc xml:space="preserve">412 Precondition Failed (HTTP)</doc>
  15504. </member>
  15505. <member name="request_entity_too_large"
  15506. value="413"
  15507. c:identifier="SOUP_STATUS_REQUEST_ENTITY_TOO_LARGE"
  15508. glib:nick="request-entity-too-large">
  15509. <doc xml:space="preserve">413 Request Entity Too Large
  15510. (HTTP)</doc>
  15511. </member>
  15512. <member name="request_uri_too_long"
  15513. value="414"
  15514. c:identifier="SOUP_STATUS_REQUEST_URI_TOO_LONG"
  15515. glib:nick="request-uri-too-long">
  15516. <doc xml:space="preserve">414 Request-URI Too Long (HTTP)</doc>
  15517. </member>
  15518. <member name="unsupported_media_type"
  15519. value="415"
  15520. c:identifier="SOUP_STATUS_UNSUPPORTED_MEDIA_TYPE"
  15521. glib:nick="unsupported-media-type">
  15522. <doc xml:space="preserve">415 Unsupported Media Type
  15523. (HTTP)</doc>
  15524. </member>
  15525. <member name="requested_range_not_satisfiable"
  15526. value="416"
  15527. c:identifier="SOUP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE"
  15528. glib:nick="requested-range-not-satisfiable">
  15529. <doc xml:space="preserve">416 Requested Range
  15530. Not Satisfiable (HTTP)</doc>
  15531. </member>
  15532. <member name="invalid_range"
  15533. value="416"
  15534. c:identifier="SOUP_STATUS_INVALID_RANGE"
  15535. glib:nick="invalid-range">
  15536. <doc xml:space="preserve">shorter alias for
  15537. %SOUP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE</doc>
  15538. </member>
  15539. <member name="expectation_failed"
  15540. value="417"
  15541. c:identifier="SOUP_STATUS_EXPECTATION_FAILED"
  15542. glib:nick="expectation-failed">
  15543. <doc xml:space="preserve">417 Expectation Failed (HTTP)</doc>
  15544. </member>
  15545. <member name="unprocessable_entity"
  15546. value="422"
  15547. c:identifier="SOUP_STATUS_UNPROCESSABLE_ENTITY"
  15548. glib:nick="unprocessable-entity">
  15549. <doc xml:space="preserve">422 Unprocessable Entity
  15550. (WebDAV)</doc>
  15551. </member>
  15552. <member name="locked"
  15553. value="423"
  15554. c:identifier="SOUP_STATUS_LOCKED"
  15555. glib:nick="locked">
  15556. <doc xml:space="preserve">423 Locked (WebDAV)</doc>
  15557. </member>
  15558. <member name="failed_dependency"
  15559. value="424"
  15560. c:identifier="SOUP_STATUS_FAILED_DEPENDENCY"
  15561. glib:nick="failed-dependency">
  15562. <doc xml:space="preserve">424 Failed Dependency (WebDAV)</doc>
  15563. </member>
  15564. <member name="internal_server_error"
  15565. value="500"
  15566. c:identifier="SOUP_STATUS_INTERNAL_SERVER_ERROR"
  15567. glib:nick="internal-server-error">
  15568. <doc xml:space="preserve">500 Internal Server Error
  15569. (HTTP)</doc>
  15570. </member>
  15571. <member name="not_implemented"
  15572. value="501"
  15573. c:identifier="SOUP_STATUS_NOT_IMPLEMENTED"
  15574. glib:nick="not-implemented">
  15575. <doc xml:space="preserve">501 Not Implemented (HTTP)</doc>
  15576. </member>
  15577. <member name="bad_gateway"
  15578. value="502"
  15579. c:identifier="SOUP_STATUS_BAD_GATEWAY"
  15580. glib:nick="bad-gateway">
  15581. <doc xml:space="preserve">502 Bad Gateway (HTTP)</doc>
  15582. </member>
  15583. <member name="service_unavailable"
  15584. value="503"
  15585. c:identifier="SOUP_STATUS_SERVICE_UNAVAILABLE"
  15586. glib:nick="service-unavailable">
  15587. <doc xml:space="preserve">503 Service Unavailable (HTTP)</doc>
  15588. </member>
  15589. <member name="gateway_timeout"
  15590. value="504"
  15591. c:identifier="SOUP_STATUS_GATEWAY_TIMEOUT"
  15592. glib:nick="gateway-timeout">
  15593. <doc xml:space="preserve">504 Gateway Timeout (HTTP)</doc>
  15594. </member>
  15595. <member name="http_version_not_supported"
  15596. value="505"
  15597. c:identifier="SOUP_STATUS_HTTP_VERSION_NOT_SUPPORTED"
  15598. glib:nick="http-version-not-supported">
  15599. <doc xml:space="preserve">505 HTTP Version Not
  15600. Supported (HTTP)</doc>
  15601. </member>
  15602. <member name="insufficient_storage"
  15603. value="507"
  15604. c:identifier="SOUP_STATUS_INSUFFICIENT_STORAGE"
  15605. glib:nick="insufficient-storage">
  15606. <doc xml:space="preserve">507 Insufficient Storage
  15607. (WebDAV)</doc>
  15608. </member>
  15609. <member name="not_extended"
  15610. value="510"
  15611. c:identifier="SOUP_STATUS_NOT_EXTENDED"
  15612. glib:nick="not-extended">
  15613. <doc xml:space="preserve">510 Not Extended (RFC 2774)</doc>
  15614. </member>
  15615. <function name="get_phrase" c:identifier="soup_status_get_phrase">
  15616. <doc xml:space="preserve">Looks up the stock HTTP description of @status_code. This is used
  15617. by soup_message_set_status() to get the correct text to go with a
  15618. given status code.
  15619. &lt;emphasis&gt;There is no reason for you to ever use this
  15620. function.&lt;/emphasis&gt; If you wanted the textual description for the
  15621. #SoupMessage:status_code of a given #SoupMessage, you should just
  15622. look at the message's #SoupMessage:reason_phrase. However, you
  15623. should only do that for use in debugging messages; HTTP reason
  15624. phrases are not localized, and are not generally very descriptive
  15625. anyway, and so they should never be presented to the user directly.
  15626. Instead, you should create you own error messages based on the
  15627. status code, and on what you were trying to do.</doc>
  15628. <return-value transfer-ownership="none">
  15629. <doc xml:space="preserve">the (terse, English) description of @status_code</doc>
  15630. <type name="utf8" c:type="const char*"/>
  15631. </return-value>
  15632. <parameters>
  15633. <parameter name="status_code" transfer-ownership="none">
  15634. <doc xml:space="preserve">an HTTP status code</doc>
  15635. <type name="guint" c:type="guint"/>
  15636. </parameter>
  15637. </parameters>
  15638. </function>
  15639. <function name="proxify"
  15640. c:identifier="soup_status_proxify"
  15641. version="2.26">
  15642. <doc xml:space="preserve">Turns %SOUP_STATUS_CANT_RESOLVE into
  15643. %SOUP_STATUS_CANT_RESOLVE_PROXY and %SOUP_STATUS_CANT_CONNECT into
  15644. %SOUP_STATUS_CANT_CONNECT_PROXY. Other status codes are passed
  15645. through unchanged.</doc>
  15646. <return-value transfer-ownership="none">
  15647. <doc xml:space="preserve">the "proxified" equivalent of @status_code.</doc>
  15648. <type name="guint" c:type="guint"/>
  15649. </return-value>
  15650. <parameters>
  15651. <parameter name="status_code" transfer-ownership="none">
  15652. <doc xml:space="preserve">a status code</doc>
  15653. <type name="guint" c:type="guint"/>
  15654. </parameter>
  15655. </parameters>
  15656. </function>
  15657. </enumeration>
  15658. <enumeration name="TLDError"
  15659. version="2.40"
  15660. glib:type-name="SoupTLDError"
  15661. glib:get-type="soup_tld_error_get_type"
  15662. c:type="SoupTLDError"
  15663. glib:error-domain="soup_tld_error_quark">
  15664. <doc xml:space="preserve">Error codes for %SOUP_TLD_ERROR.</doc>
  15665. <member name="invalid_hostname"
  15666. value="0"
  15667. c:identifier="SOUP_TLD_ERROR_INVALID_HOSTNAME"
  15668. glib:nick="invalid-hostname">
  15669. <doc xml:space="preserve">A hostname was syntactically
  15670. invalid.</doc>
  15671. </member>
  15672. <member name="is_ip_address"
  15673. value="1"
  15674. c:identifier="SOUP_TLD_ERROR_IS_IP_ADDRESS"
  15675. glib:nick="is-ip-address">
  15676. <doc xml:space="preserve">The passed-in "hostname" was
  15677. actually an IP address (and thus has no base domain or
  15678. public suffix).</doc>
  15679. </member>
  15680. <member name="not_enough_domains"
  15681. value="2"
  15682. c:identifier="SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS"
  15683. glib:nick="not-enough-domains">
  15684. <doc xml:space="preserve">The passed-in hostname
  15685. did not have enough components. Eg, calling
  15686. soup_tld_get_base_domain() on &lt;literal&gt;"co.uk"&lt;/literal&gt;.</doc>
  15687. </member>
  15688. <member name="no_base_domain"
  15689. value="3"
  15690. c:identifier="SOUP_TLD_ERROR_NO_BASE_DOMAIN"
  15691. glib:nick="no-base-domain">
  15692. <doc xml:space="preserve">The passed-in hostname has
  15693. no recognized public suffix.</doc>
  15694. </member>
  15695. <function name="quark" c:identifier="soup_tld_error_quark">
  15696. <return-value transfer-ownership="none">
  15697. <type name="GLib.Quark" c:type="GQuark"/>
  15698. </return-value>
  15699. </function>
  15700. </enumeration>
  15701. <constant name="TYPES_H" value="1" c:type="SOUP_TYPES_H">
  15702. <type name="gint" c:type="gint"/>
  15703. </constant>
  15704. <record name="URI"
  15705. c:type="SoupURI"
  15706. glib:type-name="SoupURI"
  15707. glib:get-type="soup_uri_get_type"
  15708. c:symbol-prefix="uri">
  15709. <doc xml:space="preserve">A #SoupURI represents a (parsed) URI. #SoupURI supports RFC 3986
  15710. (URI Generic Syntax), and can parse any valid URI. However, libsoup
  15711. only uses "http" and "https" URIs internally; You can use
  15712. SOUP_URI_VALID_FOR_HTTP() to test if a #SoupURI is a valid HTTP
  15713. URI.
  15714. @scheme will always be set in any URI. It is an interned string and
  15715. is always all lowercase. (If you parse a URI with a non-lowercase
  15716. scheme, it will be converted to lowercase.) The macros
  15717. %SOUP_URI_SCHEME_HTTP and %SOUP_URI_SCHEME_HTTPS provide the
  15718. interned values for "http" and "https" and can be compared against
  15719. URI @scheme values.
  15720. @user and @password are parsed as defined in the older URI specs
  15721. (ie, separated by a colon; RFC 3986 only talks about a single
  15722. "userinfo" field). Note that @password is not included in the
  15723. output of soup_uri_to_string(). libsoup does not normally use these
  15724. fields; authentication is handled via #SoupSession signals.
  15725. @host contains the hostname, and @port the port specified in the
  15726. URI. If the URI doesn't contain a hostname, @host will be %NULL,
  15727. and if it doesn't specify a port, @port may be 0. However, for
  15728. "http" and "https" URIs, @host is guaranteed to be non-%NULL
  15729. (trying to parse an http URI with no @host will return %NULL), and
  15730. @port will always be non-0 (because libsoup knows the default value
  15731. to use when it is not specified in the URI).
  15732. @path is always non-%NULL. For http/https URIs, @path will never be
  15733. an empty string either; if the input URI has no path, the parsed
  15734. #SoupURI will have a @path of "/".
  15735. @query and @fragment are optional for all URI types.
  15736. soup_form_decode() may be useful for parsing @query.
  15737. Note that @path, @query, and @fragment may contain
  15738. %&lt;!-- --&gt;-encoded characters. soup_uri_new() calls
  15739. soup_uri_normalize() on them, but not soup_uri_decode(). This is
  15740. necessary to ensure that soup_uri_to_string() will generate a URI
  15741. that has exactly the same meaning as the original. (In theory,
  15742. #SoupURI should leave @user, @password, and @host partially-encoded
  15743. as well, but this would be more annoying than useful.)</doc>
  15744. <field name="scheme" writable="1">
  15745. <doc xml:space="preserve">the URI scheme (eg, "http")</doc>
  15746. <type name="utf8" c:type="const char*"/>
  15747. </field>
  15748. <field name="user" writable="1">
  15749. <doc xml:space="preserve">a username, or %NULL</doc>
  15750. <type name="utf8" c:type="char*"/>
  15751. </field>
  15752. <field name="password" writable="1">
  15753. <doc xml:space="preserve">a password, or %NULL</doc>
  15754. <type name="utf8" c:type="char*"/>
  15755. </field>
  15756. <field name="host" writable="1">
  15757. <doc xml:space="preserve">the hostname or IP address</doc>
  15758. <type name="utf8" c:type="char*"/>
  15759. </field>
  15760. <field name="port" writable="1">
  15761. <doc xml:space="preserve">the port number on @host</doc>
  15762. <type name="guint" c:type="guint"/>
  15763. </field>
  15764. <field name="path" writable="1">
  15765. <doc xml:space="preserve">the path on @host</doc>
  15766. <type name="utf8" c:type="char*"/>
  15767. </field>
  15768. <field name="query" writable="1">
  15769. <doc xml:space="preserve">a query for @path, or %NULL</doc>
  15770. <type name="utf8" c:type="char*"/>
  15771. </field>
  15772. <field name="fragment" writable="1">
  15773. <doc xml:space="preserve">a fragment identifier within @path, or %NULL</doc>
  15774. <type name="utf8" c:type="char*"/>
  15775. </field>
  15776. <constructor name="new" c:identifier="soup_uri_new">
  15777. <doc xml:space="preserve">Parses an absolute URI.
  15778. You can also pass %NULL for @uri_string if you want to get back an
  15779. "empty" #SoupURI that you can fill in by hand. (You will need to
  15780. call at least soup_uri_set_scheme() and soup_uri_set_path(), since
  15781. those fields are required.)</doc>
  15782. <return-value transfer-ownership="full" nullable="1">
  15783. <doc xml:space="preserve">a #SoupURI, or %NULL if the given string
  15784. was found to be invalid.</doc>
  15785. <type name="URI" c:type="SoupURI*"/>
  15786. </return-value>
  15787. <parameters>
  15788. <parameter name="uri_string"
  15789. transfer-ownership="none"
  15790. nullable="1"
  15791. allow-none="1">
  15792. <doc xml:space="preserve">a URI</doc>
  15793. <type name="utf8" c:type="const char*"/>
  15794. </parameter>
  15795. </parameters>
  15796. </constructor>
  15797. <method name="copy" c:identifier="soup_uri_copy">
  15798. <doc xml:space="preserve">Copies @uri</doc>
  15799. <return-value transfer-ownership="full">
  15800. <doc xml:space="preserve">a copy of @uri, which must be freed with soup_uri_free()</doc>
  15801. <type name="URI" c:type="SoupURI*"/>
  15802. </return-value>
  15803. <parameters>
  15804. <instance-parameter name="uri" transfer-ownership="none">
  15805. <doc xml:space="preserve">a #SoupURI</doc>
  15806. <type name="URI" c:type="SoupURI*"/>
  15807. </instance-parameter>
  15808. </parameters>
  15809. </method>
  15810. <method name="copy_host"
  15811. c:identifier="soup_uri_copy_host"
  15812. version="2.28">
  15813. <doc xml:space="preserve">Makes a copy of @uri, considering only the protocol, host, and port</doc>
  15814. <return-value transfer-ownership="full">
  15815. <doc xml:space="preserve">the new #SoupURI</doc>
  15816. <type name="URI" c:type="SoupURI*"/>
  15817. </return-value>
  15818. <parameters>
  15819. <instance-parameter name="uri" transfer-ownership="none">
  15820. <doc xml:space="preserve">a #SoupURI</doc>
  15821. <type name="URI" c:type="SoupURI*"/>
  15822. </instance-parameter>
  15823. </parameters>
  15824. </method>
  15825. <method name="equal" c:identifier="soup_uri_equal">
  15826. <doc xml:space="preserve">Tests whether or not @uri1 and @uri2 are equal in all parts</doc>
  15827. <return-value transfer-ownership="none">
  15828. <doc xml:space="preserve">%TRUE or %FALSE</doc>
  15829. <type name="gboolean" c:type="gboolean"/>
  15830. </return-value>
  15831. <parameters>
  15832. <instance-parameter name="uri1" transfer-ownership="none">
  15833. <doc xml:space="preserve">a #SoupURI</doc>
  15834. <type name="URI" c:type="SoupURI*"/>
  15835. </instance-parameter>
  15836. <parameter name="uri2" transfer-ownership="none">
  15837. <doc xml:space="preserve">another #SoupURI</doc>
  15838. <type name="URI" c:type="SoupURI*"/>
  15839. </parameter>
  15840. </parameters>
  15841. </method>
  15842. <method name="free" c:identifier="soup_uri_free">
  15843. <doc xml:space="preserve">Frees @uri.</doc>
  15844. <return-value transfer-ownership="none">
  15845. <type name="none" c:type="void"/>
  15846. </return-value>
  15847. <parameters>
  15848. <instance-parameter name="uri" transfer-ownership="none">
  15849. <doc xml:space="preserve">a #SoupURI</doc>
  15850. <type name="URI" c:type="SoupURI*"/>
  15851. </instance-parameter>
  15852. </parameters>
  15853. </method>
  15854. <method name="get_fragment"
  15855. c:identifier="soup_uri_get_fragment"
  15856. version="2.32">
  15857. <doc xml:space="preserve">Gets @uri's fragment.</doc>
  15858. <return-value transfer-ownership="none">
  15859. <doc xml:space="preserve">@uri's fragment.</doc>
  15860. <type name="utf8" c:type="const char*"/>
  15861. </return-value>
  15862. <parameters>
  15863. <instance-parameter name="uri" transfer-ownership="none">
  15864. <doc xml:space="preserve">a #SoupURI</doc>
  15865. <type name="URI" c:type="SoupURI*"/>
  15866. </instance-parameter>
  15867. </parameters>
  15868. </method>
  15869. <method name="get_host" c:identifier="soup_uri_get_host" version="2.32">
  15870. <doc xml:space="preserve">Gets @uri's host.</doc>
  15871. <return-value transfer-ownership="none">
  15872. <doc xml:space="preserve">@uri's host.</doc>
  15873. <type name="utf8" c:type="const char*"/>
  15874. </return-value>
  15875. <parameters>
  15876. <instance-parameter name="uri" transfer-ownership="none">
  15877. <doc xml:space="preserve">a #SoupURI</doc>
  15878. <type name="URI" c:type="SoupURI*"/>
  15879. </instance-parameter>
  15880. </parameters>
  15881. </method>
  15882. <method name="get_password"
  15883. c:identifier="soup_uri_get_password"
  15884. version="2.32">
  15885. <doc xml:space="preserve">Gets @uri's password.</doc>
  15886. <return-value transfer-ownership="none">
  15887. <doc xml:space="preserve">@uri's password.</doc>
  15888. <type name="utf8" c:type="const char*"/>
  15889. </return-value>
  15890. <parameters>
  15891. <instance-parameter name="uri" transfer-ownership="none">
  15892. <doc xml:space="preserve">a #SoupURI</doc>
  15893. <type name="URI" c:type="SoupURI*"/>
  15894. </instance-parameter>
  15895. </parameters>
  15896. </method>
  15897. <method name="get_path" c:identifier="soup_uri_get_path" version="2.32">
  15898. <doc xml:space="preserve">Gets @uri's path.</doc>
  15899. <return-value transfer-ownership="none">
  15900. <doc xml:space="preserve">@uri's path.</doc>
  15901. <type name="utf8" c:type="const char*"/>
  15902. </return-value>
  15903. <parameters>
  15904. <instance-parameter name="uri" transfer-ownership="none">
  15905. <doc xml:space="preserve">a #SoupURI</doc>
  15906. <type name="URI" c:type="SoupURI*"/>
  15907. </instance-parameter>
  15908. </parameters>
  15909. </method>
  15910. <method name="get_port" c:identifier="soup_uri_get_port" version="2.32">
  15911. <doc xml:space="preserve">Gets @uri's port.</doc>
  15912. <return-value transfer-ownership="none">
  15913. <doc xml:space="preserve">@uri's port.</doc>
  15914. <type name="guint" c:type="guint"/>
  15915. </return-value>
  15916. <parameters>
  15917. <instance-parameter name="uri" transfer-ownership="none">
  15918. <doc xml:space="preserve">a #SoupURI</doc>
  15919. <type name="URI" c:type="SoupURI*"/>
  15920. </instance-parameter>
  15921. </parameters>
  15922. </method>
  15923. <method name="get_query"
  15924. c:identifier="soup_uri_get_query"
  15925. version="2.32">
  15926. <doc xml:space="preserve">Gets @uri's query.</doc>
  15927. <return-value transfer-ownership="none">
  15928. <doc xml:space="preserve">@uri's query.</doc>
  15929. <type name="utf8" c:type="const char*"/>
  15930. </return-value>
  15931. <parameters>
  15932. <instance-parameter name="uri" transfer-ownership="none">
  15933. <doc xml:space="preserve">a #SoupURI</doc>
  15934. <type name="URI" c:type="SoupURI*"/>
  15935. </instance-parameter>
  15936. </parameters>
  15937. </method>
  15938. <method name="get_scheme"
  15939. c:identifier="soup_uri_get_scheme"
  15940. version="2.32">
  15941. <doc xml:space="preserve">Gets @uri's scheme.</doc>
  15942. <return-value transfer-ownership="none">
  15943. <doc xml:space="preserve">@uri's scheme.</doc>
  15944. <type name="utf8" c:type="const char*"/>
  15945. </return-value>
  15946. <parameters>
  15947. <instance-parameter name="uri" transfer-ownership="none">
  15948. <doc xml:space="preserve">a #SoupURI</doc>
  15949. <type name="URI" c:type="SoupURI*"/>
  15950. </instance-parameter>
  15951. </parameters>
  15952. </method>
  15953. <method name="get_user" c:identifier="soup_uri_get_user" version="2.32">
  15954. <doc xml:space="preserve">Gets @uri's user.</doc>
  15955. <return-value transfer-ownership="none">
  15956. <doc xml:space="preserve">@uri's user.</doc>
  15957. <type name="utf8" c:type="const char*"/>
  15958. </return-value>
  15959. <parameters>
  15960. <instance-parameter name="uri" transfer-ownership="none">
  15961. <doc xml:space="preserve">a #SoupURI</doc>
  15962. <type name="URI" c:type="SoupURI*"/>
  15963. </instance-parameter>
  15964. </parameters>
  15965. </method>
  15966. <method name="host_equal"
  15967. c:identifier="soup_uri_host_equal"
  15968. version="2.28">
  15969. <doc xml:space="preserve">Compares @v1 and @v2, considering only the scheme, host, and port.</doc>
  15970. <return-value transfer-ownership="none">
  15971. <doc xml:space="preserve">whether or not the URIs are equal in scheme, host,
  15972. and port.</doc>
  15973. <type name="gboolean" c:type="gboolean"/>
  15974. </return-value>
  15975. <parameters>
  15976. <instance-parameter name="v1" transfer-ownership="none">
  15977. <doc xml:space="preserve">a #SoupURI with a non-%NULL @host member</doc>
  15978. <type name="URI" c:type="gconstpointer"/>
  15979. </instance-parameter>
  15980. <parameter name="v2" transfer-ownership="none">
  15981. <doc xml:space="preserve">a #SoupURI with a non-%NULL @host member</doc>
  15982. <type name="URI" c:type="gconstpointer"/>
  15983. </parameter>
  15984. </parameters>
  15985. </method>
  15986. <method name="host_hash"
  15987. c:identifier="soup_uri_host_hash"
  15988. version="2.28">
  15989. <doc xml:space="preserve">Hashes @key, considering only the scheme, host, and port.</doc>
  15990. <return-value transfer-ownership="none">
  15991. <doc xml:space="preserve">a hash</doc>
  15992. <type name="guint" c:type="guint"/>
  15993. </return-value>
  15994. <parameters>
  15995. <instance-parameter name="key" transfer-ownership="none">
  15996. <doc xml:space="preserve">a #SoupURI with a non-%NULL @host member</doc>
  15997. <type name="URI" c:type="gconstpointer"/>
  15998. </instance-parameter>
  15999. </parameters>
  16000. </method>
  16001. <method name="new_with_base" c:identifier="soup_uri_new_with_base">
  16002. <doc xml:space="preserve">Parses @uri_string relative to @base.</doc>
  16003. <return-value transfer-ownership="full">
  16004. <doc xml:space="preserve">a parsed #SoupURI.</doc>
  16005. <type name="URI" c:type="SoupURI*"/>
  16006. </return-value>
  16007. <parameters>
  16008. <instance-parameter name="base" transfer-ownership="none">
  16009. <doc xml:space="preserve">a base URI</doc>
  16010. <type name="URI" c:type="SoupURI*"/>
  16011. </instance-parameter>
  16012. <parameter name="uri_string" transfer-ownership="none">
  16013. <doc xml:space="preserve">the URI</doc>
  16014. <type name="utf8" c:type="const char*"/>
  16015. </parameter>
  16016. </parameters>
  16017. </method>
  16018. <method name="set_fragment" c:identifier="soup_uri_set_fragment">
  16019. <doc xml:space="preserve">Sets @uri's fragment to @fragment.</doc>
  16020. <return-value transfer-ownership="none">
  16021. <type name="none" c:type="void"/>
  16022. </return-value>
  16023. <parameters>
  16024. <instance-parameter name="uri" transfer-ownership="none">
  16025. <doc xml:space="preserve">a #SoupURI</doc>
  16026. <type name="URI" c:type="SoupURI*"/>
  16027. </instance-parameter>
  16028. <parameter name="fragment"
  16029. transfer-ownership="none"
  16030. nullable="1"
  16031. allow-none="1">
  16032. <doc xml:space="preserve">the fragment</doc>
  16033. <type name="utf8" c:type="const char*"/>
  16034. </parameter>
  16035. </parameters>
  16036. </method>
  16037. <method name="set_host" c:identifier="soup_uri_set_host">
  16038. <doc xml:space="preserve">Sets @uri's host to @host.
  16039. If @host is an IPv6 IP address, it should not include the brackets
  16040. required by the URI syntax; they will be added automatically when
  16041. converting @uri to a string.
  16042. http and https URIs should not have a %NULL @host.</doc>
  16043. <return-value transfer-ownership="none">
  16044. <type name="none" c:type="void"/>
  16045. </return-value>
  16046. <parameters>
  16047. <instance-parameter name="uri" transfer-ownership="none">
  16048. <doc xml:space="preserve">a #SoupURI</doc>
  16049. <type name="URI" c:type="SoupURI*"/>
  16050. </instance-parameter>
  16051. <parameter name="host"
  16052. transfer-ownership="none"
  16053. nullable="1"
  16054. allow-none="1">
  16055. <doc xml:space="preserve">the hostname or IP address, or %NULL</doc>
  16056. <type name="utf8" c:type="const char*"/>
  16057. </parameter>
  16058. </parameters>
  16059. </method>
  16060. <method name="set_password" c:identifier="soup_uri_set_password">
  16061. <doc xml:space="preserve">Sets @uri's password to @password.</doc>
  16062. <return-value transfer-ownership="none">
  16063. <type name="none" c:type="void"/>
  16064. </return-value>
  16065. <parameters>
  16066. <instance-parameter name="uri" transfer-ownership="none">
  16067. <doc xml:space="preserve">a #SoupURI</doc>
  16068. <type name="URI" c:type="SoupURI*"/>
  16069. </instance-parameter>
  16070. <parameter name="password"
  16071. transfer-ownership="none"
  16072. nullable="1"
  16073. allow-none="1">
  16074. <doc xml:space="preserve">the password, or %NULL</doc>
  16075. <type name="utf8" c:type="const char*"/>
  16076. </parameter>
  16077. </parameters>
  16078. </method>
  16079. <method name="set_path" c:identifier="soup_uri_set_path">
  16080. <doc xml:space="preserve">Sets @uri's path to @path.</doc>
  16081. <return-value transfer-ownership="none">
  16082. <type name="none" c:type="void"/>
  16083. </return-value>
  16084. <parameters>
  16085. <instance-parameter name="uri" transfer-ownership="none">
  16086. <doc xml:space="preserve">a #SoupURI</doc>
  16087. <type name="URI" c:type="SoupURI*"/>
  16088. </instance-parameter>
  16089. <parameter name="path" transfer-ownership="none">
  16090. <doc xml:space="preserve">the non-%NULL path</doc>
  16091. <type name="utf8" c:type="const char*"/>
  16092. </parameter>
  16093. </parameters>
  16094. </method>
  16095. <method name="set_port" c:identifier="soup_uri_set_port">
  16096. <doc xml:space="preserve">Sets @uri's port to @port. If @port is 0, @uri will not have an
  16097. explicitly-specified port.</doc>
  16098. <return-value transfer-ownership="none">
  16099. <type name="none" c:type="void"/>
  16100. </return-value>
  16101. <parameters>
  16102. <instance-parameter name="uri" transfer-ownership="none">
  16103. <doc xml:space="preserve">a #SoupURI</doc>
  16104. <type name="URI" c:type="SoupURI*"/>
  16105. </instance-parameter>
  16106. <parameter name="port" transfer-ownership="none">
  16107. <doc xml:space="preserve">the port, or 0</doc>
  16108. <type name="guint" c:type="guint"/>
  16109. </parameter>
  16110. </parameters>
  16111. </method>
  16112. <method name="set_query" c:identifier="soup_uri_set_query">
  16113. <doc xml:space="preserve">Sets @uri's query to @query.</doc>
  16114. <return-value transfer-ownership="none">
  16115. <type name="none" c:type="void"/>
  16116. </return-value>
  16117. <parameters>
  16118. <instance-parameter name="uri" transfer-ownership="none">
  16119. <doc xml:space="preserve">a #SoupURI</doc>
  16120. <type name="URI" c:type="SoupURI*"/>
  16121. </instance-parameter>
  16122. <parameter name="query"
  16123. transfer-ownership="none"
  16124. nullable="1"
  16125. allow-none="1">
  16126. <doc xml:space="preserve">the query</doc>
  16127. <type name="utf8" c:type="const char*"/>
  16128. </parameter>
  16129. </parameters>
  16130. </method>
  16131. <method name="set_query_from_fields"
  16132. c:identifier="soup_uri_set_query_from_fields"
  16133. introspectable="0">
  16134. <doc xml:space="preserve">Sets @uri's query to the result of encoding the given form fields
  16135. and values according to the * HTML form rules. See
  16136. soup_form_encode() for more information.</doc>
  16137. <return-value transfer-ownership="none">
  16138. <type name="none" c:type="void"/>
  16139. </return-value>
  16140. <parameters>
  16141. <instance-parameter name="uri" transfer-ownership="none">
  16142. <doc xml:space="preserve">a #SoupURI</doc>
  16143. <type name="URI" c:type="SoupURI*"/>
  16144. </instance-parameter>
  16145. <parameter name="first_field" transfer-ownership="none">
  16146. <doc xml:space="preserve">name of the first form field to encode into query</doc>
  16147. <type name="utf8" c:type="const char*"/>
  16148. </parameter>
  16149. <parameter name="..." transfer-ownership="none">
  16150. <doc xml:space="preserve">value of @first_field, followed by additional field names
  16151. and values, terminated by %NULL.</doc>
  16152. <varargs/>
  16153. </parameter>
  16154. </parameters>
  16155. </method>
  16156. <method name="set_query_from_form"
  16157. c:identifier="soup_uri_set_query_from_form">
  16158. <doc xml:space="preserve">Sets @uri's query to the result of encoding @form according to the
  16159. HTML form rules. See soup_form_encode_hash() for more information.</doc>
  16160. <return-value transfer-ownership="none">
  16161. <type name="none" c:type="void"/>
  16162. </return-value>
  16163. <parameters>
  16164. <instance-parameter name="uri" transfer-ownership="none">
  16165. <doc xml:space="preserve">a #SoupURI</doc>
  16166. <type name="URI" c:type="SoupURI*"/>
  16167. </instance-parameter>
  16168. <parameter name="form" transfer-ownership="none">
  16169. <doc xml:space="preserve">a #GHashTable containing HTML form
  16170. information</doc>
  16171. <type name="GLib.HashTable" c:type="GHashTable*">
  16172. <type name="utf8"/>
  16173. <type name="utf8"/>
  16174. </type>
  16175. </parameter>
  16176. </parameters>
  16177. </method>
  16178. <method name="set_scheme" c:identifier="soup_uri_set_scheme">
  16179. <doc xml:space="preserve">Sets @uri's scheme to @scheme. This will also set @uri's port to
  16180. the default port for @scheme, if known.</doc>
  16181. <return-value transfer-ownership="none">
  16182. <type name="none" c:type="void"/>
  16183. </return-value>
  16184. <parameters>
  16185. <instance-parameter name="uri" transfer-ownership="none">
  16186. <doc xml:space="preserve">a #SoupURI</doc>
  16187. <type name="URI" c:type="SoupURI*"/>
  16188. </instance-parameter>
  16189. <parameter name="scheme" transfer-ownership="none">
  16190. <doc xml:space="preserve">the URI scheme</doc>
  16191. <type name="utf8" c:type="const char*"/>
  16192. </parameter>
  16193. </parameters>
  16194. </method>
  16195. <method name="set_user" c:identifier="soup_uri_set_user">
  16196. <doc xml:space="preserve">Sets @uri's user to @user.</doc>
  16197. <return-value transfer-ownership="none">
  16198. <type name="none" c:type="void"/>
  16199. </return-value>
  16200. <parameters>
  16201. <instance-parameter name="uri" transfer-ownership="none">
  16202. <doc xml:space="preserve">a #SoupURI</doc>
  16203. <type name="URI" c:type="SoupURI*"/>
  16204. </instance-parameter>
  16205. <parameter name="user"
  16206. transfer-ownership="none"
  16207. nullable="1"
  16208. allow-none="1">
  16209. <doc xml:space="preserve">the username, or %NULL</doc>
  16210. <type name="utf8" c:type="const char*"/>
  16211. </parameter>
  16212. </parameters>
  16213. </method>
  16214. <method name="to_string" c:identifier="soup_uri_to_string">
  16215. <doc xml:space="preserve">Returns a string representing @uri.
  16216. If @just_path_and_query is %TRUE, this concatenates the path and query
  16217. together. That is, it constructs the string that would be needed in
  16218. the Request-Line of an HTTP request for @uri.
  16219. Note that the output will never contain a password, even if @uri
  16220. does.</doc>
  16221. <return-value transfer-ownership="full">
  16222. <doc xml:space="preserve">a string representing @uri, which the caller must free.</doc>
  16223. <type name="utf8" c:type="char*"/>
  16224. </return-value>
  16225. <parameters>
  16226. <instance-parameter name="uri" transfer-ownership="none">
  16227. <doc xml:space="preserve">a #SoupURI</doc>
  16228. <type name="URI" c:type="SoupURI*"/>
  16229. </instance-parameter>
  16230. <parameter name="just_path_and_query" transfer-ownership="none">
  16231. <doc xml:space="preserve">if %TRUE, output just the path and query portions</doc>
  16232. <type name="gboolean" c:type="gboolean"/>
  16233. </parameter>
  16234. </parameters>
  16235. </method>
  16236. <method name="uses_default_port"
  16237. c:identifier="soup_uri_uses_default_port">
  16238. <doc xml:space="preserve">Tests if @uri uses the default port for its scheme. (Eg, 80 for
  16239. http.) (This only works for http, https and ftp; libsoup does not know
  16240. the default ports of other protocols.)</doc>
  16241. <return-value transfer-ownership="none">
  16242. <doc xml:space="preserve">%TRUE or %FALSE</doc>
  16243. <type name="gboolean" c:type="gboolean"/>
  16244. </return-value>
  16245. <parameters>
  16246. <instance-parameter name="uri" transfer-ownership="none">
  16247. <doc xml:space="preserve">a #SoupURI</doc>
  16248. <type name="URI" c:type="SoupURI*"/>
  16249. </instance-parameter>
  16250. </parameters>
  16251. </method>
  16252. <function name="decode" c:identifier="soup_uri_decode">
  16253. <doc xml:space="preserve">Fully %&lt;!-- --&gt;-decodes @part.
  16254. In the past, this would return %NULL if @part contained invalid
  16255. percent-encoding, but now it just ignores the problem (as
  16256. soup_uri_new() already did).</doc>
  16257. <return-value transfer-ownership="full">
  16258. <doc xml:space="preserve">the decoded URI part.</doc>
  16259. <type name="utf8" c:type="char*"/>
  16260. </return-value>
  16261. <parameters>
  16262. <parameter name="part" transfer-ownership="none">
  16263. <doc xml:space="preserve">a URI part</doc>
  16264. <type name="utf8" c:type="const char*"/>
  16265. </parameter>
  16266. </parameters>
  16267. </function>
  16268. <function name="encode" c:identifier="soup_uri_encode">
  16269. <doc xml:space="preserve">This %&lt;!-- --&gt;-encodes the given URI part and returns the escaped
  16270. version in allocated memory, which the caller must free when it is
  16271. done.</doc>
  16272. <return-value transfer-ownership="full">
  16273. <doc xml:space="preserve">the encoded URI part</doc>
  16274. <type name="utf8" c:type="char*"/>
  16275. </return-value>
  16276. <parameters>
  16277. <parameter name="part" transfer-ownership="none">
  16278. <doc xml:space="preserve">a URI part</doc>
  16279. <type name="utf8" c:type="const char*"/>
  16280. </parameter>
  16281. <parameter name="escape_extra"
  16282. transfer-ownership="none"
  16283. nullable="1"
  16284. allow-none="1">
  16285. <doc xml:space="preserve">additional reserved characters to
  16286. escape (or %NULL)</doc>
  16287. <type name="utf8" c:type="const char*"/>
  16288. </parameter>
  16289. </parameters>
  16290. </function>
  16291. <function name="normalize" c:identifier="soup_uri_normalize">
  16292. <doc xml:space="preserve">%&lt;!-- --&gt;-decodes any "unreserved" characters (or characters in
  16293. @unescape_extra) in @part, and %&lt;!-- --&gt;-encodes any non-ASCII
  16294. characters, spaces, and non-printing characters in @part.
  16295. "Unreserved" characters are those that are not allowed to be used
  16296. for punctuation according to the URI spec. For example, letters are
  16297. unreserved, so soup_uri_normalize() will turn
  16298. &lt;literal&gt;http://example.com/foo/b%&lt;!-- --&gt;61r&lt;/literal&gt; into
  16299. &lt;literal&gt;http://example.com/foo/bar&lt;/literal&gt;, which is guaranteed
  16300. to mean the same thing. However, "/" is "reserved", so
  16301. &lt;literal&gt;http://example.com/foo%&lt;!-- --&gt;2Fbar&lt;/literal&gt; would not
  16302. be changed, because it might mean something different to the
  16303. server.
  16304. In the past, this would return %NULL if @part contained invalid
  16305. percent-encoding, but now it just ignores the problem (as
  16306. soup_uri_new() already did).</doc>
  16307. <return-value transfer-ownership="full">
  16308. <doc xml:space="preserve">the normalized URI part</doc>
  16309. <type name="utf8" c:type="char*"/>
  16310. </return-value>
  16311. <parameters>
  16312. <parameter name="part" transfer-ownership="none">
  16313. <doc xml:space="preserve">a URI part</doc>
  16314. <type name="utf8" c:type="const char*"/>
  16315. </parameter>
  16316. <parameter name="unescape_extra"
  16317. transfer-ownership="none"
  16318. nullable="1"
  16319. allow-none="1">
  16320. <doc xml:space="preserve">reserved characters to unescape (or %NULL)</doc>
  16321. <type name="utf8" c:type="const char*"/>
  16322. </parameter>
  16323. </parameters>
  16324. </function>
  16325. </record>
  16326. <constant name="URI_H" value="1" c:type="SOUP_URI_H">
  16327. <type name="gint" c:type="gint"/>
  16328. </constant>
  16329. <constant name="VALUE_UTILS_H" value="1" c:type="SOUP_VALUE_UTILS_H">
  16330. <type name="gint" c:type="gint"/>
  16331. </constant>
  16332. <enumeration name="WebsocketCloseCode"
  16333. version="2.50"
  16334. glib:type-name="SoupWebsocketCloseCode"
  16335. glib:get-type="soup_websocket_close_code_get_type"
  16336. c:type="SoupWebsocketCloseCode">
  16337. <doc xml:space="preserve">Pre-defined close codes that can be passed to
  16338. soup_websocket_connection_close() or received from
  16339. soup_websocket_connection_get_close_code(). (However, other codes
  16340. are also allowed.)</doc>
  16341. <member name="normal"
  16342. value="1000"
  16343. c:identifier="SOUP_WEBSOCKET_CLOSE_NORMAL"
  16344. glib:nick="normal">
  16345. <doc xml:space="preserve">a normal, non-error close</doc>
  16346. </member>
  16347. <member name="going_away"
  16348. value="1001"
  16349. c:identifier="SOUP_WEBSOCKET_CLOSE_GOING_AWAY"
  16350. glib:nick="going-away">
  16351. <doc xml:space="preserve">the client/server is going away</doc>
  16352. </member>
  16353. <member name="protocol_error"
  16354. value="1002"
  16355. c:identifier="SOUP_WEBSOCKET_CLOSE_PROTOCOL_ERROR"
  16356. glib:nick="protocol-error">
  16357. <doc xml:space="preserve">a protocol error occurred</doc>
  16358. </member>
  16359. <member name="unsupported_data"
  16360. value="1003"
  16361. c:identifier="SOUP_WEBSOCKET_CLOSE_UNSUPPORTED_DATA"
  16362. glib:nick="unsupported-data">
  16363. <doc xml:space="preserve">the endpoint received data
  16364. of a type that it does not support.</doc>
  16365. </member>
  16366. <member name="no_status"
  16367. value="1005"
  16368. c:identifier="SOUP_WEBSOCKET_CLOSE_NO_STATUS"
  16369. glib:nick="no-status">
  16370. <doc xml:space="preserve">reserved value indicating that
  16371. no close code was present; must not be sent.</doc>
  16372. </member>
  16373. <member name="abnormal"
  16374. value="1006"
  16375. c:identifier="SOUP_WEBSOCKET_CLOSE_ABNORMAL"
  16376. glib:nick="abnormal">
  16377. <doc xml:space="preserve">reserved value indicating that
  16378. the connection was closed abnormally; must not be sent.</doc>
  16379. </member>
  16380. <member name="bad_data"
  16381. value="1007"
  16382. c:identifier="SOUP_WEBSOCKET_CLOSE_BAD_DATA"
  16383. glib:nick="bad-data">
  16384. <doc xml:space="preserve">the endpoint received data that
  16385. was invalid (eg, non-UTF-8 data in a text message).</doc>
  16386. </member>
  16387. <member name="policy_violation"
  16388. value="1008"
  16389. c:identifier="SOUP_WEBSOCKET_CLOSE_POLICY_VIOLATION"
  16390. glib:nick="policy-violation">
  16391. <doc xml:space="preserve">generic error code
  16392. indicating some sort of policy violation.</doc>
  16393. </member>
  16394. <member name="too_big"
  16395. value="1009"
  16396. c:identifier="SOUP_WEBSOCKET_CLOSE_TOO_BIG"
  16397. glib:nick="too-big">
  16398. <doc xml:space="preserve">the endpoint received a message
  16399. that is too big to process.</doc>
  16400. </member>
  16401. <member name="no_extension"
  16402. value="1010"
  16403. c:identifier="SOUP_WEBSOCKET_CLOSE_NO_EXTENSION"
  16404. glib:nick="no-extension">
  16405. <doc xml:space="preserve">the client is closing the
  16406. connection because the server failed to negotiate a required
  16407. extension.</doc>
  16408. </member>
  16409. <member name="server_error"
  16410. value="1011"
  16411. c:identifier="SOUP_WEBSOCKET_CLOSE_SERVER_ERROR"
  16412. glib:nick="server-error">
  16413. <doc xml:space="preserve">the server is closing the
  16414. connection because it was unable to fulfill the request.</doc>
  16415. </member>
  16416. <member name="tls_handshake"
  16417. value="1015"
  16418. c:identifier="SOUP_WEBSOCKET_CLOSE_TLS_HANDSHAKE"
  16419. glib:nick="tls-handshake">
  16420. <doc xml:space="preserve">reserved value indicating that
  16421. the TLS handshake failed; must not be sent.</doc>
  16422. </member>
  16423. </enumeration>
  16424. <class name="WebsocketConnection"
  16425. c:symbol-prefix="websocket_connection"
  16426. c:type="SoupWebsocketConnection"
  16427. version="2.50"
  16428. parent="GObject.Object"
  16429. glib:type-name="SoupWebsocketConnection"
  16430. glib:get-type="soup_websocket_connection_get_type"
  16431. glib:type-struct="WebsocketConnectionClass">
  16432. <doc xml:space="preserve">A class representing a WebSocket connection.</doc>
  16433. <constructor name="new"
  16434. c:identifier="soup_websocket_connection_new"
  16435. version="2.50">
  16436. <doc xml:space="preserve">Creates a #SoupWebsocketConnection on @stream. This should be
  16437. called after completing the handshake to begin using the WebSocket
  16438. protocol.</doc>
  16439. <return-value transfer-ownership="full">
  16440. <doc xml:space="preserve">a new #SoupWebsocketConnection</doc>
  16441. <type name="WebsocketConnection" c:type="SoupWebsocketConnection*"/>
  16442. </return-value>
  16443. <parameters>
  16444. <parameter name="stream" transfer-ownership="none">
  16445. <doc xml:space="preserve">a #GIOStream connected to the WebSocket server</doc>
  16446. <type name="Gio.IOStream" c:type="GIOStream*"/>
  16447. </parameter>
  16448. <parameter name="uri" transfer-ownership="none">
  16449. <doc xml:space="preserve">the URI of the connection</doc>
  16450. <type name="URI" c:type="SoupURI*"/>
  16451. </parameter>
  16452. <parameter name="type" transfer-ownership="none">
  16453. <doc xml:space="preserve">the type of connection (client/side)</doc>
  16454. <type name="WebsocketConnectionType"
  16455. c:type="SoupWebsocketConnectionType"/>
  16456. </parameter>
  16457. <parameter name="origin"
  16458. transfer-ownership="none"
  16459. nullable="1"
  16460. allow-none="1">
  16461. <doc xml:space="preserve">the Origin of the client</doc>
  16462. <type name="utf8" c:type="const char*"/>
  16463. </parameter>
  16464. <parameter name="protocol"
  16465. transfer-ownership="none"
  16466. nullable="1"
  16467. allow-none="1">
  16468. <doc xml:space="preserve">the subprotocol in use</doc>
  16469. <type name="utf8" c:type="const char*"/>
  16470. </parameter>
  16471. </parameters>
  16472. </constructor>
  16473. <virtual-method name="closed">
  16474. <return-value transfer-ownership="none">
  16475. <type name="none" c:type="void"/>
  16476. </return-value>
  16477. <parameters>
  16478. <instance-parameter name="self" transfer-ownership="none">
  16479. <type name="WebsocketConnection"
  16480. c:type="SoupWebsocketConnection*"/>
  16481. </instance-parameter>
  16482. </parameters>
  16483. </virtual-method>
  16484. <virtual-method name="closing">
  16485. <return-value transfer-ownership="none">
  16486. <type name="none" c:type="void"/>
  16487. </return-value>
  16488. <parameters>
  16489. <instance-parameter name="self" transfer-ownership="none">
  16490. <type name="WebsocketConnection"
  16491. c:type="SoupWebsocketConnection*"/>
  16492. </instance-parameter>
  16493. </parameters>
  16494. </virtual-method>
  16495. <virtual-method name="error">
  16496. <return-value transfer-ownership="none">
  16497. <type name="none" c:type="void"/>
  16498. </return-value>
  16499. <parameters>
  16500. <instance-parameter name="self" transfer-ownership="none">
  16501. <type name="WebsocketConnection"
  16502. c:type="SoupWebsocketConnection*"/>
  16503. </instance-parameter>
  16504. <parameter name="error" transfer-ownership="none">
  16505. <type name="GLib.Error" c:type="GError*"/>
  16506. </parameter>
  16507. </parameters>
  16508. </virtual-method>
  16509. <virtual-method name="message">
  16510. <return-value transfer-ownership="none">
  16511. <type name="none" c:type="void"/>
  16512. </return-value>
  16513. <parameters>
  16514. <instance-parameter name="self" transfer-ownership="none">
  16515. <type name="WebsocketConnection"
  16516. c:type="SoupWebsocketConnection*"/>
  16517. </instance-parameter>
  16518. <parameter name="type" transfer-ownership="none">
  16519. <type name="WebsocketDataType" c:type="SoupWebsocketDataType"/>
  16520. </parameter>
  16521. <parameter name="message" transfer-ownership="none">
  16522. <type name="GLib.Bytes" c:type="GBytes*"/>
  16523. </parameter>
  16524. </parameters>
  16525. </virtual-method>
  16526. <method name="close"
  16527. c:identifier="soup_websocket_connection_close"
  16528. version="2.50">
  16529. <doc xml:space="preserve">Close the connection in an orderly fashion.
  16530. Note that until the #SoupWebsocketConnection::closed signal fires, the connection
  16531. is not yet completely closed. The close message is not even sent until the
  16532. main loop runs.
  16533. The @code and @data are sent to the peer along with the close request.
  16534. Note that the @data must be UTF-8 valid.</doc>
  16535. <return-value transfer-ownership="none">
  16536. <type name="none" c:type="void"/>
  16537. </return-value>
  16538. <parameters>
  16539. <instance-parameter name="self" transfer-ownership="none">
  16540. <doc xml:space="preserve">the WebSocket</doc>
  16541. <type name="WebsocketConnection"
  16542. c:type="SoupWebsocketConnection*"/>
  16543. </instance-parameter>
  16544. <parameter name="code" transfer-ownership="none">
  16545. <doc xml:space="preserve">close code</doc>
  16546. <type name="gushort" c:type="gushort"/>
  16547. </parameter>
  16548. <parameter name="data"
  16549. transfer-ownership="none"
  16550. nullable="1"
  16551. allow-none="1">
  16552. <doc xml:space="preserve">close data</doc>
  16553. <type name="utf8" c:type="const char*"/>
  16554. </parameter>
  16555. </parameters>
  16556. </method>
  16557. <method name="get_close_code"
  16558. c:identifier="soup_websocket_connection_get_close_code"
  16559. version="2.50">
  16560. <doc xml:space="preserve">Get the close code received from the WebSocket peer.
  16561. This only becomes valid once the WebSocket is in the
  16562. %SOUP_WEBSOCKET_STATE_CLOSED state. The value will often be in the
  16563. #SoupWebsocketCloseCode enumeration, but may also be an application
  16564. defined close code.</doc>
  16565. <return-value transfer-ownership="none">
  16566. <doc xml:space="preserve">the close code or zero.</doc>
  16567. <type name="gushort" c:type="gushort"/>
  16568. </return-value>
  16569. <parameters>
  16570. <instance-parameter name="self" transfer-ownership="none">
  16571. <doc xml:space="preserve">the WebSocket</doc>
  16572. <type name="WebsocketConnection"
  16573. c:type="SoupWebsocketConnection*"/>
  16574. </instance-parameter>
  16575. </parameters>
  16576. </method>
  16577. <method name="get_close_data"
  16578. c:identifier="soup_websocket_connection_get_close_data"
  16579. version="2.50">
  16580. <doc xml:space="preserve">Get the close data received from the WebSocket peer.
  16581. This only becomes valid once the WebSocket is in the
  16582. %SOUP_WEBSOCKET_STATE_CLOSED state. The data may be freed once
  16583. the main loop is run, so copy it if you need to keep it around.</doc>
  16584. <return-value transfer-ownership="none">
  16585. <doc xml:space="preserve">the close data or %NULL</doc>
  16586. <type name="utf8" c:type="const char*"/>
  16587. </return-value>
  16588. <parameters>
  16589. <instance-parameter name="self" transfer-ownership="none">
  16590. <doc xml:space="preserve">the WebSocket</doc>
  16591. <type name="WebsocketConnection"
  16592. c:type="SoupWebsocketConnection*"/>
  16593. </instance-parameter>
  16594. </parameters>
  16595. </method>
  16596. <method name="get_connection_type"
  16597. c:identifier="soup_websocket_connection_get_connection_type"
  16598. version="2.50">
  16599. <doc xml:space="preserve">Get the connection type (client/server) of the connection.</doc>
  16600. <return-value transfer-ownership="none">
  16601. <doc xml:space="preserve">the connection type</doc>
  16602. <type name="WebsocketConnectionType"
  16603. c:type="SoupWebsocketConnectionType"/>
  16604. </return-value>
  16605. <parameters>
  16606. <instance-parameter name="self" transfer-ownership="none">
  16607. <doc xml:space="preserve">the WebSocket</doc>
  16608. <type name="WebsocketConnection"
  16609. c:type="SoupWebsocketConnection*"/>
  16610. </instance-parameter>
  16611. </parameters>
  16612. </method>
  16613. <method name="get_io_stream"
  16614. c:identifier="soup_websocket_connection_get_io_stream"
  16615. version="2.50">
  16616. <doc xml:space="preserve">Get the I/O stream the WebSocket is communicating over.</doc>
  16617. <return-value transfer-ownership="none">
  16618. <doc xml:space="preserve">the WebSocket's I/O stream.</doc>
  16619. <type name="Gio.IOStream" c:type="GIOStream*"/>
  16620. </return-value>
  16621. <parameters>
  16622. <instance-parameter name="self" transfer-ownership="none">
  16623. <doc xml:space="preserve">the WebSocket</doc>
  16624. <type name="WebsocketConnection"
  16625. c:type="SoupWebsocketConnection*"/>
  16626. </instance-parameter>
  16627. </parameters>
  16628. </method>
  16629. <method name="get_origin"
  16630. c:identifier="soup_websocket_connection_get_origin"
  16631. version="2.50">
  16632. <doc xml:space="preserve">Get the origin of the WebSocket.</doc>
  16633. <return-value transfer-ownership="none" nullable="1">
  16634. <doc xml:space="preserve">the origin, or %NULL</doc>
  16635. <type name="utf8" c:type="const char*"/>
  16636. </return-value>
  16637. <parameters>
  16638. <instance-parameter name="self" transfer-ownership="none">
  16639. <doc xml:space="preserve">the WebSocket</doc>
  16640. <type name="WebsocketConnection"
  16641. c:type="SoupWebsocketConnection*"/>
  16642. </instance-parameter>
  16643. </parameters>
  16644. </method>
  16645. <method name="get_protocol"
  16646. c:identifier="soup_websocket_connection_get_protocol"
  16647. version="2.50">
  16648. <doc xml:space="preserve">Get the protocol chosen via negotiation with the peer.</doc>
  16649. <return-value transfer-ownership="none" nullable="1">
  16650. <doc xml:space="preserve">the chosen protocol, or %NULL</doc>
  16651. <type name="utf8" c:type="const char*"/>
  16652. </return-value>
  16653. <parameters>
  16654. <instance-parameter name="self" transfer-ownership="none">
  16655. <doc xml:space="preserve">the WebSocket</doc>
  16656. <type name="WebsocketConnection"
  16657. c:type="SoupWebsocketConnection*"/>
  16658. </instance-parameter>
  16659. </parameters>
  16660. </method>
  16661. <method name="get_state"
  16662. c:identifier="soup_websocket_connection_get_state"
  16663. version="2.50">
  16664. <doc xml:space="preserve">Get the current state of the WebSocket.</doc>
  16665. <return-value transfer-ownership="none">
  16666. <doc xml:space="preserve">the state</doc>
  16667. <type name="WebsocketState" c:type="SoupWebsocketState"/>
  16668. </return-value>
  16669. <parameters>
  16670. <instance-parameter name="self" transfer-ownership="none">
  16671. <doc xml:space="preserve">the WebSocket</doc>
  16672. <type name="WebsocketConnection"
  16673. c:type="SoupWebsocketConnection*"/>
  16674. </instance-parameter>
  16675. </parameters>
  16676. </method>
  16677. <method name="get_uri"
  16678. c:identifier="soup_websocket_connection_get_uri"
  16679. version="2.50">
  16680. <doc xml:space="preserve">Get the URI of the WebSocket.
  16681. For servers this represents the address of the WebSocket, and
  16682. for clients it is the address connected to.</doc>
  16683. <return-value transfer-ownership="none">
  16684. <doc xml:space="preserve">the URI</doc>
  16685. <type name="URI" c:type="SoupURI*"/>
  16686. </return-value>
  16687. <parameters>
  16688. <instance-parameter name="self" transfer-ownership="none">
  16689. <doc xml:space="preserve">the WebSocket</doc>
  16690. <type name="WebsocketConnection"
  16691. c:type="SoupWebsocketConnection*"/>
  16692. </instance-parameter>
  16693. </parameters>
  16694. </method>
  16695. <method name="send_binary"
  16696. c:identifier="soup_websocket_connection_send_binary"
  16697. version="2.50">
  16698. <doc xml:space="preserve">Send a binary message to the peer.
  16699. The message is queued to be sent and will be sent when the main loop
  16700. is run.</doc>
  16701. <return-value transfer-ownership="none">
  16702. <type name="none" c:type="void"/>
  16703. </return-value>
  16704. <parameters>
  16705. <instance-parameter name="self" transfer-ownership="none">
  16706. <doc xml:space="preserve">the WebSocket</doc>
  16707. <type name="WebsocketConnection"
  16708. c:type="SoupWebsocketConnection*"/>
  16709. </instance-parameter>
  16710. <parameter name="data" transfer-ownership="none">
  16711. <doc xml:space="preserve">the message contents</doc>
  16712. <array length="1" zero-terminated="0" c:type="gconstpointer">
  16713. <type name="guint8"/>
  16714. </array>
  16715. </parameter>
  16716. <parameter name="length" transfer-ownership="none">
  16717. <doc xml:space="preserve">the length of @data</doc>
  16718. <type name="gsize" c:type="gsize"/>
  16719. </parameter>
  16720. </parameters>
  16721. </method>
  16722. <method name="send_text"
  16723. c:identifier="soup_websocket_connection_send_text"
  16724. version="2.50">
  16725. <doc xml:space="preserve">Send a text (UTF-8) message to the peer.
  16726. The message is queued to be sent and will be sent when the main loop
  16727. is run.</doc>
  16728. <return-value transfer-ownership="none">
  16729. <type name="none" c:type="void"/>
  16730. </return-value>
  16731. <parameters>
  16732. <instance-parameter name="self" transfer-ownership="none">
  16733. <doc xml:space="preserve">the WebSocket</doc>
  16734. <type name="WebsocketConnection"
  16735. c:type="SoupWebsocketConnection*"/>
  16736. </instance-parameter>
  16737. <parameter name="text" transfer-ownership="none">
  16738. <doc xml:space="preserve">the message contents</doc>
  16739. <type name="utf8" c:type="const char*"/>
  16740. </parameter>
  16741. </parameters>
  16742. </method>
  16743. <property name="connection-type"
  16744. version="2.50"
  16745. writable="1"
  16746. construct-only="1"
  16747. transfer-ownership="none">
  16748. <doc xml:space="preserve">The type of connection (client/server).</doc>
  16749. <type name="WebsocketConnectionType"/>
  16750. </property>
  16751. <property name="io-stream"
  16752. version="2.50"
  16753. writable="1"
  16754. construct-only="1"
  16755. transfer-ownership="none">
  16756. <doc xml:space="preserve">The underlying IO stream the WebSocket is communicating
  16757. over.
  16758. The input and output streams must be pollable streams.</doc>
  16759. <type name="Gio.IOStream"/>
  16760. </property>
  16761. <property name="origin"
  16762. version="2.50"
  16763. writable="1"
  16764. construct-only="1"
  16765. transfer-ownership="none">
  16766. <doc xml:space="preserve">The client's Origin.</doc>
  16767. <type name="utf8" c:type="gchar*"/>
  16768. </property>
  16769. <property name="protocol"
  16770. version="2.50"
  16771. writable="1"
  16772. construct-only="1"
  16773. transfer-ownership="none">
  16774. <doc xml:space="preserve">The chosen protocol, or %NULL if a protocol was not agreed
  16775. upon.</doc>
  16776. <type name="utf8" c:type="gchar*"/>
  16777. </property>
  16778. <property name="state" version="2.50" transfer-ownership="none">
  16779. <doc xml:space="preserve">The current state of the WebSocket.</doc>
  16780. <type name="WebsocketState"/>
  16781. </property>
  16782. <property name="uri"
  16783. version="2.50"
  16784. writable="1"
  16785. construct-only="1"
  16786. transfer-ownership="none">
  16787. <doc xml:space="preserve">The URI of the WebSocket.
  16788. For servers this represents the address of the WebSocket,
  16789. and for clients it is the address connected to.</doc>
  16790. <type name="URI"/>
  16791. </property>
  16792. <field name="parent">
  16793. <type name="GObject.Object" c:type="GObject"/>
  16794. </field>
  16795. <field name="pv" readable="0" private="1">
  16796. <type name="WebsocketConnectionPrivate"
  16797. c:type="SoupWebsocketConnectionPrivate*"/>
  16798. </field>
  16799. <glib:signal name="closed" when="first" version="2.50">
  16800. <doc xml:space="preserve">Emitted when the connection has completely closed, either
  16801. due to an orderly close from the peer, one initiated via
  16802. soup_websocket_connection_close() or a fatal error
  16803. condition that caused a close.
  16804. This signal will be emitted once.</doc>
  16805. <return-value transfer-ownership="none">
  16806. <type name="none" c:type="void"/>
  16807. </return-value>
  16808. </glib:signal>
  16809. <glib:signal name="closing" when="last" version="2.50">
  16810. <doc xml:space="preserve">This signal will be emitted during an orderly close.</doc>
  16811. <return-value transfer-ownership="none">
  16812. <type name="none" c:type="void"/>
  16813. </return-value>
  16814. </glib:signal>
  16815. <glib:signal name="error" when="first" version="2.50">
  16816. <doc xml:space="preserve">Emitted when an error occurred on the WebSocket. This may
  16817. be fired multiple times. Fatal errors will be followed by
  16818. the #SoupWebsocketConnection::closed signal being emitted.</doc>
  16819. <return-value transfer-ownership="none">
  16820. <type name="none" c:type="void"/>
  16821. </return-value>
  16822. <parameters>
  16823. <parameter name="error" transfer-ownership="none">
  16824. <doc xml:space="preserve">the error that occured</doc>
  16825. <type name="GLib.Error"/>
  16826. </parameter>
  16827. </parameters>
  16828. </glib:signal>
  16829. <glib:signal name="message" when="first" version="2.50">
  16830. <doc xml:space="preserve">Emitted when we receive a message from the peer.
  16831. As a convenience, the @message data will always be
  16832. NUL-terminated, but the NUL byte will not be included in
  16833. the length count.</doc>
  16834. <return-value transfer-ownership="none">
  16835. <type name="none" c:type="void"/>
  16836. </return-value>
  16837. <parameters>
  16838. <parameter name="type" transfer-ownership="none">
  16839. <doc xml:space="preserve">the type of message contents</doc>
  16840. <type name="gint" c:type="gint"/>
  16841. </parameter>
  16842. <parameter name="message" transfer-ownership="none">
  16843. <doc xml:space="preserve">the message data</doc>
  16844. <type name="GLib.Bytes"/>
  16845. </parameter>
  16846. </parameters>
  16847. </glib:signal>
  16848. </class>
  16849. <record name="WebsocketConnectionClass"
  16850. c:type="SoupWebsocketConnectionClass"
  16851. glib:is-gtype-struct-for="WebsocketConnection"
  16852. version="2.50">
  16853. <doc xml:space="preserve">The abstract base class for #SoupWebsocketConnection</doc>
  16854. <field name="parent">
  16855. <type name="GObject.ObjectClass" c:type="GObjectClass"/>
  16856. </field>
  16857. <field name="message">
  16858. <callback name="message">
  16859. <return-value transfer-ownership="none">
  16860. <type name="none" c:type="void"/>
  16861. </return-value>
  16862. <parameters>
  16863. <parameter name="self" transfer-ownership="none">
  16864. <type name="WebsocketConnection"
  16865. c:type="SoupWebsocketConnection*"/>
  16866. </parameter>
  16867. <parameter name="type" transfer-ownership="none">
  16868. <type name="WebsocketDataType" c:type="SoupWebsocketDataType"/>
  16869. </parameter>
  16870. <parameter name="message" transfer-ownership="none">
  16871. <type name="GLib.Bytes" c:type="GBytes*"/>
  16872. </parameter>
  16873. </parameters>
  16874. </callback>
  16875. </field>
  16876. <field name="error">
  16877. <callback name="error">
  16878. <return-value transfer-ownership="none">
  16879. <type name="none" c:type="void"/>
  16880. </return-value>
  16881. <parameters>
  16882. <parameter name="self" transfer-ownership="none">
  16883. <type name="WebsocketConnection"
  16884. c:type="SoupWebsocketConnection*"/>
  16885. </parameter>
  16886. <parameter name="error" transfer-ownership="none">
  16887. <type name="GLib.Error" c:type="GError*"/>
  16888. </parameter>
  16889. </parameters>
  16890. </callback>
  16891. </field>
  16892. <field name="closing">
  16893. <callback name="closing">
  16894. <return-value transfer-ownership="none">
  16895. <type name="none" c:type="void"/>
  16896. </return-value>
  16897. <parameters>
  16898. <parameter name="self" transfer-ownership="none">
  16899. <type name="WebsocketConnection"
  16900. c:type="SoupWebsocketConnection*"/>
  16901. </parameter>
  16902. </parameters>
  16903. </callback>
  16904. </field>
  16905. <field name="closed">
  16906. <callback name="closed">
  16907. <return-value transfer-ownership="none">
  16908. <type name="none" c:type="void"/>
  16909. </return-value>
  16910. <parameters>
  16911. <parameter name="self" transfer-ownership="none">
  16912. <type name="WebsocketConnection"
  16913. c:type="SoupWebsocketConnection*"/>
  16914. </parameter>
  16915. </parameters>
  16916. </callback>
  16917. </field>
  16918. </record>
  16919. <record name="WebsocketConnectionPrivate"
  16920. c:type="SoupWebsocketConnectionPrivate"
  16921. disguised="1">
  16922. </record>
  16923. <enumeration name="WebsocketConnectionType"
  16924. version="2.50"
  16925. glib:type-name="SoupWebsocketConnectionType"
  16926. glib:get-type="soup_websocket_connection_type_get_type"
  16927. c:type="SoupWebsocketConnectionType">
  16928. <doc xml:space="preserve">The type of a #SoupWebsocketConnection.</doc>
  16929. <member name="unknown"
  16930. value="0"
  16931. c:identifier="SOUP_WEBSOCKET_CONNECTION_UNKNOWN"
  16932. glib:nick="unknown">
  16933. <doc xml:space="preserve">unknown/invalid connection</doc>
  16934. </member>
  16935. <member name="client"
  16936. value="1"
  16937. c:identifier="SOUP_WEBSOCKET_CONNECTION_CLIENT"
  16938. glib:nick="client">
  16939. <doc xml:space="preserve">a client-side connection</doc>
  16940. </member>
  16941. <member name="server"
  16942. value="2"
  16943. c:identifier="SOUP_WEBSOCKET_CONNECTION_SERVER"
  16944. glib:nick="server">
  16945. <doc xml:space="preserve">a server-side connection</doc>
  16946. </member>
  16947. </enumeration>
  16948. <enumeration name="WebsocketDataType"
  16949. version="2.50"
  16950. glib:type-name="SoupWebsocketDataType"
  16951. glib:get-type="soup_websocket_data_type_get_type"
  16952. c:type="SoupWebsocketDataType">
  16953. <doc xml:space="preserve">The type of data contained in a #SoupWebsocketConnection::message
  16954. signal.</doc>
  16955. <member name="text"
  16956. value="1"
  16957. c:identifier="SOUP_WEBSOCKET_DATA_TEXT"
  16958. glib:nick="text">
  16959. <doc xml:space="preserve">UTF-8 text</doc>
  16960. </member>
  16961. <member name="binary"
  16962. value="2"
  16963. c:identifier="SOUP_WEBSOCKET_DATA_BINARY"
  16964. glib:nick="binary">
  16965. <doc xml:space="preserve">binary data</doc>
  16966. </member>
  16967. </enumeration>
  16968. <enumeration name="WebsocketError"
  16969. version="2.50"
  16970. glib:type-name="SoupWebsocketError"
  16971. glib:get-type="soup_websocket_error_get_type"
  16972. c:type="SoupWebsocketError">
  16973. <doc xml:space="preserve">WebSocket-related errors.</doc>
  16974. <member name="failed"
  16975. value="0"
  16976. c:identifier="SOUP_WEBSOCKET_ERROR_FAILED"
  16977. glib:nick="failed">
  16978. <doc xml:space="preserve">a generic error</doc>
  16979. </member>
  16980. <member name="not_websocket"
  16981. value="1"
  16982. c:identifier="SOUP_WEBSOCKET_ERROR_NOT_WEBSOCKET"
  16983. glib:nick="not-websocket">
  16984. <doc xml:space="preserve">attempted to handshake with a
  16985. server that does not appear to understand WebSockets.</doc>
  16986. </member>
  16987. <member name="bad_handshake"
  16988. value="2"
  16989. c:identifier="SOUP_WEBSOCKET_ERROR_BAD_HANDSHAKE"
  16990. glib:nick="bad-handshake">
  16991. <doc xml:space="preserve">the WebSocket handshake failed
  16992. because some detail was invalid (eg, incorrect accept key).</doc>
  16993. </member>
  16994. <member name="bad_origin"
  16995. value="3"
  16996. c:identifier="SOUP_WEBSOCKET_ERROR_BAD_ORIGIN"
  16997. glib:nick="bad-origin">
  16998. <doc xml:space="preserve">the WebSocket handshake failed
  16999. because the "Origin" header was not an allowed value.</doc>
  17000. </member>
  17001. <function name="get_quark" c:identifier="soup_websocket_error_get_quark">
  17002. <return-value transfer-ownership="none">
  17003. <type name="GLib.Quark" c:type="GQuark"/>
  17004. </return-value>
  17005. </function>
  17006. </enumeration>
  17007. <enumeration name="WebsocketState"
  17008. version="2.50"
  17009. glib:type-name="SoupWebsocketState"
  17010. glib:get-type="soup_websocket_state_get_type"
  17011. c:type="SoupWebsocketState">
  17012. <doc xml:space="preserve">The state of the WebSocket connection.</doc>
  17013. <member name="open"
  17014. value="1"
  17015. c:identifier="SOUP_WEBSOCKET_STATE_OPEN"
  17016. glib:nick="open">
  17017. <doc xml:space="preserve">the connection is ready to send messages</doc>
  17018. </member>
  17019. <member name="closing"
  17020. value="2"
  17021. c:identifier="SOUP_WEBSOCKET_STATE_CLOSING"
  17022. glib:nick="closing">
  17023. <doc xml:space="preserve">the connection is in the process of
  17024. closing down; messages may be received, but not sent</doc>
  17025. </member>
  17026. <member name="closed"
  17027. value="3"
  17028. c:identifier="SOUP_WEBSOCKET_STATE_CLOSED"
  17029. glib:nick="closed">
  17030. <doc xml:space="preserve">the connection is completely closed down</doc>
  17031. </member>
  17032. </enumeration>
  17033. <enumeration name="XMLRPCError"
  17034. glib:type-name="SoupXMLRPCError"
  17035. glib:get-type="soup_xmlrpc_error_get_type"
  17036. c:type="SoupXMLRPCError"
  17037. glib:error-domain="soup_xmlrpc_error_quark">
  17038. <member name="arguments"
  17039. value="0"
  17040. c:identifier="SOUP_XMLRPC_ERROR_ARGUMENTS"
  17041. glib:nick="arguments">
  17042. </member>
  17043. <member name="retval"
  17044. value="1"
  17045. c:identifier="SOUP_XMLRPC_ERROR_RETVAL"
  17046. glib:nick="retval">
  17047. </member>
  17048. <function name="quark" c:identifier="soup_xmlrpc_error_quark">
  17049. <return-value transfer-ownership="none">
  17050. <type name="GLib.Quark" c:type="GQuark"/>
  17051. </return-value>
  17052. </function>
  17053. </enumeration>
  17054. <enumeration name="XMLRPCFault"
  17055. glib:type-name="SoupXMLRPCFault"
  17056. glib:get-type="soup_xmlrpc_fault_get_type"
  17057. c:type="SoupXMLRPCFault">
  17058. <doc xml:space="preserve">Pre-defined XML-RPC fault codes from &lt;ulink
  17059. url="http://xmlrpc-epi.sourceforge.net/specs/rfc.fault_codes.php"&gt;http://xmlrpc-epi.sourceforge.net/specs/rfc.fault_codes.php&lt;/ulink&gt;.
  17060. These are an extension, not part of the XML-RPC spec; you can't
  17061. assume servers will use them.</doc>
  17062. <member name="parse_error_not_well_formed"
  17063. value="-32700"
  17064. c:identifier="SOUP_XMLRPC_FAULT_PARSE_ERROR_NOT_WELL_FORMED"
  17065. glib:nick="parse-error-not-well-formed">
  17066. <doc xml:space="preserve">request was not
  17067. well-formed</doc>
  17068. </member>
  17069. <member name="parse_error_unsupported_encoding"
  17070. value="-32701"
  17071. c:identifier="SOUP_XMLRPC_FAULT_PARSE_ERROR_UNSUPPORTED_ENCODING"
  17072. glib:nick="parse-error-unsupported-encoding">
  17073. <doc xml:space="preserve">request was in
  17074. an unsupported encoding</doc>
  17075. </member>
  17076. <member name="parse_error_invalid_character_for_encoding"
  17077. value="-32702"
  17078. c:identifier="SOUP_XMLRPC_FAULT_PARSE_ERROR_INVALID_CHARACTER_FOR_ENCODING"
  17079. glib:nick="parse-error-invalid-character-for-encoding">
  17080. <doc xml:space="preserve">request contained an invalid character</doc>
  17081. </member>
  17082. <member name="server_error_invalid_xml_rpc"
  17083. value="-32600"
  17084. c:identifier="SOUP_XMLRPC_FAULT_SERVER_ERROR_INVALID_XML_RPC"
  17085. glib:nick="server-error-invalid-xml-rpc">
  17086. <doc xml:space="preserve">request was not
  17087. valid XML-RPC</doc>
  17088. </member>
  17089. <member name="server_error_requested_method_not_found"
  17090. value="-32601"
  17091. c:identifier="SOUP_XMLRPC_FAULT_SERVER_ERROR_REQUESTED_METHOD_NOT_FOUND"
  17092. glib:nick="server-error-requested-method-not-found">
  17093. <doc xml:space="preserve">method
  17094. not found</doc>
  17095. </member>
  17096. <member name="server_error_invalid_method_parameters"
  17097. value="-32602"
  17098. c:identifier="SOUP_XMLRPC_FAULT_SERVER_ERROR_INVALID_METHOD_PARAMETERS"
  17099. glib:nick="server-error-invalid-method-parameters">
  17100. <doc xml:space="preserve">invalid
  17101. parameters</doc>
  17102. </member>
  17103. <member name="server_error_internal_xml_rpc_error"
  17104. value="-32603"
  17105. c:identifier="SOUP_XMLRPC_FAULT_SERVER_ERROR_INTERNAL_XML_RPC_ERROR"
  17106. glib:nick="server-error-internal-xml-rpc-error">
  17107. <doc xml:space="preserve">internal
  17108. error</doc>
  17109. </member>
  17110. <member name="application_error"
  17111. value="-32500"
  17112. c:identifier="SOUP_XMLRPC_FAULT_APPLICATION_ERROR"
  17113. glib:nick="application-error">
  17114. <doc xml:space="preserve">start of reserved range for
  17115. application error codes</doc>
  17116. </member>
  17117. <member name="system_error"
  17118. value="-32400"
  17119. c:identifier="SOUP_XMLRPC_FAULT_SYSTEM_ERROR"
  17120. glib:nick="system-error">
  17121. <doc xml:space="preserve">start of reserved range for
  17122. system error codes</doc>
  17123. </member>
  17124. <member name="transport_error"
  17125. value="-32300"
  17126. c:identifier="SOUP_XMLRPC_FAULT_TRANSPORT_ERROR"
  17127. glib:nick="transport-error">
  17128. <doc xml:space="preserve">start of reserved range for
  17129. transport error codes</doc>
  17130. </member>
  17131. <function name="quark" c:identifier="soup_xmlrpc_fault_quark">
  17132. <return-value transfer-ownership="none">
  17133. <type name="GLib.Quark" c:type="GQuark"/>
  17134. </return-value>
  17135. </function>
  17136. </enumeration>
  17137. <record name="XMLRPCParams"
  17138. c:type="SoupXMLRPCParams"
  17139. disguised="1"
  17140. version="2.52">
  17141. <doc xml:space="preserve">Opaque structure containing XML-RPC methodCall parameter values.
  17142. Can be parsed using soup_xmlrpc_params_parse() and freed with
  17143. soup_xmlrpc_params_free().</doc>
  17144. <method name="free"
  17145. c:identifier="soup_xmlrpc_params_free"
  17146. version="2.52">
  17147. <doc xml:space="preserve">Free a #SoupXMLRPCParams returned by soup_xmlrpc_parse_request().</doc>
  17148. <return-value transfer-ownership="none">
  17149. <type name="none" c:type="void"/>
  17150. </return-value>
  17151. <parameters>
  17152. <instance-parameter name="self" transfer-ownership="none">
  17153. <doc xml:space="preserve">a SoupXMLRPCParams</doc>
  17154. <type name="XMLRPCParams" c:type="SoupXMLRPCParams*"/>
  17155. </instance-parameter>
  17156. </parameters>
  17157. </method>
  17158. <method name="parse"
  17159. c:identifier="soup_xmlrpc_params_parse"
  17160. version="2.52"
  17161. throws="1">
  17162. <doc xml:space="preserve">Parse method parameters returned by soup_xmlrpc_parse_request().
  17163. Deserialization details:
  17164. - If @signature is provided, &amp;lt;int&amp;gt; and &amp;lt;i4&amp;gt; can be deserialized
  17165. to byte, int16, uint16, int32, uint32, int64 or uint64. Otherwise
  17166. it will be deserialized to int32. If the value is out of range
  17167. for the target type it will return an error.
  17168. - &amp;lt;struct&amp;gt; will be deserialized to "a{sv}". @signature could define
  17169. another value type (e.g. "a{ss}").
  17170. - &amp;lt;array&amp;gt; will be deserialized to "av". @signature could define
  17171. another element type (e.g. "as") or could be a tuple (e.g. "(ss)").
  17172. - &amp;lt;base64&amp;gt; will be deserialized to "ay".
  17173. - &amp;lt;string&amp;gt; will be deserialized to "s".
  17174. - &amp;lt;dateTime.iso8601&amp;gt; will be deserialized to an unspecified variant
  17175. type. If @signature is provided it must have the generic "v" type, which
  17176. means there is no guarantee that it's actually a datetime that has been
  17177. received. soup_xmlrpc_variant_get_datetime() must be used to parse and
  17178. type check this special variant.
  17179. - @signature must not have maybes, otherwise an error is returned.
  17180. - Dictionaries must have string keys, otherwise an error is returned.</doc>
  17181. <return-value transfer-ownership="full">
  17182. <doc xml:space="preserve">a new (non-floating) #GVariant, or %NULL</doc>
  17183. <type name="GLib.Variant" c:type="GVariant*"/>
  17184. </return-value>
  17185. <parameters>
  17186. <instance-parameter name="self" transfer-ownership="none">
  17187. <doc xml:space="preserve">A #SoupXMLRPCParams</doc>
  17188. <type name="XMLRPCParams" c:type="SoupXMLRPCParams*"/>
  17189. </instance-parameter>
  17190. <parameter name="signature"
  17191. transfer-ownership="none"
  17192. nullable="1"
  17193. allow-none="1">
  17194. <doc xml:space="preserve">A valid #GVariant type string, or %NULL</doc>
  17195. <type name="utf8" c:type="const char*"/>
  17196. </parameter>
  17197. </parameters>
  17198. </method>
  17199. </record>
  17200. <constant name="XMLRPC_H" value="1" c:type="SOUP_XMLRPC_H">
  17201. <type name="gint" c:type="gint"/>
  17202. </constant>
  17203. <constant name="XMLRPC_OLD_H" value="1" c:type="SOUP_XMLRPC_OLD_H">
  17204. <type name="gint" c:type="gint"/>
  17205. </constant>
  17206. <function name="add_completion"
  17207. c:identifier="soup_add_completion"
  17208. version="2.24"
  17209. introspectable="0">
  17210. <doc xml:space="preserve">Adds @function to be executed from inside @async_context with the
  17211. default priority. Use this when you want to complete an action in
  17212. @async_context's main loop, as soon as possible.</doc>
  17213. <return-value transfer-ownership="full">
  17214. <doc xml:space="preserve">a #GSource, which can be removed from @async_context
  17215. with g_source_destroy().</doc>
  17216. <type name="GLib.Source" c:type="GSource*"/>
  17217. </return-value>
  17218. <parameters>
  17219. <parameter name="async_context"
  17220. transfer-ownership="none"
  17221. nullable="1"
  17222. allow-none="1">
  17223. <doc xml:space="preserve">the #GMainContext to dispatch the I/O
  17224. watch in, or %NULL for the default context</doc>
  17225. <type name="GLib.MainContext" c:type="GMainContext*"/>
  17226. </parameter>
  17227. <parameter name="function" transfer-ownership="none" closure="2">
  17228. <doc xml:space="preserve">the callback to invoke</doc>
  17229. <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
  17230. </parameter>
  17231. <parameter name="data"
  17232. transfer-ownership="none"
  17233. nullable="1"
  17234. allow-none="1">
  17235. <doc xml:space="preserve">user data to pass to @function</doc>
  17236. <type name="gpointer" c:type="gpointer"/>
  17237. </parameter>
  17238. </parameters>
  17239. </function>
  17240. <function name="add_idle" c:identifier="soup_add_idle" introspectable="0">
  17241. <doc xml:space="preserve">Adds an idle event as with g_idle_add(), but using the given
  17242. @async_context.
  17243. If you want @function to run "right away", use
  17244. soup_add_completion(), since that sets a higher priority on the
  17245. #GSource than soup_add_idle() does.</doc>
  17246. <return-value transfer-ownership="full">
  17247. <doc xml:space="preserve">a #GSource, which can be removed from @async_context
  17248. with g_source_destroy().</doc>
  17249. <type name="GLib.Source" c:type="GSource*"/>
  17250. </return-value>
  17251. <parameters>
  17252. <parameter name="async_context"
  17253. transfer-ownership="none"
  17254. nullable="1"
  17255. allow-none="1">
  17256. <doc xml:space="preserve">the #GMainContext to dispatch the I/O
  17257. watch in, or %NULL for the default context</doc>
  17258. <type name="GLib.MainContext" c:type="GMainContext*"/>
  17259. </parameter>
  17260. <parameter name="function" transfer-ownership="none" closure="2">
  17261. <doc xml:space="preserve">the callback to invoke at idle time</doc>
  17262. <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
  17263. </parameter>
  17264. <parameter name="data"
  17265. transfer-ownership="none"
  17266. nullable="1"
  17267. allow-none="1">
  17268. <doc xml:space="preserve">user data to pass to @function</doc>
  17269. <type name="gpointer" c:type="gpointer"/>
  17270. </parameter>
  17271. </parameters>
  17272. </function>
  17273. <function name="add_io_watch"
  17274. c:identifier="soup_add_io_watch"
  17275. introspectable="0">
  17276. <doc xml:space="preserve">Adds an I/O watch as with g_io_add_watch(), but using the given
  17277. @async_context.</doc>
  17278. <return-value transfer-ownership="full">
  17279. <doc xml:space="preserve">a #GSource, which can be removed from @async_context
  17280. with g_source_destroy().</doc>
  17281. <type name="GLib.Source" c:type="GSource*"/>
  17282. </return-value>
  17283. <parameters>
  17284. <parameter name="async_context"
  17285. transfer-ownership="none"
  17286. nullable="1"
  17287. allow-none="1">
  17288. <doc xml:space="preserve">the #GMainContext to dispatch the I/O
  17289. watch in, or %NULL for the default context</doc>
  17290. <type name="GLib.MainContext" c:type="GMainContext*"/>
  17291. </parameter>
  17292. <parameter name="chan" transfer-ownership="none">
  17293. <doc xml:space="preserve">the #GIOChannel to watch</doc>
  17294. <type name="GLib.IOChannel" c:type="GIOChannel*"/>
  17295. </parameter>
  17296. <parameter name="condition" transfer-ownership="none">
  17297. <doc xml:space="preserve">the condition to watch for</doc>
  17298. <type name="GLib.IOCondition" c:type="GIOCondition"/>
  17299. </parameter>
  17300. <parameter name="function" transfer-ownership="none" closure="4">
  17301. <doc xml:space="preserve">the callback to invoke when @condition occurs</doc>
  17302. <type name="GLib.IOFunc" c:type="GIOFunc"/>
  17303. </parameter>
  17304. <parameter name="data"
  17305. transfer-ownership="none"
  17306. nullable="1"
  17307. allow-none="1">
  17308. <doc xml:space="preserve">user data to pass to @function</doc>
  17309. <type name="gpointer" c:type="gpointer"/>
  17310. </parameter>
  17311. </parameters>
  17312. </function>
  17313. <function name="add_timeout"
  17314. c:identifier="soup_add_timeout"
  17315. introspectable="0">
  17316. <doc xml:space="preserve">Adds a timeout as with g_timeout_add(), but using the given
  17317. @async_context.</doc>
  17318. <return-value transfer-ownership="full">
  17319. <doc xml:space="preserve">a #GSource, which can be removed from @async_context
  17320. with g_source_destroy().</doc>
  17321. <type name="GLib.Source" c:type="GSource*"/>
  17322. </return-value>
  17323. <parameters>
  17324. <parameter name="async_context"
  17325. transfer-ownership="none"
  17326. nullable="1"
  17327. allow-none="1">
  17328. <doc xml:space="preserve">the #GMainContext to dispatch the I/O
  17329. watch in, or %NULL for the default context</doc>
  17330. <type name="GLib.MainContext" c:type="GMainContext*"/>
  17331. </parameter>
  17332. <parameter name="interval" transfer-ownership="none">
  17333. <doc xml:space="preserve">the timeout interval, in milliseconds</doc>
  17334. <type name="guint" c:type="guint"/>
  17335. </parameter>
  17336. <parameter name="function" transfer-ownership="none" closure="3">
  17337. <doc xml:space="preserve">the callback to invoke at timeout time</doc>
  17338. <type name="GLib.SourceFunc" c:type="GSourceFunc"/>
  17339. </parameter>
  17340. <parameter name="data"
  17341. transfer-ownership="none"
  17342. nullable="1"
  17343. allow-none="1">
  17344. <doc xml:space="preserve">user data to pass to @function</doc>
  17345. <type name="gpointer" c:type="gpointer"/>
  17346. </parameter>
  17347. </parameters>
  17348. </function>
  17349. <function name="cookie_parse"
  17350. c:identifier="soup_cookie_parse"
  17351. moved-to="Cookie.parse"
  17352. version="2.24">
  17353. <doc xml:space="preserve">Parses @header and returns a #SoupCookie. (If @header contains
  17354. multiple cookies, only the first one will be parsed.)
  17355. If @header does not have "path" or "domain" attributes, they will
  17356. be defaulted from @origin. If @origin is %NULL, path will default
  17357. to "/", but domain will be left as %NULL. Note that this is not a
  17358. valid state for a #SoupCookie, and you will need to fill in some
  17359. appropriate string for the domain if you want to actually make use
  17360. of the cookie.</doc>
  17361. <return-value transfer-ownership="full" nullable="1">
  17362. <doc xml:space="preserve">a new #SoupCookie, or %NULL if it could
  17363. not be parsed, or contained an illegal "domain" attribute for a
  17364. cookie originating from @origin.</doc>
  17365. <type name="Cookie" c:type="SoupCookie*"/>
  17366. </return-value>
  17367. <parameters>
  17368. <parameter name="header" transfer-ownership="none">
  17369. <doc xml:space="preserve">a cookie string (eg, the value of a Set-Cookie header)</doc>
  17370. <type name="utf8" c:type="const char*"/>
  17371. </parameter>
  17372. <parameter name="origin" transfer-ownership="none">
  17373. <doc xml:space="preserve">origin of the cookie, or %NULL</doc>
  17374. <type name="URI" c:type="SoupURI*"/>
  17375. </parameter>
  17376. </parameters>
  17377. </function>
  17378. <function name="cookies_free"
  17379. c:identifier="soup_cookies_free"
  17380. version="2.24"
  17381. introspectable="0">
  17382. <doc xml:space="preserve">Frees @cookies.</doc>
  17383. <return-value transfer-ownership="none">
  17384. <type name="none" c:type="void"/>
  17385. </return-value>
  17386. <parameters>
  17387. <parameter name="cookies" transfer-ownership="none">
  17388. <doc xml:space="preserve">a #GSList of #SoupCookie</doc>
  17389. <type name="GLib.SList" c:type="GSList*">
  17390. <type name="Cookie"/>
  17391. </type>
  17392. </parameter>
  17393. </parameters>
  17394. </function>
  17395. <function name="cookies_from_request"
  17396. c:identifier="soup_cookies_from_request"
  17397. version="2.24">
  17398. <doc xml:space="preserve">Parses @msg's Cookie request header and returns a #GSList of
  17399. #SoupCookie&lt;!-- --&gt;s. As the "Cookie" header, unlike "Set-Cookie",
  17400. only contains cookie names and values, none of the other
  17401. #SoupCookie fields will be filled in. (Thus, you can't generally
  17402. pass a cookie returned from this method directly to
  17403. soup_cookies_to_response().)</doc>
  17404. <return-value transfer-ownership="full">
  17405. <doc xml:space="preserve">a #GSList
  17406. of #SoupCookie&lt;!-- --&gt;s, which can be freed with
  17407. soup_cookies_free().</doc>
  17408. <type name="GLib.SList" c:type="GSList*">
  17409. <type name="Cookie"/>
  17410. </type>
  17411. </return-value>
  17412. <parameters>
  17413. <parameter name="msg" transfer-ownership="none">
  17414. <doc xml:space="preserve">a #SoupMessage containing a "Cookie" request header</doc>
  17415. <type name="Message" c:type="SoupMessage*"/>
  17416. </parameter>
  17417. </parameters>
  17418. </function>
  17419. <function name="cookies_from_response"
  17420. c:identifier="soup_cookies_from_response"
  17421. version="2.24">
  17422. <doc xml:space="preserve">Parses @msg's Set-Cookie response headers and returns a #GSList of
  17423. #SoupCookie&lt;!-- --&gt;s. Cookies that do not specify "path" or
  17424. "domain" attributes will have their values defaulted from @msg.</doc>
  17425. <return-value transfer-ownership="full">
  17426. <doc xml:space="preserve">a #GSList
  17427. of #SoupCookie&lt;!-- --&gt;s, which can be freed with
  17428. soup_cookies_free().</doc>
  17429. <type name="GLib.SList" c:type="GSList*">
  17430. <type name="Cookie"/>
  17431. </type>
  17432. </return-value>
  17433. <parameters>
  17434. <parameter name="msg" transfer-ownership="none">
  17435. <doc xml:space="preserve">a #SoupMessage containing a "Set-Cookie" response header</doc>
  17436. <type name="Message" c:type="SoupMessage*"/>
  17437. </parameter>
  17438. </parameters>
  17439. </function>
  17440. <function name="cookies_to_cookie_header"
  17441. c:identifier="soup_cookies_to_cookie_header"
  17442. version="2.24">
  17443. <doc xml:space="preserve">Serializes a #GSList of #SoupCookie into a string suitable for
  17444. setting as the value of the "Cookie" header.</doc>
  17445. <return-value transfer-ownership="full">
  17446. <doc xml:space="preserve">the serialization of @cookies</doc>
  17447. <type name="utf8" c:type="char*"/>
  17448. </return-value>
  17449. <parameters>
  17450. <parameter name="cookies" transfer-ownership="none">
  17451. <doc xml:space="preserve">a #GSList of #SoupCookie</doc>
  17452. <type name="GLib.SList" c:type="GSList*">
  17453. <type name="Cookie"/>
  17454. </type>
  17455. </parameter>
  17456. </parameters>
  17457. </function>
  17458. <function name="cookies_to_request"
  17459. c:identifier="soup_cookies_to_request"
  17460. version="2.24">
  17461. <doc xml:space="preserve">Adds the name and value of each cookie in @cookies to @msg's
  17462. "Cookie" request. (If @msg already has a "Cookie" request header,
  17463. these cookies will be appended to the cookies already present. Be
  17464. careful that you do not append the same cookies twice, eg, when
  17465. requeuing a message.)</doc>
  17466. <return-value transfer-ownership="none">
  17467. <type name="none" c:type="void"/>
  17468. </return-value>
  17469. <parameters>
  17470. <parameter name="cookies" transfer-ownership="none">
  17471. <doc xml:space="preserve">a #GSList of #SoupCookie</doc>
  17472. <type name="GLib.SList" c:type="GSList*">
  17473. <type name="Cookie"/>
  17474. </type>
  17475. </parameter>
  17476. <parameter name="msg" transfer-ownership="none">
  17477. <doc xml:space="preserve">a #SoupMessage</doc>
  17478. <type name="Message" c:type="SoupMessage*"/>
  17479. </parameter>
  17480. </parameters>
  17481. </function>
  17482. <function name="cookies_to_response"
  17483. c:identifier="soup_cookies_to_response"
  17484. version="2.24">
  17485. <doc xml:space="preserve">Appends a "Set-Cookie" response header to @msg for each cookie in
  17486. @cookies. (This is in addition to any other "Set-Cookie" headers
  17487. @msg may already have.)</doc>
  17488. <return-value transfer-ownership="none">
  17489. <type name="none" c:type="void"/>
  17490. </return-value>
  17491. <parameters>
  17492. <parameter name="cookies" transfer-ownership="none">
  17493. <doc xml:space="preserve">a #GSList of #SoupCookie</doc>
  17494. <type name="GLib.SList" c:type="GSList*">
  17495. <type name="Cookie"/>
  17496. </type>
  17497. </parameter>
  17498. <parameter name="msg" transfer-ownership="none">
  17499. <doc xml:space="preserve">a #SoupMessage</doc>
  17500. <type name="Message" c:type="SoupMessage*"/>
  17501. </parameter>
  17502. </parameters>
  17503. </function>
  17504. <function name="form_decode" c:identifier="soup_form_decode">
  17505. <doc xml:space="preserve">Decodes @form, which is an urlencoded dataset as defined in the
  17506. HTML 4.01 spec.</doc>
  17507. <return-value transfer-ownership="container">
  17508. <doc xml:space="preserve">a hash
  17509. table containing the name/value pairs from @encoded_form, which you
  17510. can free with g_hash_table_destroy().</doc>
  17511. <type name="GLib.HashTable" c:type="GHashTable*">
  17512. <type name="utf8"/>
  17513. <type name="utf8"/>
  17514. </type>
  17515. </return-value>
  17516. <parameters>
  17517. <parameter name="encoded_form" transfer-ownership="none">
  17518. <doc xml:space="preserve">data of type "application/x-www-form-urlencoded"</doc>
  17519. <type name="utf8" c:type="const char*"/>
  17520. </parameter>
  17521. </parameters>
  17522. </function>
  17523. <function name="form_decode_multipart"
  17524. c:identifier="soup_form_decode_multipart"
  17525. version="2.26">
  17526. <doc xml:space="preserve">Decodes the "multipart/form-data" request in @msg; this is a
  17527. convenience method for the case when you have a single file upload
  17528. control in a form. (Or when you don't have any file upload
  17529. controls, but are still using "multipart/form-data" anyway.) Pass
  17530. the name of the file upload control in @file_control_name, and
  17531. soup_form_decode_multipart() will extract the uploaded file data
  17532. into @filename, @content_type, and @file. All of the other form
  17533. control data will be returned (as strings, as with
  17534. soup_form_decode()) in the returned #GHashTable.
  17535. You may pass %NULL for @filename, @content_type and/or @file if you do not
  17536. care about those fields. soup_form_decode_multipart() may also
  17537. return %NULL in those fields if the client did not provide that
  17538. information. You must free the returned filename and content-type
  17539. with g_free(), and the returned file data with soup_buffer_free().
  17540. If you have a form with more than one file upload control, you will
  17541. need to decode it manually, using soup_multipart_new_from_message()
  17542. and soup_multipart_get_part().</doc>
  17543. <return-value transfer-ownership="container" nullable="1">
  17544. <doc xml:space="preserve">
  17545. a hash table containing the name/value pairs (other than
  17546. @file_control_name) from @msg, which you can free with
  17547. g_hash_table_destroy(). On error, it will return %NULL.</doc>
  17548. <type name="GLib.HashTable" c:type="GHashTable*">
  17549. <type name="utf8"/>
  17550. <type name="utf8"/>
  17551. </type>
  17552. </return-value>
  17553. <parameters>
  17554. <parameter name="msg" transfer-ownership="none">
  17555. <doc xml:space="preserve">a #SoupMessage containing a "multipart/form-data" request body</doc>
  17556. <type name="Message" c:type="SoupMessage*"/>
  17557. </parameter>
  17558. <parameter name="file_control_name"
  17559. transfer-ownership="none"
  17560. nullable="1"
  17561. allow-none="1">
  17562. <doc xml:space="preserve">the name of the HTML file upload control, or %NULL</doc>
  17563. <type name="utf8" c:type="const char*"/>
  17564. </parameter>
  17565. <parameter name="filename"
  17566. direction="out"
  17567. caller-allocates="0"
  17568. transfer-ownership="full"
  17569. optional="1"
  17570. allow-none="1">
  17571. <doc xml:space="preserve">return location for the name of the uploaded file, or %NULL</doc>
  17572. <type name="utf8" c:type="char**"/>
  17573. </parameter>
  17574. <parameter name="content_type"
  17575. direction="out"
  17576. caller-allocates="0"
  17577. transfer-ownership="full"
  17578. optional="1"
  17579. allow-none="1">
  17580. <doc xml:space="preserve">return location for the MIME type of the uploaded file, or %NULL</doc>
  17581. <type name="utf8" c:type="char**"/>
  17582. </parameter>
  17583. <parameter name="file"
  17584. direction="out"
  17585. caller-allocates="0"
  17586. transfer-ownership="full"
  17587. optional="1"
  17588. allow-none="1">
  17589. <doc xml:space="preserve">return location for the uploaded file data, or %NULL</doc>
  17590. <type name="Buffer" c:type="SoupBuffer**"/>
  17591. </parameter>
  17592. </parameters>
  17593. </function>
  17594. <function name="form_encode"
  17595. c:identifier="soup_form_encode"
  17596. introspectable="0">
  17597. <doc xml:space="preserve">Encodes the given field names and values into a value of type
  17598. "application/x-www-form-urlencoded", as defined in the HTML 4.01
  17599. spec.
  17600. This method requires you to know the names of the form fields (or
  17601. at the very least, the total number of fields) at compile time; for
  17602. working with dynamic forms, use soup_form_encode_hash() or
  17603. soup_form_encode_datalist().</doc>
  17604. <return-value transfer-ownership="full">
  17605. <doc xml:space="preserve">the encoded form</doc>
  17606. <type name="utf8" c:type="char*"/>
  17607. </return-value>
  17608. <parameters>
  17609. <parameter name="first_field" transfer-ownership="none">
  17610. <doc xml:space="preserve">name of the first form field</doc>
  17611. <type name="utf8" c:type="const char*"/>
  17612. </parameter>
  17613. <parameter name="..." transfer-ownership="none">
  17614. <doc xml:space="preserve">value of @first_field, followed by additional field names
  17615. and values, terminated by %NULL.</doc>
  17616. <varargs/>
  17617. </parameter>
  17618. </parameters>
  17619. </function>
  17620. <function name="form_encode_datalist"
  17621. c:identifier="soup_form_encode_datalist">
  17622. <doc xml:space="preserve">Encodes @form_data_set into a value of type
  17623. "application/x-www-form-urlencoded", as defined in the HTML 4.01
  17624. spec. Unlike soup_form_encode_hash(), this preserves the ordering
  17625. of the form elements, which may be required in some situations.</doc>
  17626. <return-value transfer-ownership="full">
  17627. <doc xml:space="preserve">the encoded form</doc>
  17628. <type name="utf8" c:type="char*"/>
  17629. </return-value>
  17630. <parameters>
  17631. <parameter name="form_data_set" transfer-ownership="none">
  17632. <doc xml:space="preserve">a datalist containing name/value pairs</doc>
  17633. <type name="GLib.Data" c:type="GData**"/>
  17634. </parameter>
  17635. </parameters>
  17636. </function>
  17637. <function name="form_encode_hash" c:identifier="soup_form_encode_hash">
  17638. <doc xml:space="preserve">Encodes @form_data_set into a value of type
  17639. "application/x-www-form-urlencoded", as defined in the HTML 4.01
  17640. spec.
  17641. Note that the HTML spec states that "The control names/values are
  17642. listed in the order they appear in the document." Since this method
  17643. takes a hash table, it cannot enforce that; if you care about the
  17644. ordering of the form fields, use soup_form_encode_datalist().</doc>
  17645. <return-value transfer-ownership="full">
  17646. <doc xml:space="preserve">the encoded form</doc>
  17647. <type name="utf8" c:type="char*"/>
  17648. </return-value>
  17649. <parameters>
  17650. <parameter name="form_data_set" transfer-ownership="none">
  17651. <doc xml:space="preserve">a hash table containing
  17652. name/value pairs (as strings)</doc>
  17653. <type name="GLib.HashTable" c:type="GHashTable*">
  17654. <type name="utf8"/>
  17655. <type name="utf8"/>
  17656. </type>
  17657. </parameter>
  17658. </parameters>
  17659. </function>
  17660. <function name="form_encode_valist"
  17661. c:identifier="soup_form_encode_valist"
  17662. introspectable="0">
  17663. <doc xml:space="preserve">See soup_form_encode(). This is mostly an internal method, used by
  17664. various other methods such as soup_uri_set_query_from_fields() and
  17665. soup_form_request_new().</doc>
  17666. <return-value transfer-ownership="full">
  17667. <doc xml:space="preserve">the encoded form</doc>
  17668. <type name="utf8" c:type="char*"/>
  17669. </return-value>
  17670. <parameters>
  17671. <parameter name="first_field" transfer-ownership="none">
  17672. <doc xml:space="preserve">name of the first form field</doc>
  17673. <type name="utf8" c:type="const char*"/>
  17674. </parameter>
  17675. <parameter name="args" transfer-ownership="none">
  17676. <doc xml:space="preserve">pointer to additional values, as in soup_form_encode()</doc>
  17677. <type name="va_list" c:type="va_list"/>
  17678. </parameter>
  17679. </parameters>
  17680. </function>
  17681. <function name="form_request_new"
  17682. c:identifier="soup_form_request_new"
  17683. introspectable="0">
  17684. <doc xml:space="preserve">Creates a new %SoupMessage and sets it up to send the given data
  17685. to @uri via @method. (That is, if @method is "GET", it will encode
  17686. the form data into @uri's query field, and if @method is "POST", it
  17687. will encode it into the %SoupMessage's request_body.)</doc>
  17688. <return-value transfer-ownership="full">
  17689. <doc xml:space="preserve">the new %SoupMessage</doc>
  17690. <type name="Message" c:type="SoupMessage*"/>
  17691. </return-value>
  17692. <parameters>
  17693. <parameter name="method" transfer-ownership="none">
  17694. <doc xml:space="preserve">the HTTP method, either "GET" or "POST"</doc>
  17695. <type name="utf8" c:type="const char*"/>
  17696. </parameter>
  17697. <parameter name="uri" transfer-ownership="none">
  17698. <doc xml:space="preserve">the URI to send the form data to</doc>
  17699. <type name="utf8" c:type="const char*"/>
  17700. </parameter>
  17701. <parameter name="first_field" transfer-ownership="none">
  17702. <doc xml:space="preserve">name of the first form field</doc>
  17703. <type name="utf8" c:type="const char*"/>
  17704. </parameter>
  17705. <parameter name="..." transfer-ownership="none">
  17706. <doc xml:space="preserve">value of @first_field, followed by additional field names
  17707. and values, terminated by %NULL.</doc>
  17708. <varargs/>
  17709. </parameter>
  17710. </parameters>
  17711. </function>
  17712. <function name="form_request_new_from_datalist"
  17713. c:identifier="soup_form_request_new_from_datalist">
  17714. <doc xml:space="preserve">Creates a new %SoupMessage and sets it up to send @form_data_set to
  17715. @uri via @method, as with soup_form_request_new().</doc>
  17716. <return-value transfer-ownership="full">
  17717. <doc xml:space="preserve">the new %SoupMessage</doc>
  17718. <type name="Message" c:type="SoupMessage*"/>
  17719. </return-value>
  17720. <parameters>
  17721. <parameter name="method" transfer-ownership="none">
  17722. <doc xml:space="preserve">the HTTP method, either "GET" or "POST"</doc>
  17723. <type name="utf8" c:type="const char*"/>
  17724. </parameter>
  17725. <parameter name="uri" transfer-ownership="none">
  17726. <doc xml:space="preserve">the URI to send the form data to</doc>
  17727. <type name="utf8" c:type="const char*"/>
  17728. </parameter>
  17729. <parameter name="form_data_set" transfer-ownership="none">
  17730. <doc xml:space="preserve">the data to send to @uri</doc>
  17731. <type name="GLib.Data" c:type="GData**"/>
  17732. </parameter>
  17733. </parameters>
  17734. </function>
  17735. <function name="form_request_new_from_hash"
  17736. c:identifier="soup_form_request_new_from_hash">
  17737. <doc xml:space="preserve">Creates a new %SoupMessage and sets it up to send @form_data_set to
  17738. @uri via @method, as with soup_form_request_new().</doc>
  17739. <return-value transfer-ownership="full">
  17740. <doc xml:space="preserve">the new %SoupMessage</doc>
  17741. <type name="Message" c:type="SoupMessage*"/>
  17742. </return-value>
  17743. <parameters>
  17744. <parameter name="method" transfer-ownership="none">
  17745. <doc xml:space="preserve">the HTTP method, either "GET" or "POST"</doc>
  17746. <type name="utf8" c:type="const char*"/>
  17747. </parameter>
  17748. <parameter name="uri" transfer-ownership="none">
  17749. <doc xml:space="preserve">the URI to send the form data to</doc>
  17750. <type name="utf8" c:type="const char*"/>
  17751. </parameter>
  17752. <parameter name="form_data_set" transfer-ownership="none">
  17753. <doc xml:space="preserve">the data to send to @uri</doc>
  17754. <type name="GLib.HashTable" c:type="GHashTable*">
  17755. <type name="utf8"/>
  17756. <type name="utf8"/>
  17757. </type>
  17758. </parameter>
  17759. </parameters>
  17760. </function>
  17761. <function name="form_request_new_from_multipart"
  17762. c:identifier="soup_form_request_new_from_multipart"
  17763. version="2.26">
  17764. <doc xml:space="preserve">Creates a new %SoupMessage and sets it up to send @multipart to
  17765. @uri via POST.
  17766. To send a &lt;literal&gt;"multipart/form-data"&lt;/literal&gt; POST, first
  17767. create a #SoupMultipart, using %SOUP_FORM_MIME_TYPE_MULTIPART as
  17768. the MIME type. Then use soup_multipart_append_form_string() and
  17769. soup_multipart_append_form_file() to add the value of each form
  17770. control to the multipart. (These are just convenience methods, and
  17771. you can use soup_multipart_append_part() if you need greater
  17772. control over the part headers.) Finally, call
  17773. soup_form_request_new_from_multipart() to serialize the multipart
  17774. structure and create a #SoupMessage.</doc>
  17775. <return-value transfer-ownership="full">
  17776. <doc xml:space="preserve">the new %SoupMessage</doc>
  17777. <type name="Message" c:type="SoupMessage*"/>
  17778. </return-value>
  17779. <parameters>
  17780. <parameter name="uri" transfer-ownership="none">
  17781. <doc xml:space="preserve">the URI to send the form data to</doc>
  17782. <type name="utf8" c:type="const char*"/>
  17783. </parameter>
  17784. <parameter name="multipart" transfer-ownership="none">
  17785. <doc xml:space="preserve">a "multipart/form-data" #SoupMultipart</doc>
  17786. <type name="Multipart" c:type="SoupMultipart*"/>
  17787. </parameter>
  17788. </parameters>
  17789. </function>
  17790. <function name="header_contains" c:identifier="soup_header_contains">
  17791. <doc xml:space="preserve">Parses @header to see if it contains the token @token (matched
  17792. case-insensitively). Note that this can't be used with lists
  17793. that have qvalues.</doc>
  17794. <return-value transfer-ownership="none">
  17795. <doc xml:space="preserve">whether or not @header contains @token</doc>
  17796. <type name="gboolean" c:type="gboolean"/>
  17797. </return-value>
  17798. <parameters>
  17799. <parameter name="header" transfer-ownership="none">
  17800. <doc xml:space="preserve">An HTTP header suitable for parsing with
  17801. soup_header_parse_list()</doc>
  17802. <type name="utf8" c:type="const char*"/>
  17803. </parameter>
  17804. <parameter name="token" transfer-ownership="none">
  17805. <doc xml:space="preserve">a token</doc>
  17806. <type name="utf8" c:type="const char*"/>
  17807. </parameter>
  17808. </parameters>
  17809. </function>
  17810. <function name="header_free_list"
  17811. c:identifier="soup_header_free_list"
  17812. introspectable="0">
  17813. <doc xml:space="preserve">Frees @list.</doc>
  17814. <return-value transfer-ownership="none">
  17815. <type name="none" c:type="void"/>
  17816. </return-value>
  17817. <parameters>
  17818. <parameter name="list" transfer-ownership="none">
  17819. <doc xml:space="preserve">a #GSList returned from soup_header_parse_list() or
  17820. soup_header_parse_quality_list()</doc>
  17821. <type name="GLib.SList" c:type="GSList*">
  17822. <type name="gpointer" c:type="gpointer"/>
  17823. </type>
  17824. </parameter>
  17825. </parameters>
  17826. </function>
  17827. <function name="header_free_param_list"
  17828. c:identifier="soup_header_free_param_list">
  17829. <doc xml:space="preserve">Frees @param_list.</doc>
  17830. <return-value transfer-ownership="none">
  17831. <type name="none" c:type="void"/>
  17832. </return-value>
  17833. <parameters>
  17834. <parameter name="param_list" transfer-ownership="none">
  17835. <doc xml:space="preserve">a #GHashTable returned from soup_header_parse_param_list()
  17836. or soup_header_parse_semi_param_list()</doc>
  17837. <type name="GLib.HashTable" c:type="GHashTable*">
  17838. <type name="utf8"/>
  17839. <type name="utf8"/>
  17840. </type>
  17841. </parameter>
  17842. </parameters>
  17843. </function>
  17844. <function name="header_g_string_append_param"
  17845. c:identifier="soup_header_g_string_append_param"
  17846. version="2.26">
  17847. <doc xml:space="preserve">Appends something like &lt;literal&gt;@name=@value&lt;/literal&gt; to @string,
  17848. taking care to quote @value if needed, and if so, to escape any
  17849. quotes or backslashes in @value.
  17850. Alternatively, if @value is a non-ASCII UTF-8 string, it will be
  17851. appended using RFC5987 syntax. Although in theory this is supposed
  17852. to work anywhere in HTTP that uses this style of parameter, in
  17853. reality, it can only be used portably with the Content-Disposition
  17854. "filename" parameter.
  17855. If @value is %NULL, this will just append @name to @string.</doc>
  17856. <return-value transfer-ownership="none">
  17857. <type name="none" c:type="void"/>
  17858. </return-value>
  17859. <parameters>
  17860. <parameter name="string" transfer-ownership="none">
  17861. <doc xml:space="preserve">a #GString being used to construct an HTTP header value</doc>
  17862. <type name="GLib.String" c:type="GString*"/>
  17863. </parameter>
  17864. <parameter name="name" transfer-ownership="none">
  17865. <doc xml:space="preserve">a parameter name</doc>
  17866. <type name="utf8" c:type="const char*"/>
  17867. </parameter>
  17868. <parameter name="value" transfer-ownership="none">
  17869. <doc xml:space="preserve">a parameter value, or %NULL</doc>
  17870. <type name="utf8" c:type="const char*"/>
  17871. </parameter>
  17872. </parameters>
  17873. </function>
  17874. <function name="header_g_string_append_param_quoted"
  17875. c:identifier="soup_header_g_string_append_param_quoted"
  17876. version="2.30">
  17877. <doc xml:space="preserve">Appends something like &lt;literal&gt;@name="@value"&lt;/literal&gt; to
  17878. @string, taking care to escape any quotes or backslashes in @value.
  17879. If @value is (non-ASCII) UTF-8, this will instead use RFC 5987
  17880. encoding, just like soup_header_g_string_append_param().</doc>
  17881. <return-value transfer-ownership="none">
  17882. <type name="none" c:type="void"/>
  17883. </return-value>
  17884. <parameters>
  17885. <parameter name="string" transfer-ownership="none">
  17886. <doc xml:space="preserve">a #GString being used to construct an HTTP header value</doc>
  17887. <type name="GLib.String" c:type="GString*"/>
  17888. </parameter>
  17889. <parameter name="name" transfer-ownership="none">
  17890. <doc xml:space="preserve">a parameter name</doc>
  17891. <type name="utf8" c:type="const char*"/>
  17892. </parameter>
  17893. <parameter name="value" transfer-ownership="none">
  17894. <doc xml:space="preserve">a parameter value</doc>
  17895. <type name="utf8" c:type="const char*"/>
  17896. </parameter>
  17897. </parameters>
  17898. </function>
  17899. <function name="header_parse_list" c:identifier="soup_header_parse_list">
  17900. <doc xml:space="preserve">Parses a header whose content is described by RFC2616 as
  17901. "#something", where "something" does not itself contain commas,
  17902. except as part of quoted-strings.</doc>
  17903. <return-value transfer-ownership="full">
  17904. <doc xml:space="preserve">a #GSList of
  17905. list elements, as allocated strings</doc>
  17906. <type name="GLib.SList" c:type="GSList*">
  17907. <type name="utf8"/>
  17908. </type>
  17909. </return-value>
  17910. <parameters>
  17911. <parameter name="header" transfer-ownership="none">
  17912. <doc xml:space="preserve">a header value</doc>
  17913. <type name="utf8" c:type="const char*"/>
  17914. </parameter>
  17915. </parameters>
  17916. </function>
  17917. <function name="header_parse_param_list"
  17918. c:identifier="soup_header_parse_param_list">
  17919. <doc xml:space="preserve">Parses a header which is a comma-delimited list of something like:
  17920. &lt;literal&gt;token [ "=" ( token | quoted-string ) ]&lt;/literal&gt;.
  17921. Tokens that don't have an associated value will still be added to
  17922. the resulting hash table, but with a %NULL value.
  17923. This also handles RFC5987 encoding (which in HTTP is mostly used
  17924. for giving UTF8-encoded filenames in the Content-Disposition
  17925. header).</doc>
  17926. <return-value transfer-ownership="full">
  17927. <doc xml:space="preserve">a
  17928. #GHashTable of list elements, which can be freed with
  17929. soup_header_free_param_list().</doc>
  17930. <type name="GLib.HashTable" c:type="GHashTable*">
  17931. <type name="utf8"/>
  17932. <type name="utf8"/>
  17933. </type>
  17934. </return-value>
  17935. <parameters>
  17936. <parameter name="header" transfer-ownership="none">
  17937. <doc xml:space="preserve">a header value</doc>
  17938. <type name="utf8" c:type="const char*"/>
  17939. </parameter>
  17940. </parameters>
  17941. </function>
  17942. <function name="header_parse_quality_list"
  17943. c:identifier="soup_header_parse_quality_list">
  17944. <doc xml:space="preserve">Parses a header whose content is a list of items with optional
  17945. "qvalue"s (eg, Accept, Accept-Charset, Accept-Encoding,
  17946. Accept-Language, TE).
  17947. If @unacceptable is not %NULL, then on return, it will contain the
  17948. items with qvalue 0. Either way, those items will be removed from
  17949. the main list.</doc>
  17950. <return-value transfer-ownership="full">
  17951. <doc xml:space="preserve">a #GSList of
  17952. acceptable values (as allocated strings), highest-qvalue first.</doc>
  17953. <type name="GLib.SList" c:type="GSList*">
  17954. <type name="utf8"/>
  17955. </type>
  17956. </return-value>
  17957. <parameters>
  17958. <parameter name="header" transfer-ownership="none">
  17959. <doc xml:space="preserve">a header value</doc>
  17960. <type name="utf8" c:type="const char*"/>
  17961. </parameter>
  17962. <parameter name="unacceptable"
  17963. direction="out"
  17964. caller-allocates="0"
  17965. transfer-ownership="full"
  17966. optional="1"
  17967. allow-none="1">
  17968. <doc xml:space="preserve">on
  17969. return, will contain a list of unacceptable values</doc>
  17970. <type name="GLib.SList" c:type="GSList**">
  17971. <type name="utf8"/>
  17972. </type>
  17973. </parameter>
  17974. </parameters>
  17975. </function>
  17976. <function name="header_parse_semi_param_list"
  17977. c:identifier="soup_header_parse_semi_param_list"
  17978. version="2.24">
  17979. <doc xml:space="preserve">Parses a header which is a semicolon-delimited list of something
  17980. like: &lt;literal&gt;token [ "=" ( token | quoted-string ) ]&lt;/literal&gt;.
  17981. Tokens that don't have an associated value will still be added to
  17982. the resulting hash table, but with a %NULL value.
  17983. This also handles RFC5987 encoding (which in HTTP is mostly used
  17984. for giving UTF8-encoded filenames in the Content-Disposition
  17985. header).</doc>
  17986. <return-value transfer-ownership="full">
  17987. <doc xml:space="preserve">a
  17988. #GHashTable of list elements, which can be freed with
  17989. soup_header_free_param_list().</doc>
  17990. <type name="GLib.HashTable" c:type="GHashTable*">
  17991. <type name="utf8"/>
  17992. <type name="utf8"/>
  17993. </type>
  17994. </return-value>
  17995. <parameters>
  17996. <parameter name="header" transfer-ownership="none">
  17997. <doc xml:space="preserve">a header value</doc>
  17998. <type name="utf8" c:type="const char*"/>
  17999. </parameter>
  18000. </parameters>
  18001. </function>
  18002. <function name="headers_parse"
  18003. c:identifier="soup_headers_parse"
  18004. version="2.26">
  18005. <doc xml:space="preserve">Parses the headers of an HTTP request or response in @str and
  18006. stores the results in @dest. Beware that @dest may be modified even
  18007. on failure.
  18008. This is a low-level method; normally you would use
  18009. soup_headers_parse_request() or soup_headers_parse_response().</doc>
  18010. <return-value transfer-ownership="none">
  18011. <doc xml:space="preserve">success or failure</doc>
  18012. <type name="gboolean" c:type="gboolean"/>
  18013. </return-value>
  18014. <parameters>
  18015. <parameter name="str" transfer-ownership="none">
  18016. <doc xml:space="preserve">the header string (including the Request-Line or Status-Line,
  18017. but not the trailing blank line)</doc>
  18018. <type name="utf8" c:type="const char*"/>
  18019. </parameter>
  18020. <parameter name="len" transfer-ownership="none">
  18021. <doc xml:space="preserve">length of @str</doc>
  18022. <type name="gint" c:type="int"/>
  18023. </parameter>
  18024. <parameter name="dest" transfer-ownership="none">
  18025. <doc xml:space="preserve">#SoupMessageHeaders to store the header values in</doc>
  18026. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  18027. </parameter>
  18028. </parameters>
  18029. </function>
  18030. <function name="headers_parse_request"
  18031. c:identifier="soup_headers_parse_request">
  18032. <doc xml:space="preserve">Parses the headers of an HTTP request in @str and stores the
  18033. results in @req_method, @req_path, @ver, and @req_headers.
  18034. Beware that @req_headers may be modified even on failure.</doc>
  18035. <return-value transfer-ownership="none">
  18036. <doc xml:space="preserve">%SOUP_STATUS_OK if the headers could be parsed, or an
  18037. HTTP error to be returned to the client if they could not be.</doc>
  18038. <type name="guint" c:type="guint"/>
  18039. </return-value>
  18040. <parameters>
  18041. <parameter name="str" transfer-ownership="none">
  18042. <doc xml:space="preserve">the headers (up to, but not including, the trailing blank line)</doc>
  18043. <type name="utf8" c:type="const char*"/>
  18044. </parameter>
  18045. <parameter name="len" transfer-ownership="none">
  18046. <doc xml:space="preserve">length of @str</doc>
  18047. <type name="gint" c:type="int"/>
  18048. </parameter>
  18049. <parameter name="req_headers" transfer-ownership="none">
  18050. <doc xml:space="preserve">#SoupMessageHeaders to store the header values in</doc>
  18051. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  18052. </parameter>
  18053. <parameter name="req_method"
  18054. direction="out"
  18055. caller-allocates="0"
  18056. transfer-ownership="full"
  18057. optional="1"
  18058. allow-none="1">
  18059. <doc xml:space="preserve">if non-%NULL, will be filled in with the
  18060. request method</doc>
  18061. <type name="utf8" c:type="char**"/>
  18062. </parameter>
  18063. <parameter name="req_path"
  18064. direction="out"
  18065. caller-allocates="0"
  18066. transfer-ownership="full"
  18067. optional="1"
  18068. allow-none="1">
  18069. <doc xml:space="preserve">if non-%NULL, will be filled in with the
  18070. request path</doc>
  18071. <type name="utf8" c:type="char**"/>
  18072. </parameter>
  18073. <parameter name="ver"
  18074. direction="out"
  18075. caller-allocates="0"
  18076. transfer-ownership="full"
  18077. optional="1"
  18078. allow-none="1">
  18079. <doc xml:space="preserve">if non-%NULL, will be filled in with the HTTP
  18080. version</doc>
  18081. <type name="HTTPVersion" c:type="SoupHTTPVersion*"/>
  18082. </parameter>
  18083. </parameters>
  18084. </function>
  18085. <function name="headers_parse_response"
  18086. c:identifier="soup_headers_parse_response">
  18087. <doc xml:space="preserve">Parses the headers of an HTTP response in @str and stores the
  18088. results in @ver, @status_code, @reason_phrase, and @headers.
  18089. Beware that @headers may be modified even on failure.</doc>
  18090. <return-value transfer-ownership="none">
  18091. <doc xml:space="preserve">success or failure.</doc>
  18092. <type name="gboolean" c:type="gboolean"/>
  18093. </return-value>
  18094. <parameters>
  18095. <parameter name="str" transfer-ownership="none">
  18096. <doc xml:space="preserve">the headers (up to, but not including, the trailing blank line)</doc>
  18097. <type name="utf8" c:type="const char*"/>
  18098. </parameter>
  18099. <parameter name="len" transfer-ownership="none">
  18100. <doc xml:space="preserve">length of @str</doc>
  18101. <type name="gint" c:type="int"/>
  18102. </parameter>
  18103. <parameter name="headers" transfer-ownership="none">
  18104. <doc xml:space="preserve">#SoupMessageHeaders to store the header values in</doc>
  18105. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  18106. </parameter>
  18107. <parameter name="ver"
  18108. direction="out"
  18109. caller-allocates="0"
  18110. transfer-ownership="full"
  18111. optional="1"
  18112. allow-none="1">
  18113. <doc xml:space="preserve">if non-%NULL, will be filled in with the HTTP
  18114. version</doc>
  18115. <type name="HTTPVersion" c:type="SoupHTTPVersion*"/>
  18116. </parameter>
  18117. <parameter name="status_code"
  18118. direction="out"
  18119. caller-allocates="0"
  18120. transfer-ownership="full"
  18121. optional="1"
  18122. allow-none="1">
  18123. <doc xml:space="preserve">if non-%NULL, will be filled in with
  18124. the status code</doc>
  18125. <type name="guint" c:type="guint*"/>
  18126. </parameter>
  18127. <parameter name="reason_phrase"
  18128. direction="out"
  18129. caller-allocates="0"
  18130. transfer-ownership="full"
  18131. optional="1"
  18132. allow-none="1">
  18133. <doc xml:space="preserve">if non-%NULL, will be filled in with
  18134. the reason phrase</doc>
  18135. <type name="utf8" c:type="char**"/>
  18136. </parameter>
  18137. </parameters>
  18138. </function>
  18139. <function name="headers_parse_status_line"
  18140. c:identifier="soup_headers_parse_status_line">
  18141. <doc xml:space="preserve">Parses the HTTP Status-Line string in @status_line into @ver,
  18142. @status_code, and @reason_phrase. @status_line must be terminated by
  18143. either "\0" or "\r\n".</doc>
  18144. <return-value transfer-ownership="none">
  18145. <doc xml:space="preserve">%TRUE if @status_line was parsed successfully.</doc>
  18146. <type name="gboolean" c:type="gboolean"/>
  18147. </return-value>
  18148. <parameters>
  18149. <parameter name="status_line" transfer-ownership="none">
  18150. <doc xml:space="preserve">an HTTP Status-Line</doc>
  18151. <type name="utf8" c:type="const char*"/>
  18152. </parameter>
  18153. <parameter name="ver"
  18154. direction="out"
  18155. caller-allocates="0"
  18156. transfer-ownership="full"
  18157. optional="1"
  18158. allow-none="1">
  18159. <doc xml:space="preserve">if non-%NULL, will be filled in with the HTTP
  18160. version</doc>
  18161. <type name="HTTPVersion" c:type="SoupHTTPVersion*"/>
  18162. </parameter>
  18163. <parameter name="status_code"
  18164. direction="out"
  18165. caller-allocates="0"
  18166. transfer-ownership="full"
  18167. optional="1"
  18168. allow-none="1">
  18169. <doc xml:space="preserve">if non-%NULL, will be filled in with
  18170. the status code</doc>
  18171. <type name="guint" c:type="guint*"/>
  18172. </parameter>
  18173. <parameter name="reason_phrase"
  18174. direction="out"
  18175. caller-allocates="0"
  18176. transfer-ownership="full"
  18177. optional="1"
  18178. allow-none="1">
  18179. <doc xml:space="preserve">if non-%NULL, will be filled in with
  18180. the reason phrase</doc>
  18181. <type name="utf8" c:type="char**"/>
  18182. </parameter>
  18183. </parameters>
  18184. </function>
  18185. <function name="http_error_quark" c:identifier="soup_http_error_quark">
  18186. <return-value transfer-ownership="none">
  18187. <type name="GLib.Quark" c:type="GQuark"/>
  18188. </return-value>
  18189. </function>
  18190. <function name="message_headers_iter_init"
  18191. c:identifier="soup_message_headers_iter_init"
  18192. moved-to="MessageHeadersIter.init">
  18193. <doc xml:space="preserve">Initializes @iter for iterating @hdrs.</doc>
  18194. <return-value transfer-ownership="none">
  18195. <type name="none" c:type="void"/>
  18196. </return-value>
  18197. <parameters>
  18198. <parameter name="iter"
  18199. direction="out"
  18200. caller-allocates="1"
  18201. transfer-ownership="none">
  18202. <doc xml:space="preserve">a pointer to a %SoupMessageHeadersIter
  18203. structure</doc>
  18204. <type name="MessageHeadersIter" c:type="SoupMessageHeadersIter*"/>
  18205. </parameter>
  18206. <parameter name="hdrs" transfer-ownership="none">
  18207. <doc xml:space="preserve">a %SoupMessageHeaders</doc>
  18208. <type name="MessageHeaders" c:type="SoupMessageHeaders*"/>
  18209. </parameter>
  18210. </parameters>
  18211. </function>
  18212. <function name="request_error_quark"
  18213. c:identifier="soup_request_error_quark"
  18214. moved-to="RequestError.quark">
  18215. <return-value transfer-ownership="none">
  18216. <type name="GLib.Quark" c:type="GQuark"/>
  18217. </return-value>
  18218. </function>
  18219. <function name="requester_error_quark"
  18220. c:identifier="soup_requester_error_quark"
  18221. moved-to="RequesterError.quark">
  18222. <return-value transfer-ownership="none">
  18223. <type name="GLib.Quark" c:type="GQuark"/>
  18224. </return-value>
  18225. </function>
  18226. <function name="status_get_phrase"
  18227. c:identifier="soup_status_get_phrase"
  18228. moved-to="Status.get_phrase">
  18229. <doc xml:space="preserve">Looks up the stock HTTP description of @status_code. This is used
  18230. by soup_message_set_status() to get the correct text to go with a
  18231. given status code.
  18232. &lt;emphasis&gt;There is no reason for you to ever use this
  18233. function.&lt;/emphasis&gt; If you wanted the textual description for the
  18234. #SoupMessage:status_code of a given #SoupMessage, you should just
  18235. look at the message's #SoupMessage:reason_phrase. However, you
  18236. should only do that for use in debugging messages; HTTP reason
  18237. phrases are not localized, and are not generally very descriptive
  18238. anyway, and so they should never be presented to the user directly.
  18239. Instead, you should create you own error messages based on the
  18240. status code, and on what you were trying to do.</doc>
  18241. <return-value transfer-ownership="none">
  18242. <doc xml:space="preserve">the (terse, English) description of @status_code</doc>
  18243. <type name="utf8" c:type="const char*"/>
  18244. </return-value>
  18245. <parameters>
  18246. <parameter name="status_code" transfer-ownership="none">
  18247. <doc xml:space="preserve">an HTTP status code</doc>
  18248. <type name="guint" c:type="guint"/>
  18249. </parameter>
  18250. </parameters>
  18251. </function>
  18252. <function name="status_proxify"
  18253. c:identifier="soup_status_proxify"
  18254. moved-to="Status.proxify"
  18255. version="2.26">
  18256. <doc xml:space="preserve">Turns %SOUP_STATUS_CANT_RESOLVE into
  18257. %SOUP_STATUS_CANT_RESOLVE_PROXY and %SOUP_STATUS_CANT_CONNECT into
  18258. %SOUP_STATUS_CANT_CONNECT_PROXY. Other status codes are passed
  18259. through unchanged.</doc>
  18260. <return-value transfer-ownership="none">
  18261. <doc xml:space="preserve">the "proxified" equivalent of @status_code.</doc>
  18262. <type name="guint" c:type="guint"/>
  18263. </return-value>
  18264. <parameters>
  18265. <parameter name="status_code" transfer-ownership="none">
  18266. <doc xml:space="preserve">a status code</doc>
  18267. <type name="guint" c:type="guint"/>
  18268. </parameter>
  18269. </parameters>
  18270. </function>
  18271. <function name="str_case_equal" c:identifier="soup_str_case_equal">
  18272. <doc xml:space="preserve">Compares @v1 and @v2 in a case-insensitive manner</doc>
  18273. <return-value transfer-ownership="none">
  18274. <doc xml:space="preserve">%TRUE if they are equal (modulo case)</doc>
  18275. <type name="gboolean" c:type="gboolean"/>
  18276. </return-value>
  18277. <parameters>
  18278. <parameter name="v1"
  18279. transfer-ownership="none"
  18280. nullable="1"
  18281. allow-none="1">
  18282. <doc xml:space="preserve">an ASCII string</doc>
  18283. <type name="gpointer" c:type="gconstpointer"/>
  18284. </parameter>
  18285. <parameter name="v2"
  18286. transfer-ownership="none"
  18287. nullable="1"
  18288. allow-none="1">
  18289. <doc xml:space="preserve">another ASCII string</doc>
  18290. <type name="gpointer" c:type="gconstpointer"/>
  18291. </parameter>
  18292. </parameters>
  18293. </function>
  18294. <function name="str_case_hash" c:identifier="soup_str_case_hash">
  18295. <doc xml:space="preserve">Hashes @key in a case-insensitive manner.</doc>
  18296. <return-value transfer-ownership="none">
  18297. <doc xml:space="preserve">the hash code.</doc>
  18298. <type name="guint" c:type="guint"/>
  18299. </return-value>
  18300. <parameters>
  18301. <parameter name="key"
  18302. transfer-ownership="none"
  18303. nullable="1"
  18304. allow-none="1">
  18305. <doc xml:space="preserve">ASCII string to hash</doc>
  18306. <type name="gpointer" c:type="gconstpointer"/>
  18307. </parameter>
  18308. </parameters>
  18309. </function>
  18310. <function name="tld_domain_is_public_suffix"
  18311. c:identifier="soup_tld_domain_is_public_suffix"
  18312. version="2.40">
  18313. <doc xml:space="preserve">Looks whether the @domain passed as argument is a public domain
  18314. suffix (.org, .com, .co.uk, etc) or not.
  18315. Prior to libsoup 2.46, this function required that @domain be in
  18316. UTF-8 if it was an IDN. From 2.46 on, the name can be in either
  18317. UTF-8 or ASCII format (and the return value will be in the same
  18318. format).</doc>
  18319. <return-value transfer-ownership="none">
  18320. <doc xml:space="preserve">%TRUE if it is a public domain, %FALSE otherwise.</doc>
  18321. <type name="gboolean" c:type="gboolean"/>
  18322. </return-value>
  18323. <parameters>
  18324. <parameter name="domain" transfer-ownership="none">
  18325. <doc xml:space="preserve">a domain name</doc>
  18326. <type name="utf8" c:type="const char*"/>
  18327. </parameter>
  18328. </parameters>
  18329. </function>
  18330. <function name="tld_error_quark"
  18331. c:identifier="soup_tld_error_quark"
  18332. moved-to="TLDError.quark">
  18333. <return-value transfer-ownership="none">
  18334. <type name="GLib.Quark" c:type="GQuark"/>
  18335. </return-value>
  18336. </function>
  18337. <function name="tld_get_base_domain"
  18338. c:identifier="soup_tld_get_base_domain"
  18339. version="2.40"
  18340. throws="1">
  18341. <doc xml:space="preserve">Finds the base domain for a given @hostname. The base domain is
  18342. composed by the top level domain (such as .org, .com, .co.uk, etc)
  18343. plus the second level domain, for example for myhost.mydomain.com
  18344. it will return mydomain.com.
  18345. Note that %NULL will be returned for private URLs (those not ending
  18346. with any well known TLD) because choosing a base domain for them
  18347. would be totally arbitrary.
  18348. Prior to libsoup 2.46, this function required that @hostname be in
  18349. UTF-8 if it was an IDN. From 2.46 on, the name can be in either
  18350. UTF-8 or ASCII format (and the return value will be in the same
  18351. format).</doc>
  18352. <return-value transfer-ownership="none">
  18353. <doc xml:space="preserve">a pointer to the start of the base domain in @hostname. If
  18354. an error occurs, %NULL will be returned and @error set.</doc>
  18355. <type name="utf8" c:type="const char*"/>
  18356. </return-value>
  18357. <parameters>
  18358. <parameter name="hostname" transfer-ownership="none">
  18359. <doc xml:space="preserve">a hostname</doc>
  18360. <type name="utf8" c:type="const char*"/>
  18361. </parameter>
  18362. </parameters>
  18363. </function>
  18364. <function name="uri_decode"
  18365. c:identifier="soup_uri_decode"
  18366. moved-to="URI.decode">
  18367. <doc xml:space="preserve">Fully %&lt;!-- --&gt;-decodes @part.
  18368. In the past, this would return %NULL if @part contained invalid
  18369. percent-encoding, but now it just ignores the problem (as
  18370. soup_uri_new() already did).</doc>
  18371. <return-value transfer-ownership="full">
  18372. <doc xml:space="preserve">the decoded URI part.</doc>
  18373. <type name="utf8" c:type="char*"/>
  18374. </return-value>
  18375. <parameters>
  18376. <parameter name="part" transfer-ownership="none">
  18377. <doc xml:space="preserve">a URI part</doc>
  18378. <type name="utf8" c:type="const char*"/>
  18379. </parameter>
  18380. </parameters>
  18381. </function>
  18382. <function name="uri_encode"
  18383. c:identifier="soup_uri_encode"
  18384. moved-to="URI.encode">
  18385. <doc xml:space="preserve">This %&lt;!-- --&gt;-encodes the given URI part and returns the escaped
  18386. version in allocated memory, which the caller must free when it is
  18387. done.</doc>
  18388. <return-value transfer-ownership="full">
  18389. <doc xml:space="preserve">the encoded URI part</doc>
  18390. <type name="utf8" c:type="char*"/>
  18391. </return-value>
  18392. <parameters>
  18393. <parameter name="part" transfer-ownership="none">
  18394. <doc xml:space="preserve">a URI part</doc>
  18395. <type name="utf8" c:type="const char*"/>
  18396. </parameter>
  18397. <parameter name="escape_extra"
  18398. transfer-ownership="none"
  18399. nullable="1"
  18400. allow-none="1">
  18401. <doc xml:space="preserve">additional reserved characters to
  18402. escape (or %NULL)</doc>
  18403. <type name="utf8" c:type="const char*"/>
  18404. </parameter>
  18405. </parameters>
  18406. </function>
  18407. <function name="uri_normalize"
  18408. c:identifier="soup_uri_normalize"
  18409. moved-to="URI.normalize">
  18410. <doc xml:space="preserve">%&lt;!-- --&gt;-decodes any "unreserved" characters (or characters in
  18411. @unescape_extra) in @part, and %&lt;!-- --&gt;-encodes any non-ASCII
  18412. characters, spaces, and non-printing characters in @part.
  18413. "Unreserved" characters are those that are not allowed to be used
  18414. for punctuation according to the URI spec. For example, letters are
  18415. unreserved, so soup_uri_normalize() will turn
  18416. &lt;literal&gt;http://example.com/foo/b%&lt;!-- --&gt;61r&lt;/literal&gt; into
  18417. &lt;literal&gt;http://example.com/foo/bar&lt;/literal&gt;, which is guaranteed
  18418. to mean the same thing. However, "/" is "reserved", so
  18419. &lt;literal&gt;http://example.com/foo%&lt;!-- --&gt;2Fbar&lt;/literal&gt; would not
  18420. be changed, because it might mean something different to the
  18421. server.
  18422. In the past, this would return %NULL if @part contained invalid
  18423. percent-encoding, but now it just ignores the problem (as
  18424. soup_uri_new() already did).</doc>
  18425. <return-value transfer-ownership="full">
  18426. <doc xml:space="preserve">the normalized URI part</doc>
  18427. <type name="utf8" c:type="char*"/>
  18428. </return-value>
  18429. <parameters>
  18430. <parameter name="part" transfer-ownership="none">
  18431. <doc xml:space="preserve">a URI part</doc>
  18432. <type name="utf8" c:type="const char*"/>
  18433. </parameter>
  18434. <parameter name="unescape_extra"
  18435. transfer-ownership="none"
  18436. nullable="1"
  18437. allow-none="1">
  18438. <doc xml:space="preserve">reserved characters to unescape (or %NULL)</doc>
  18439. <type name="utf8" c:type="const char*"/>
  18440. </parameter>
  18441. </parameters>
  18442. </function>
  18443. <function name="value_array_append"
  18444. c:identifier="soup_value_array_append"
  18445. introspectable="0"
  18446. deprecated="1">
  18447. <doc xml:space="preserve">Appends the provided value of type @type to @array as with
  18448. g_value_array_append(). (The provided data is copied rather than
  18449. being inserted directly.)</doc>
  18450. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18451. <return-value transfer-ownership="none">
  18452. <type name="none" c:type="void"/>
  18453. </return-value>
  18454. <parameters>
  18455. <parameter name="array" transfer-ownership="none">
  18456. <doc xml:space="preserve">a #GValueArray</doc>
  18457. <type name="GObject.ValueArray" c:type="GValueArray*"/>
  18458. </parameter>
  18459. <parameter name="type" transfer-ownership="none">
  18460. <doc xml:space="preserve">a #GType</doc>
  18461. <type name="GType" c:type="GType"/>
  18462. </parameter>
  18463. <parameter name="..." transfer-ownership="none">
  18464. <doc xml:space="preserve">a value of type @type</doc>
  18465. <varargs/>
  18466. </parameter>
  18467. </parameters>
  18468. </function>
  18469. <function name="value_array_append_vals"
  18470. c:identifier="soup_value_array_append_vals"
  18471. introspectable="0"
  18472. deprecated="1">
  18473. <doc xml:space="preserve">Appends the provided values into @array as with
  18474. g_value_array_append(). (The provided data is copied rather than
  18475. being inserted directly.)</doc>
  18476. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18477. <return-value transfer-ownership="none">
  18478. <type name="none" c:type="void"/>
  18479. </return-value>
  18480. <parameters>
  18481. <parameter name="array" transfer-ownership="none">
  18482. <doc xml:space="preserve">a #GValueArray</doc>
  18483. <type name="GObject.ValueArray" c:type="GValueArray*"/>
  18484. </parameter>
  18485. <parameter name="first_type" transfer-ownership="none">
  18486. <doc xml:space="preserve">the type of the first value to add</doc>
  18487. <type name="GType" c:type="GType"/>
  18488. </parameter>
  18489. <parameter name="..." transfer-ownership="none">
  18490. <doc xml:space="preserve">the first value to add, followed by other type/value
  18491. pairs, terminated by %G_TYPE_INVALID</doc>
  18492. <varargs/>
  18493. </parameter>
  18494. </parameters>
  18495. </function>
  18496. <function name="value_array_from_args"
  18497. c:identifier="soup_value_array_from_args"
  18498. introspectable="0"
  18499. deprecated="1">
  18500. <doc xml:space="preserve">Creates a #GValueArray from the provided arguments, which must
  18501. consist of pairs of a #GType and a value of that type, terminated
  18502. by %G_TYPE_INVALID. (The array will contain copies of the provided
  18503. data rather than pointing to the passed-in data directly.)</doc>
  18504. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18505. <return-value transfer-ownership="full" nullable="1">
  18506. <doc xml:space="preserve">a new #GValueArray, or %NULL if an error
  18507. occurred.</doc>
  18508. <type name="GObject.ValueArray" c:type="GValueArray*"/>
  18509. </return-value>
  18510. <parameters>
  18511. <parameter name="args" transfer-ownership="none">
  18512. <doc xml:space="preserve">arguments to create a #GValueArray from</doc>
  18513. <type name="va_list" c:type="va_list"/>
  18514. </parameter>
  18515. </parameters>
  18516. </function>
  18517. <function name="value_array_get_nth"
  18518. c:identifier="soup_value_array_get_nth"
  18519. introspectable="0"
  18520. deprecated="1">
  18521. <doc xml:space="preserve">Gets the @index_ element of @array and stores its value into the
  18522. provided location.</doc>
  18523. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18524. <return-value transfer-ownership="none">
  18525. <doc xml:space="preserve">%TRUE if @array contained a value with index @index_
  18526. and type @type, %FALSE if not.</doc>
  18527. <type name="gboolean" c:type="gboolean"/>
  18528. </return-value>
  18529. <parameters>
  18530. <parameter name="array" transfer-ownership="none">
  18531. <doc xml:space="preserve">a #GValueArray</doc>
  18532. <type name="GObject.ValueArray" c:type="GValueArray*"/>
  18533. </parameter>
  18534. <parameter name="index_" transfer-ownership="none">
  18535. <doc xml:space="preserve">the index to look up</doc>
  18536. <type name="guint" c:type="guint"/>
  18537. </parameter>
  18538. <parameter name="type" transfer-ownership="none">
  18539. <doc xml:space="preserve">a #GType</doc>
  18540. <type name="GType" c:type="GType"/>
  18541. </parameter>
  18542. <parameter name="..." transfer-ownership="none">
  18543. <doc xml:space="preserve">a value of type pointer-to-@type</doc>
  18544. <varargs/>
  18545. </parameter>
  18546. </parameters>
  18547. </function>
  18548. <function name="value_array_insert"
  18549. c:identifier="soup_value_array_insert"
  18550. introspectable="0"
  18551. deprecated="1">
  18552. <doc xml:space="preserve">Inserts the provided value of type @type into @array as with
  18553. g_value_array_insert(). (The provided data is copied rather than
  18554. being inserted directly.)</doc>
  18555. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18556. <return-value transfer-ownership="none">
  18557. <type name="none" c:type="void"/>
  18558. </return-value>
  18559. <parameters>
  18560. <parameter name="array" transfer-ownership="none">
  18561. <doc xml:space="preserve">a #GValueArray</doc>
  18562. <type name="GObject.ValueArray" c:type="GValueArray*"/>
  18563. </parameter>
  18564. <parameter name="index_" transfer-ownership="none">
  18565. <doc xml:space="preserve">the index to insert at</doc>
  18566. <type name="guint" c:type="guint"/>
  18567. </parameter>
  18568. <parameter name="type" transfer-ownership="none">
  18569. <doc xml:space="preserve">a #GType</doc>
  18570. <type name="GType" c:type="GType"/>
  18571. </parameter>
  18572. <parameter name="..." transfer-ownership="none">
  18573. <doc xml:space="preserve">a value of type @type</doc>
  18574. <varargs/>
  18575. </parameter>
  18576. </parameters>
  18577. </function>
  18578. <function name="value_array_new"
  18579. c:identifier="soup_value_array_new"
  18580. deprecated="1">
  18581. <doc xml:space="preserve">Creates a new %GValueArray. (This is just a wrapper around
  18582. g_value_array_new(), for naming consistency purposes.)</doc>
  18583. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18584. <return-value transfer-ownership="full">
  18585. <doc xml:space="preserve">a new %GValueArray</doc>
  18586. <type name="GObject.ValueArray" c:type="GValueArray*"/>
  18587. </return-value>
  18588. </function>
  18589. <function name="value_array_new_with_vals"
  18590. c:identifier="soup_value_array_new_with_vals"
  18591. introspectable="0"
  18592. deprecated="1">
  18593. <doc xml:space="preserve">Creates a new %GValueArray and copies the provided values
  18594. into it.</doc>
  18595. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18596. <return-value transfer-ownership="full">
  18597. <doc xml:space="preserve">a new %GValueArray</doc>
  18598. <type name="GObject.ValueArray" c:type="GValueArray*"/>
  18599. </return-value>
  18600. <parameters>
  18601. <parameter name="first_type" transfer-ownership="none">
  18602. <doc xml:space="preserve">the type of the first value to add</doc>
  18603. <type name="GType" c:type="GType"/>
  18604. </parameter>
  18605. <parameter name="..." transfer-ownership="none">
  18606. <doc xml:space="preserve">the first value to add, followed by other type/value
  18607. pairs, terminated by %G_TYPE_INVALID</doc>
  18608. <varargs/>
  18609. </parameter>
  18610. </parameters>
  18611. </function>
  18612. <function name="value_array_to_args"
  18613. c:identifier="soup_value_array_to_args"
  18614. introspectable="0"
  18615. deprecated="1">
  18616. <doc xml:space="preserve">Extracts a #GValueArray into the provided arguments, which must
  18617. consist of pairs of a #GType and a value of pointer-to-that-type,
  18618. terminated by %G_TYPE_INVALID. The returned values will point to the
  18619. same memory as the values in the array.</doc>
  18620. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18621. <return-value transfer-ownership="none">
  18622. <doc xml:space="preserve">success or failure</doc>
  18623. <type name="gboolean" c:type="gboolean"/>
  18624. </return-value>
  18625. <parameters>
  18626. <parameter name="array" transfer-ownership="none">
  18627. <doc xml:space="preserve">a #GValueArray</doc>
  18628. <type name="GObject.ValueArray" c:type="GValueArray*"/>
  18629. </parameter>
  18630. <parameter name="args" transfer-ownership="none">
  18631. <doc xml:space="preserve">arguments to extract @array into</doc>
  18632. <type name="va_list" c:type="va_list"/>
  18633. </parameter>
  18634. </parameters>
  18635. </function>
  18636. <function name="value_hash_insert"
  18637. c:identifier="soup_value_hash_insert"
  18638. introspectable="0"
  18639. deprecated="1">
  18640. <doc xml:space="preserve">Inserts the provided value of type @type into @hash. (Unlike with
  18641. g_hash_table_insert(), both the key and the value are copied).</doc>
  18642. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18643. <return-value transfer-ownership="none">
  18644. <type name="none" c:type="void"/>
  18645. </return-value>
  18646. <parameters>
  18647. <parameter name="hash" transfer-ownership="none">
  18648. <doc xml:space="preserve">a value hash</doc>
  18649. <type name="GLib.HashTable" c:type="GHashTable*">
  18650. <type name="utf8"/>
  18651. <type name="GObject.Value"/>
  18652. </type>
  18653. </parameter>
  18654. <parameter name="key" transfer-ownership="none">
  18655. <doc xml:space="preserve">the key</doc>
  18656. <type name="utf8" c:type="const char*"/>
  18657. </parameter>
  18658. <parameter name="type" transfer-ownership="none">
  18659. <doc xml:space="preserve">a #GType</doc>
  18660. <type name="GType" c:type="GType"/>
  18661. </parameter>
  18662. <parameter name="..." transfer-ownership="none">
  18663. <doc xml:space="preserve">a value of type @type</doc>
  18664. <varargs/>
  18665. </parameter>
  18666. </parameters>
  18667. </function>
  18668. <function name="value_hash_insert_vals"
  18669. c:identifier="soup_value_hash_insert_vals"
  18670. introspectable="0"
  18671. deprecated="1">
  18672. <doc xml:space="preserve">Inserts the given data into @hash. As with
  18673. soup_value_hash_insert(), the keys and values are copied rather
  18674. than being inserted directly.</doc>
  18675. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18676. <return-value transfer-ownership="none">
  18677. <type name="none" c:type="void"/>
  18678. </return-value>
  18679. <parameters>
  18680. <parameter name="hash" transfer-ownership="none">
  18681. <doc xml:space="preserve">a value hash</doc>
  18682. <type name="GLib.HashTable" c:type="GHashTable*">
  18683. <type name="utf8"/>
  18684. <type name="GObject.Value"/>
  18685. </type>
  18686. </parameter>
  18687. <parameter name="first_key" transfer-ownership="none">
  18688. <doc xml:space="preserve">the key for the first value</doc>
  18689. <type name="utf8" c:type="const char*"/>
  18690. </parameter>
  18691. <parameter name="..." transfer-ownership="none">
  18692. <doc xml:space="preserve">the type of @first_key, followed by the value, followed
  18693. by additional key/type/value triplets, terminated by %NULL</doc>
  18694. <varargs/>
  18695. </parameter>
  18696. </parameters>
  18697. </function>
  18698. <function name="value_hash_insert_value"
  18699. c:identifier="soup_value_hash_insert_value"
  18700. deprecated="1">
  18701. <doc xml:space="preserve">Inserts @value into @hash. (Unlike with g_hash_table_insert(), both
  18702. the key and the value are copied).</doc>
  18703. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18704. <return-value transfer-ownership="none">
  18705. <type name="none" c:type="void"/>
  18706. </return-value>
  18707. <parameters>
  18708. <parameter name="hash" transfer-ownership="none">
  18709. <doc xml:space="preserve">a value hash</doc>
  18710. <type name="GLib.HashTable" c:type="GHashTable*">
  18711. <type name="utf8"/>
  18712. <type name="GObject.Value"/>
  18713. </type>
  18714. </parameter>
  18715. <parameter name="key" transfer-ownership="none">
  18716. <doc xml:space="preserve">the key</doc>
  18717. <type name="utf8" c:type="const char*"/>
  18718. </parameter>
  18719. <parameter name="value" transfer-ownership="none">
  18720. <doc xml:space="preserve">a value</doc>
  18721. <type name="GObject.Value" c:type="GValue*"/>
  18722. </parameter>
  18723. </parameters>
  18724. </function>
  18725. <function name="value_hash_lookup"
  18726. c:identifier="soup_value_hash_lookup"
  18727. introspectable="0"
  18728. deprecated="1">
  18729. <doc xml:space="preserve">Looks up @key in @hash and stores its value into the provided
  18730. location.</doc>
  18731. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18732. <return-value transfer-ownership="none">
  18733. <doc xml:space="preserve">%TRUE if @hash contained a value with key @key and
  18734. type @type, %FALSE if not.</doc>
  18735. <type name="gboolean" c:type="gboolean"/>
  18736. </return-value>
  18737. <parameters>
  18738. <parameter name="hash" transfer-ownership="none">
  18739. <doc xml:space="preserve">a value hash</doc>
  18740. <type name="GLib.HashTable" c:type="GHashTable*">
  18741. <type name="utf8"/>
  18742. <type name="GObject.Value"/>
  18743. </type>
  18744. </parameter>
  18745. <parameter name="key" transfer-ownership="none">
  18746. <doc xml:space="preserve">the key to look up</doc>
  18747. <type name="utf8" c:type="const char*"/>
  18748. </parameter>
  18749. <parameter name="type" transfer-ownership="none">
  18750. <doc xml:space="preserve">a #GType</doc>
  18751. <type name="GType" c:type="GType"/>
  18752. </parameter>
  18753. <parameter name="..." transfer-ownership="none">
  18754. <doc xml:space="preserve">a value of type pointer-to-@type</doc>
  18755. <varargs/>
  18756. </parameter>
  18757. </parameters>
  18758. </function>
  18759. <function name="value_hash_lookup_vals"
  18760. c:identifier="soup_value_hash_lookup_vals"
  18761. introspectable="0"
  18762. deprecated="1">
  18763. <doc xml:space="preserve">Looks up a number of keys in @hash and returns their values.</doc>
  18764. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18765. <return-value transfer-ownership="none">
  18766. <doc xml:space="preserve">%TRUE if all of the keys were found, %FALSE
  18767. if any were missing; note that you will generally need to
  18768. initialize each destination variable to a reasonable default
  18769. value, since there is no way to tell which keys were found
  18770. and which were not.</doc>
  18771. <type name="gboolean" c:type="gboolean"/>
  18772. </return-value>
  18773. <parameters>
  18774. <parameter name="hash" transfer-ownership="none">
  18775. <doc xml:space="preserve">a value hash</doc>
  18776. <type name="GLib.HashTable" c:type="GHashTable*">
  18777. <type name="utf8"/>
  18778. <type name="GObject.Value"/>
  18779. </type>
  18780. </parameter>
  18781. <parameter name="first_key" transfer-ownership="none">
  18782. <doc xml:space="preserve">the first key to look up</doc>
  18783. <type name="utf8" c:type="const char*"/>
  18784. </parameter>
  18785. <parameter name="..." transfer-ownership="none">
  18786. <doc xml:space="preserve">the type of @first_key, a pointer to that type, and
  18787. then additional key/type/pointer triplets, terminated
  18788. by %NULL.</doc>
  18789. <varargs/>
  18790. </parameter>
  18791. </parameters>
  18792. </function>
  18793. <function name="value_hash_new"
  18794. c:identifier="soup_value_hash_new"
  18795. deprecated="1">
  18796. <doc xml:space="preserve">Creates a #GHashTable whose keys are strings and whose values
  18797. are #GValue.</doc>
  18798. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18799. <return-value transfer-ownership="full">
  18800. <doc xml:space="preserve">a new
  18801. empty #GHashTable</doc>
  18802. <type name="GLib.HashTable" c:type="GHashTable*">
  18803. <type name="utf8"/>
  18804. <type name="GObject.Value"/>
  18805. </type>
  18806. </return-value>
  18807. </function>
  18808. <function name="value_hash_new_with_vals"
  18809. c:identifier="soup_value_hash_new_with_vals"
  18810. introspectable="0"
  18811. deprecated="1">
  18812. <doc xml:space="preserve">Creates a #GHashTable whose keys are strings and whose values
  18813. are #GValue, and initializes it with the provided data. As
  18814. with soup_value_hash_insert(), the keys and values are copied
  18815. rather than being inserted directly.</doc>
  18816. <doc-deprecated xml:space="preserve">Use #GVariant API instead.</doc-deprecated>
  18817. <return-value transfer-ownership="full">
  18818. <doc xml:space="preserve">a new
  18819. #GHashTable, initialized with the given values</doc>
  18820. <type name="GLib.HashTable" c:type="GHashTable*">
  18821. <type name="utf8"/>
  18822. <type name="GObject.Value"/>
  18823. </type>
  18824. </return-value>
  18825. <parameters>
  18826. <parameter name="first_key" transfer-ownership="none">
  18827. <doc xml:space="preserve">the key for the first value</doc>
  18828. <type name="utf8" c:type="const char*"/>
  18829. </parameter>
  18830. <parameter name="..." transfer-ownership="none">
  18831. <doc xml:space="preserve">the type of @first_key, followed by the value, followed
  18832. by additional key/type/value triplets, terminated by %NULL</doc>
  18833. <varargs/>
  18834. </parameter>
  18835. </parameters>
  18836. </function>
  18837. <function name="websocket_client_prepare_handshake"
  18838. c:identifier="soup_websocket_client_prepare_handshake"
  18839. version="2.50">
  18840. <doc xml:space="preserve">Adds the necessary headers to @msg to request a WebSocket
  18841. handshake. The message body and non-WebSocket-related headers are
  18842. not modified.
  18843. This is a low-level function; if you use
  18844. soup_session_websocket_connect_async() to create a WebSocket
  18845. connection, it will call this for you.</doc>
  18846. <return-value transfer-ownership="none">
  18847. <type name="none" c:type="void"/>
  18848. </return-value>
  18849. <parameters>
  18850. <parameter name="msg" transfer-ownership="none">
  18851. <doc xml:space="preserve">a #SoupMessage</doc>
  18852. <type name="Message" c:type="SoupMessage*"/>
  18853. </parameter>
  18854. <parameter name="origin"
  18855. transfer-ownership="none"
  18856. nullable="1"
  18857. allow-none="1">
  18858. <doc xml:space="preserve">the "Origin" header to set</doc>
  18859. <type name="utf8" c:type="const char*"/>
  18860. </parameter>
  18861. <parameter name="protocols"
  18862. transfer-ownership="none"
  18863. nullable="1"
  18864. allow-none="1">
  18865. <doc xml:space="preserve">list of
  18866. protocols to offer</doc>
  18867. <array c:type="char**">
  18868. <type name="utf8" c:type="char*"/>
  18869. </array>
  18870. </parameter>
  18871. </parameters>
  18872. </function>
  18873. <function name="websocket_client_verify_handshake"
  18874. c:identifier="soup_websocket_client_verify_handshake"
  18875. version="2.50"
  18876. throws="1">
  18877. <doc xml:space="preserve">Looks at the response status code and headers in @msg and
  18878. determines if they contain a valid WebSocket handshake response
  18879. (given the handshake request in @msg's request headers).
  18880. This is a low-level function; if you use
  18881. soup_session_websocket_connect_async() to create a WebSocket
  18882. connection, it will call this for you.</doc>
  18883. <return-value transfer-ownership="none">
  18884. <doc xml:space="preserve">%TRUE if @msg contains a completed valid WebSocket
  18885. handshake, %FALSE and an error if not.</doc>
  18886. <type name="gboolean" c:type="gboolean"/>
  18887. </return-value>
  18888. <parameters>
  18889. <parameter name="msg" transfer-ownership="none">
  18890. <doc xml:space="preserve">#SoupMessage containing both client and server sides of a
  18891. WebSocket handshake</doc>
  18892. <type name="Message" c:type="SoupMessage*"/>
  18893. </parameter>
  18894. </parameters>
  18895. </function>
  18896. <function name="websocket_error_get_quark"
  18897. c:identifier="soup_websocket_error_get_quark"
  18898. moved-to="WebsocketError.get_quark">
  18899. <return-value transfer-ownership="none">
  18900. <type name="GLib.Quark" c:type="GQuark"/>
  18901. </return-value>
  18902. </function>
  18903. <function name="websocket_server_check_handshake"
  18904. c:identifier="soup_websocket_server_check_handshake"
  18905. version="2.50"
  18906. throws="1">
  18907. <doc xml:space="preserve">Examines the method and request headers in @msg and determines
  18908. whether @msg contains a valid handshake request.
  18909. If @origin is non-%NULL, then only requests containing a matching
  18910. "Origin" header will be accepted. If @protocols is non-%NULL, then
  18911. only requests containing a compatible "Sec-WebSocket-Protocols"
  18912. header will be accepted.
  18913. Normally soup_websocket_server_process_handshake() will take care
  18914. of this for you, and if you use soup_server_add_websocket_handler()
  18915. to handle accepting WebSocket connections, it will call that for
  18916. you. However, this function may be useful if you need to perform
  18917. more complicated validation; eg, accepting multiple different Origins,
  18918. or handling different protocols depending on the path.</doc>
  18919. <return-value transfer-ownership="none">
  18920. <doc xml:space="preserve">%TRUE if @msg contained a valid WebSocket handshake,
  18921. %FALSE and an error if not.</doc>
  18922. <type name="gboolean" c:type="gboolean"/>
  18923. </return-value>
  18924. <parameters>
  18925. <parameter name="msg" transfer-ownership="none">
  18926. <doc xml:space="preserve">#SoupMessage containing the client side of a WebSocket handshake</doc>
  18927. <type name="Message" c:type="SoupMessage*"/>
  18928. </parameter>
  18929. <parameter name="origin"
  18930. transfer-ownership="none"
  18931. nullable="1"
  18932. allow-none="1">
  18933. <doc xml:space="preserve">expected Origin header</doc>
  18934. <type name="utf8" c:type="const char*"/>
  18935. </parameter>
  18936. <parameter name="protocols"
  18937. transfer-ownership="none"
  18938. nullable="1"
  18939. allow-none="1">
  18940. <doc xml:space="preserve">allowed WebSocket
  18941. protocols.</doc>
  18942. <array c:type="char**">
  18943. <type name="utf8" c:type="char*"/>
  18944. </array>
  18945. </parameter>
  18946. </parameters>
  18947. </function>
  18948. <function name="websocket_server_process_handshake"
  18949. c:identifier="soup_websocket_server_process_handshake"
  18950. version="2.50">
  18951. <doc xml:space="preserve">Examines the method and request headers in @msg and (assuming @msg
  18952. contains a valid handshake request), fills in the handshake
  18953. response.
  18954. If @expected_origin is non-%NULL, then only requests containing a matching
  18955. "Origin" header will be accepted. If @protocols is non-%NULL, then
  18956. only requests containing a compatible "Sec-WebSocket-Protocols"
  18957. header will be accepted.
  18958. This is a low-level function; if you use
  18959. soup_server_add_websocket_handler() to handle accepting WebSocket
  18960. connections, it will call this for you.</doc>
  18961. <return-value transfer-ownership="none">
  18962. <doc xml:space="preserve">%TRUE if @msg contained a valid WebSocket handshake
  18963. request and was updated to contain a handshake response. %FALSE if not.</doc>
  18964. <type name="gboolean" c:type="gboolean"/>
  18965. </return-value>
  18966. <parameters>
  18967. <parameter name="msg" transfer-ownership="none">
  18968. <doc xml:space="preserve">#SoupMessage containing the client side of a WebSocket handshake</doc>
  18969. <type name="Message" c:type="SoupMessage*"/>
  18970. </parameter>
  18971. <parameter name="expected_origin"
  18972. transfer-ownership="none"
  18973. nullable="1"
  18974. allow-none="1">
  18975. <doc xml:space="preserve">expected Origin header</doc>
  18976. <type name="utf8" c:type="const char*"/>
  18977. </parameter>
  18978. <parameter name="protocols"
  18979. transfer-ownership="none"
  18980. nullable="1"
  18981. allow-none="1">
  18982. <doc xml:space="preserve">allowed WebSocket
  18983. protocols.</doc>
  18984. <array c:type="char**">
  18985. <type name="utf8" c:type="char*"/>
  18986. </array>
  18987. </parameter>
  18988. </parameters>
  18989. </function>
  18990. <function name="xmlrpc_build_fault"
  18991. c:identifier="soup_xmlrpc_build_fault"
  18992. introspectable="0">
  18993. <doc xml:space="preserve">This creates an XML-RPC fault response and returns it as a string.
  18994. (To create a successful response, use
  18995. soup_xmlrpc_build_method_response().)</doc>
  18996. <return-value transfer-ownership="full">
  18997. <doc xml:space="preserve">the text of the fault</doc>
  18998. <type name="utf8" c:type="char*"/>
  18999. </return-value>
  19000. <parameters>
  19001. <parameter name="fault_code" transfer-ownership="none">
  19002. <doc xml:space="preserve">the fault code</doc>
  19003. <type name="gint" c:type="int"/>
  19004. </parameter>
  19005. <parameter name="fault_format" transfer-ownership="none">
  19006. <doc xml:space="preserve">a printf()-style format string</doc>
  19007. <type name="utf8" c:type="const char*"/>
  19008. </parameter>
  19009. <parameter name="..." transfer-ownership="none">
  19010. <doc xml:space="preserve">the parameters to @fault_format</doc>
  19011. <varargs/>
  19012. </parameter>
  19013. </parameters>
  19014. </function>
  19015. <function name="xmlrpc_build_method_call"
  19016. c:identifier="soup_xmlrpc_build_method_call"
  19017. deprecated="1">
  19018. <doc xml:space="preserve">This creates an XML-RPC methodCall and returns it as a string.
  19019. This is the low-level method that soup_xmlrpc_request_new() is
  19020. built on.
  19021. @params is an array of #GValue representing the parameters to
  19022. @method. (It is *not* a #GValueArray, although if you have a
  19023. #GValueArray, you can just pass its &lt;literal&gt;values&lt;/literal&gt;f and
  19024. &lt;literal&gt;n_values&lt;/literal&gt; fields.)
  19025. The correspondence between glib types and XML-RPC types is:
  19026. int: #int (%G_TYPE_INT)
  19027. boolean: #gboolean (%G_TYPE_BOOLEAN)
  19028. string: #char* (%G_TYPE_STRING)
  19029. double: #double (%G_TYPE_DOUBLE)
  19030. datetime.iso8601: #SoupDate (%SOUP_TYPE_DATE)
  19031. base64: #GByteArray (%SOUP_TYPE_BYTE_ARRAY)
  19032. struct: #GHashTable (%G_TYPE_HASH_TABLE)
  19033. array: #GValueArray (%G_TYPE_VALUE_ARRAY)
  19034. For structs, use a #GHashTable that maps strings to #GValue;
  19035. soup_value_hash_new() and related methods can help with this.</doc>
  19036. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_build_request() instead.</doc-deprecated>
  19037. <return-value transfer-ownership="full" nullable="1">
  19038. <doc xml:space="preserve">the text of the methodCall, or %NULL on
  19039. error</doc>
  19040. <type name="utf8" c:type="char*"/>
  19041. </return-value>
  19042. <parameters>
  19043. <parameter name="method_name" transfer-ownership="none">
  19044. <doc xml:space="preserve">the name of the XML-RPC method</doc>
  19045. <type name="utf8" c:type="const char*"/>
  19046. </parameter>
  19047. <parameter name="params" transfer-ownership="none">
  19048. <doc xml:space="preserve">arguments to @method</doc>
  19049. <array length="2" zero-terminated="0" c:type="GValue*">
  19050. <type name="GObject.Value" c:type="GValue"/>
  19051. </array>
  19052. </parameter>
  19053. <parameter name="n_params" transfer-ownership="none">
  19054. <doc xml:space="preserve">length of @params</doc>
  19055. <type name="gint" c:type="int"/>
  19056. </parameter>
  19057. </parameters>
  19058. </function>
  19059. <function name="xmlrpc_build_method_response"
  19060. c:identifier="soup_xmlrpc_build_method_response"
  19061. deprecated="1">
  19062. <doc xml:space="preserve">This creates a (successful) XML-RPC methodResponse and returns it
  19063. as a string. To create a fault response, use
  19064. soup_xmlrpc_build_fault().
  19065. The glib type to XML-RPC type mapping is as with
  19066. soup_xmlrpc_build_method_call(), qv.</doc>
  19067. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_build_response() instead.</doc-deprecated>
  19068. <return-value transfer-ownership="full" nullable="1">
  19069. <doc xml:space="preserve">the text of the methodResponse, or %NULL
  19070. on error</doc>
  19071. <type name="utf8" c:type="char*"/>
  19072. </return-value>
  19073. <parameters>
  19074. <parameter name="value" transfer-ownership="none">
  19075. <doc xml:space="preserve">the return value</doc>
  19076. <type name="GObject.Value" c:type="GValue*"/>
  19077. </parameter>
  19078. </parameters>
  19079. </function>
  19080. <function name="xmlrpc_build_request"
  19081. c:identifier="soup_xmlrpc_build_request"
  19082. version="2.52"
  19083. throws="1">
  19084. <doc xml:space="preserve">This creates an XML-RPC methodCall and returns it as a string.
  19085. This is the low-level method that soup_xmlrpc_message_new() is
  19086. built on.
  19087. @params is a #GVariant tuple representing the method parameters.
  19088. Serialization details:
  19089. - "a{s*}" and "{s*}" are serialized as &amp;lt;struct&amp;gt;
  19090. - "ay" is serialized as &amp;lt;base64&amp;gt;
  19091. - Other arrays and tuples are serialized as &amp;lt;array&amp;gt;
  19092. - booleans are serialized as &amp;lt;boolean&amp;gt;
  19093. - byte, int16, uint16 and int32 are serialized as &amp;lt;int&amp;gt;
  19094. - uint32 and int64 are serialized as the nonstandard &amp;lt;i8&amp;gt; type
  19095. - doubles are serialized as &amp;lt;double&amp;gt;
  19096. - Strings are serialized as &amp;lt;string&amp;gt;
  19097. - Variants (i.e. "v" type) are unwrapped and their child is serialized.
  19098. - #GVariants created by soup_xmlrpc_variant_new_datetime() are serialized as
  19099. &amp;lt;dateTime.iso8601&amp;gt;
  19100. - Other types are not supported and will return %NULL and set @error.
  19101. This notably includes: object-paths, signatures, uint64, handles, maybes
  19102. and dictionaries with non-string keys.
  19103. If @params is floating, it is consumed.</doc>
  19104. <return-value transfer-ownership="full">
  19105. <doc xml:space="preserve">the text of the methodCall, or %NULL on error.</doc>
  19106. <type name="utf8" c:type="char*"/>
  19107. </return-value>
  19108. <parameters>
  19109. <parameter name="method_name" transfer-ownership="none">
  19110. <doc xml:space="preserve">the name of the XML-RPC method</doc>
  19111. <type name="utf8" c:type="const char*"/>
  19112. </parameter>
  19113. <parameter name="params" transfer-ownership="none">
  19114. <doc xml:space="preserve">a #GVariant tuple</doc>
  19115. <type name="GLib.Variant" c:type="GVariant*"/>
  19116. </parameter>
  19117. </parameters>
  19118. </function>
  19119. <function name="xmlrpc_build_response"
  19120. c:identifier="soup_xmlrpc_build_response"
  19121. version="2.52"
  19122. throws="1">
  19123. <doc xml:space="preserve">This creates a (successful) XML-RPC methodResponse and returns it
  19124. as a string. To create a fault response, use soup_xmlrpc_build_fault(). This
  19125. is the low-level method that soup_xmlrpc_message_set_response() is built on.
  19126. See soup_xmlrpc_build_request() for serialization details, but note
  19127. that since a method can only have a single return value, @value
  19128. should not be a tuple here (unless the return value is an array).
  19129. If @value is floating, it is consumed.</doc>
  19130. <return-value transfer-ownership="full">
  19131. <doc xml:space="preserve">the text of the methodResponse, or %NULL on error.</doc>
  19132. <type name="utf8" c:type="char*"/>
  19133. </return-value>
  19134. <parameters>
  19135. <parameter name="value" transfer-ownership="none">
  19136. <doc xml:space="preserve">the return value</doc>
  19137. <type name="GLib.Variant" c:type="GVariant*"/>
  19138. </parameter>
  19139. </parameters>
  19140. </function>
  19141. <function name="xmlrpc_error_quark"
  19142. c:identifier="soup_xmlrpc_error_quark"
  19143. moved-to="XMLRPCError.quark">
  19144. <return-value transfer-ownership="none">
  19145. <type name="GLib.Quark" c:type="GQuark"/>
  19146. </return-value>
  19147. </function>
  19148. <function name="xmlrpc_extract_method_call"
  19149. c:identifier="soup_xmlrpc_extract_method_call"
  19150. introspectable="0"
  19151. deprecated="1">
  19152. <doc xml:space="preserve">Parses @method_call to get the name and parameters, and puts
  19153. the parameters into variables of the appropriate types.
  19154. The parameters are handled similarly to
  19155. @soup_xmlrpc_build_method_call, with pairs of types and values,
  19156. terminated by %G_TYPE_INVALID, except that values are pointers to
  19157. variables of the indicated type, rather than values of the type.
  19158. See also soup_xmlrpc_parse_method_call(), which can be used if
  19159. you don't know the types of the parameters.</doc>
  19160. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_parse_request_full() instead.</doc-deprecated>
  19161. <return-value transfer-ownership="none">
  19162. <doc xml:space="preserve">success or failure.</doc>
  19163. <type name="gboolean" c:type="gboolean"/>
  19164. </return-value>
  19165. <parameters>
  19166. <parameter name="method_call" transfer-ownership="none">
  19167. <doc xml:space="preserve">the XML-RPC methodCall string</doc>
  19168. <type name="utf8" c:type="const char*"/>
  19169. </parameter>
  19170. <parameter name="length" transfer-ownership="none">
  19171. <doc xml:space="preserve">the length of @method_call, or -1 if it is NUL-terminated</doc>
  19172. <type name="gint" c:type="int"/>
  19173. </parameter>
  19174. <parameter name="method_name"
  19175. direction="out"
  19176. caller-allocates="0"
  19177. transfer-ownership="full">
  19178. <doc xml:space="preserve">on return, the methodName from @method_call</doc>
  19179. <type name="utf8" c:type="char**"/>
  19180. </parameter>
  19181. <parameter name="..." transfer-ownership="none">
  19182. <doc xml:space="preserve">return types and locations for parameters</doc>
  19183. <varargs/>
  19184. </parameter>
  19185. </parameters>
  19186. </function>
  19187. <function name="xmlrpc_extract_method_response"
  19188. c:identifier="soup_xmlrpc_extract_method_response"
  19189. introspectable="0"
  19190. deprecated="1">
  19191. <doc xml:space="preserve">Parses @method_response and extracts the return value into
  19192. a variable of the correct type.
  19193. If @method_response is a fault, the return value will be unset,
  19194. and @error will be set to an error of type %SOUP_XMLRPC_FAULT, with
  19195. the error #code containing the fault code, and the error #message
  19196. containing the fault string. (If @method_response cannot be parsed
  19197. at all, soup_xmlrpc_extract_method_response() will return %FALSE,
  19198. but @error will be unset.)</doc>
  19199. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_parse_response() instead.</doc-deprecated>
  19200. <return-value transfer-ownership="none">
  19201. <doc xml:space="preserve">%TRUE if a return value was parsed, %FALSE if the
  19202. response was of the wrong type, or contained a fault.</doc>
  19203. <type name="gboolean" c:type="gboolean"/>
  19204. </return-value>
  19205. <parameters>
  19206. <parameter name="method_response" transfer-ownership="none">
  19207. <doc xml:space="preserve">the XML-RPC methodResponse string</doc>
  19208. <type name="utf8" c:type="const char*"/>
  19209. </parameter>
  19210. <parameter name="length" transfer-ownership="none">
  19211. <doc xml:space="preserve">the length of @method_response, or -1 if it is NUL-terminated</doc>
  19212. <type name="gint" c:type="int"/>
  19213. </parameter>
  19214. <parameter name="error" transfer-ownership="none">
  19215. <doc xml:space="preserve">error return value</doc>
  19216. <type name="GLib.Error" c:type="GError**"/>
  19217. </parameter>
  19218. <parameter name="type" transfer-ownership="none">
  19219. <doc xml:space="preserve">the expected type of the return value</doc>
  19220. <type name="GType" c:type="GType"/>
  19221. </parameter>
  19222. <parameter name="..." transfer-ownership="none">
  19223. <doc xml:space="preserve">location for return value</doc>
  19224. <varargs/>
  19225. </parameter>
  19226. </parameters>
  19227. </function>
  19228. <function name="xmlrpc_fault_quark"
  19229. c:identifier="soup_xmlrpc_fault_quark"
  19230. moved-to="XMLRPCFault.quark">
  19231. <return-value transfer-ownership="none">
  19232. <type name="GLib.Quark" c:type="GQuark"/>
  19233. </return-value>
  19234. </function>
  19235. <function name="xmlrpc_message_new"
  19236. c:identifier="soup_xmlrpc_message_new"
  19237. version="2.52"
  19238. throws="1">
  19239. <doc xml:space="preserve">Creates an XML-RPC methodCall and returns a #SoupMessage, ready
  19240. to send, for that method call.
  19241. See soup_xmlrpc_build_request() for serialization details.
  19242. If @params is floating, it is consumed.</doc>
  19243. <return-value transfer-ownership="full">
  19244. <doc xml:space="preserve">a #SoupMessage encoding the
  19245. indicated XML-RPC request, or %NULL on error.</doc>
  19246. <type name="Message" c:type="SoupMessage*"/>
  19247. </return-value>
  19248. <parameters>
  19249. <parameter name="uri" transfer-ownership="none">
  19250. <doc xml:space="preserve">URI of the XML-RPC service</doc>
  19251. <type name="utf8" c:type="const char*"/>
  19252. </parameter>
  19253. <parameter name="method_name" transfer-ownership="none">
  19254. <doc xml:space="preserve">the name of the XML-RPC method to invoke at @uri</doc>
  19255. <type name="utf8" c:type="const char*"/>
  19256. </parameter>
  19257. <parameter name="params" transfer-ownership="none">
  19258. <doc xml:space="preserve">a #GVariant tuple</doc>
  19259. <type name="GLib.Variant" c:type="GVariant*"/>
  19260. </parameter>
  19261. </parameters>
  19262. </function>
  19263. <function name="xmlrpc_message_set_fault"
  19264. c:identifier="soup_xmlrpc_message_set_fault"
  19265. version="2.52"
  19266. introspectable="0">
  19267. <doc xml:space="preserve">Sets the status code and response body of @msg to indicate an
  19268. unsuccessful XML-RPC call, with the error described by @fault_code
  19269. and @fault_format.</doc>
  19270. <return-value transfer-ownership="none">
  19271. <type name="none" c:type="void"/>
  19272. </return-value>
  19273. <parameters>
  19274. <parameter name="msg" transfer-ownership="none">
  19275. <doc xml:space="preserve">an XML-RPC request</doc>
  19276. <type name="Message" c:type="SoupMessage*"/>
  19277. </parameter>
  19278. <parameter name="fault_code" transfer-ownership="none">
  19279. <doc xml:space="preserve">the fault code</doc>
  19280. <type name="gint" c:type="int"/>
  19281. </parameter>
  19282. <parameter name="fault_format" transfer-ownership="none">
  19283. <doc xml:space="preserve">a printf()-style format string</doc>
  19284. <type name="utf8" c:type="const char*"/>
  19285. </parameter>
  19286. <parameter name="..." transfer-ownership="none">
  19287. <doc xml:space="preserve">the parameters to @fault_format</doc>
  19288. <varargs/>
  19289. </parameter>
  19290. </parameters>
  19291. </function>
  19292. <function name="xmlrpc_message_set_response"
  19293. c:identifier="soup_xmlrpc_message_set_response"
  19294. version="2.52"
  19295. throws="1">
  19296. <doc xml:space="preserve">Sets the status code and response body of @msg to indicate a
  19297. successful XML-RPC call, with a return value given by @value. To set a
  19298. fault response, use soup_xmlrpc_message_set_fault().
  19299. See soup_xmlrpc_build_request() for serialization details.
  19300. If @value is floating, it is consumed.</doc>
  19301. <return-value transfer-ownership="none">
  19302. <doc xml:space="preserve">%TRUE on success, %FALSE otherwise.</doc>
  19303. <type name="gboolean" c:type="gboolean"/>
  19304. </return-value>
  19305. <parameters>
  19306. <parameter name="msg" transfer-ownership="none">
  19307. <doc xml:space="preserve">an XML-RPC request</doc>
  19308. <type name="Message" c:type="SoupMessage*"/>
  19309. </parameter>
  19310. <parameter name="value" transfer-ownership="none">
  19311. <doc xml:space="preserve">a #GVariant</doc>
  19312. <type name="GLib.Variant" c:type="GVariant*"/>
  19313. </parameter>
  19314. </parameters>
  19315. </function>
  19316. <function name="xmlrpc_parse_method_call"
  19317. c:identifier="soup_xmlrpc_parse_method_call"
  19318. deprecated="1">
  19319. <doc xml:space="preserve">Parses @method_call to get the name and parameters, and returns the
  19320. parameter values in a #GValueArray; see also
  19321. soup_xmlrpc_extract_method_call(), which is more convenient if you
  19322. know in advance what the types of the parameters will be.</doc>
  19323. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_parse_request_full() instead.</doc-deprecated>
  19324. <return-value transfer-ownership="none">
  19325. <doc xml:space="preserve">success or failure.</doc>
  19326. <type name="gboolean" c:type="gboolean"/>
  19327. </return-value>
  19328. <parameters>
  19329. <parameter name="method_call" transfer-ownership="none">
  19330. <doc xml:space="preserve">the XML-RPC methodCall string</doc>
  19331. <type name="utf8" c:type="const char*"/>
  19332. </parameter>
  19333. <parameter name="length" transfer-ownership="none">
  19334. <doc xml:space="preserve">the length of @method_call, or -1 if it is NUL-terminated</doc>
  19335. <type name="gint" c:type="int"/>
  19336. </parameter>
  19337. <parameter name="method_name"
  19338. direction="out"
  19339. caller-allocates="0"
  19340. transfer-ownership="full">
  19341. <doc xml:space="preserve">on return, the methodName from @method_call</doc>
  19342. <type name="utf8" c:type="char**"/>
  19343. </parameter>
  19344. <parameter name="params"
  19345. direction="out"
  19346. caller-allocates="0"
  19347. transfer-ownership="full">
  19348. <doc xml:space="preserve">on return, the parameters from @method_call</doc>
  19349. <type name="GObject.ValueArray" c:type="GValueArray**"/>
  19350. </parameter>
  19351. </parameters>
  19352. </function>
  19353. <function name="xmlrpc_parse_method_response"
  19354. c:identifier="soup_xmlrpc_parse_method_response"
  19355. deprecated="1"
  19356. throws="1">
  19357. <doc xml:space="preserve">Parses @method_response and returns the return value in @value. If
  19358. @method_response is a fault, @value will be unchanged, and @error
  19359. will be set to an error of type %SOUP_XMLRPC_FAULT, with the error
  19360. #code containing the fault code, and the error #message containing
  19361. the fault string. (If @method_response cannot be parsed at all,
  19362. soup_xmlrpc_parse_method_response() will return %FALSE, but @error
  19363. will be unset.)</doc>
  19364. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_parse_response() instead.</doc-deprecated>
  19365. <return-value transfer-ownership="none">
  19366. <doc xml:space="preserve">%TRUE if a return value was parsed, %FALSE if the
  19367. response could not be parsed, or contained a fault.</doc>
  19368. <type name="gboolean" c:type="gboolean"/>
  19369. </return-value>
  19370. <parameters>
  19371. <parameter name="method_response" transfer-ownership="none">
  19372. <doc xml:space="preserve">the XML-RPC methodResponse string</doc>
  19373. <type name="utf8" c:type="const char*"/>
  19374. </parameter>
  19375. <parameter name="length" transfer-ownership="none">
  19376. <doc xml:space="preserve">the length of @method_response, or -1 if it is NUL-terminated</doc>
  19377. <type name="gint" c:type="int"/>
  19378. </parameter>
  19379. <parameter name="value"
  19380. direction="out"
  19381. caller-allocates="1"
  19382. transfer-ownership="none">
  19383. <doc xml:space="preserve">on return, the return value from @method_call</doc>
  19384. <type name="GObject.Value" c:type="GValue*"/>
  19385. </parameter>
  19386. </parameters>
  19387. </function>
  19388. <function name="xmlrpc_parse_request"
  19389. c:identifier="soup_xmlrpc_parse_request"
  19390. version="2.52"
  19391. throws="1">
  19392. <doc xml:space="preserve">Parses @method_call and return the method name. Method parameters can be
  19393. parsed later using soup_xmlrpc_params_parse().</doc>
  19394. <return-value transfer-ownership="full">
  19395. <doc xml:space="preserve">method's name, or %NULL on error.</doc>
  19396. <type name="utf8" c:type="char*"/>
  19397. </return-value>
  19398. <parameters>
  19399. <parameter name="method_call" transfer-ownership="none">
  19400. <doc xml:space="preserve">the XML-RPC methodCall string</doc>
  19401. <type name="utf8" c:type="const char*"/>
  19402. </parameter>
  19403. <parameter name="length" transfer-ownership="none">
  19404. <doc xml:space="preserve">the length of @method_call, or -1 if it is NUL-terminated</doc>
  19405. <type name="gint" c:type="int"/>
  19406. </parameter>
  19407. <parameter name="params"
  19408. direction="out"
  19409. caller-allocates="0"
  19410. transfer-ownership="full">
  19411. <doc xml:space="preserve">on success, a new #SoupXMLRPCParams</doc>
  19412. <type name="XMLRPCParams" c:type="SoupXMLRPCParams**"/>
  19413. </parameter>
  19414. </parameters>
  19415. </function>
  19416. <function name="xmlrpc_parse_response"
  19417. c:identifier="soup_xmlrpc_parse_response"
  19418. version="2.52"
  19419. throws="1">
  19420. <doc xml:space="preserve">Parses @method_response and returns the return value. If
  19421. @method_response is a fault, %NULL is returned, and @error
  19422. will be set to an error in the %SOUP_XMLRPC_FAULT domain, with the error
  19423. code containing the fault code, and the error message containing
  19424. the fault string. If @method_response cannot be parsed, %NULL is returned,
  19425. and @error will be set to an error in the %SOUP_XMLRPC_ERROR domain.
  19426. See soup_xmlrpc_params_parse() for deserialization details.</doc>
  19427. <return-value transfer-ownership="full">
  19428. <doc xml:space="preserve">a new (non-floating) #GVariant, or %NULL</doc>
  19429. <type name="GLib.Variant" c:type="GVariant*"/>
  19430. </return-value>
  19431. <parameters>
  19432. <parameter name="method_response" transfer-ownership="none">
  19433. <doc xml:space="preserve">the XML-RPC methodResponse string</doc>
  19434. <type name="utf8" c:type="const char*"/>
  19435. </parameter>
  19436. <parameter name="length" transfer-ownership="none">
  19437. <doc xml:space="preserve">the length of @method_response, or -1 if it is NUL-terminated</doc>
  19438. <type name="gint" c:type="int"/>
  19439. </parameter>
  19440. <parameter name="signature"
  19441. transfer-ownership="none"
  19442. nullable="1"
  19443. allow-none="1">
  19444. <doc xml:space="preserve">A valid #GVariant type string, or %NULL</doc>
  19445. <type name="utf8" c:type="const char*"/>
  19446. </parameter>
  19447. </parameters>
  19448. </function>
  19449. <function name="xmlrpc_request_new"
  19450. c:identifier="soup_xmlrpc_request_new"
  19451. introspectable="0"
  19452. deprecated="1">
  19453. <doc xml:space="preserve">Creates an XML-RPC methodCall and returns a #SoupMessage, ready
  19454. to send, for that method call.
  19455. The parameters are passed as type/value pairs; ie, first a #GType,
  19456. and then a value of the appropriate type, finally terminated by
  19457. %G_TYPE_INVALID.</doc>
  19458. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_message_new() instead.</doc-deprecated>
  19459. <return-value transfer-ownership="full">
  19460. <doc xml:space="preserve">a #SoupMessage encoding the
  19461. indicated XML-RPC request.</doc>
  19462. <type name="Message" c:type="SoupMessage*"/>
  19463. </return-value>
  19464. <parameters>
  19465. <parameter name="uri" transfer-ownership="none">
  19466. <doc xml:space="preserve">URI of the XML-RPC service</doc>
  19467. <type name="utf8" c:type="const char*"/>
  19468. </parameter>
  19469. <parameter name="method_name" transfer-ownership="none">
  19470. <doc xml:space="preserve">the name of the XML-RPC method to invoke at @uri</doc>
  19471. <type name="utf8" c:type="const char*"/>
  19472. </parameter>
  19473. <parameter name="..." transfer-ownership="none">
  19474. <doc xml:space="preserve">parameters for @method</doc>
  19475. <varargs/>
  19476. </parameter>
  19477. </parameters>
  19478. </function>
  19479. <function name="xmlrpc_set_fault"
  19480. c:identifier="soup_xmlrpc_set_fault"
  19481. introspectable="0"
  19482. deprecated="1">
  19483. <doc xml:space="preserve">Sets the status code and response body of @msg to indicate an
  19484. unsuccessful XML-RPC call, with the error described by @fault_code
  19485. and @fault_format.</doc>
  19486. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_message_set_fault() instead.</doc-deprecated>
  19487. <return-value transfer-ownership="none">
  19488. <type name="none" c:type="void"/>
  19489. </return-value>
  19490. <parameters>
  19491. <parameter name="msg" transfer-ownership="none">
  19492. <doc xml:space="preserve">an XML-RPC request</doc>
  19493. <type name="Message" c:type="SoupMessage*"/>
  19494. </parameter>
  19495. <parameter name="fault_code" transfer-ownership="none">
  19496. <doc xml:space="preserve">the fault code</doc>
  19497. <type name="gint" c:type="int"/>
  19498. </parameter>
  19499. <parameter name="fault_format" transfer-ownership="none">
  19500. <doc xml:space="preserve">a printf()-style format string</doc>
  19501. <type name="utf8" c:type="const char*"/>
  19502. </parameter>
  19503. <parameter name="..." transfer-ownership="none">
  19504. <doc xml:space="preserve">the parameters to @fault_format</doc>
  19505. <varargs/>
  19506. </parameter>
  19507. </parameters>
  19508. </function>
  19509. <function name="xmlrpc_set_response"
  19510. c:identifier="soup_xmlrpc_set_response"
  19511. introspectable="0"
  19512. deprecated="1">
  19513. <doc xml:space="preserve">Sets the status code and response body of @msg to indicate a
  19514. successful XML-RPC call, with a return value given by @type and the
  19515. following varargs argument, of the type indicated by @type.</doc>
  19516. <doc-deprecated xml:space="preserve">Use soup_xmlrpc_message_set_response() instead.</doc-deprecated>
  19517. <return-value transfer-ownership="none">
  19518. <type name="none" c:type="void"/>
  19519. </return-value>
  19520. <parameters>
  19521. <parameter name="msg" transfer-ownership="none">
  19522. <doc xml:space="preserve">an XML-RPC request</doc>
  19523. <type name="Message" c:type="SoupMessage*"/>
  19524. </parameter>
  19525. <parameter name="type" transfer-ownership="none">
  19526. <doc xml:space="preserve">the type of the response value</doc>
  19527. <type name="GType" c:type="GType"/>
  19528. </parameter>
  19529. <parameter name="..." transfer-ownership="none">
  19530. <doc xml:space="preserve">the response value</doc>
  19531. <varargs/>
  19532. </parameter>
  19533. </parameters>
  19534. </function>
  19535. <function name="xmlrpc_variant_get_datetime"
  19536. c:identifier="soup_xmlrpc_variant_get_datetime"
  19537. version="2.52"
  19538. throws="1">
  19539. <doc xml:space="preserve">Get the #SoupDate from special #GVariant created by
  19540. soup_xmlrpc_variant_new_datetime() or by parsing a &amp;lt;dateTime.iso8601&amp;gt;
  19541. node. See soup_xmlrpc_params_parse().
  19542. If @variant does not contain a datetime it will return an error but it is not
  19543. considered a programmer error because it generally means parameters received
  19544. are not in the expected type.</doc>
  19545. <return-value transfer-ownership="full">
  19546. <doc xml:space="preserve">a new #SoupDate, or %NULL on error.</doc>
  19547. <type name="Date" c:type="SoupDate*"/>
  19548. </return-value>
  19549. <parameters>
  19550. <parameter name="variant" transfer-ownership="none">
  19551. <doc xml:space="preserve">a #GVariant</doc>
  19552. <type name="GLib.Variant" c:type="GVariant*"/>
  19553. </parameter>
  19554. </parameters>
  19555. </function>
  19556. <function name="xmlrpc_variant_new_datetime"
  19557. c:identifier="soup_xmlrpc_variant_new_datetime"
  19558. version="2.52">
  19559. <doc xml:space="preserve">Construct a special #GVariant used to serialize a &amp;lt;dateTime.iso8601&amp;gt;
  19560. node. See soup_xmlrpc_build_request().
  19561. The actual type of the returned #GVariant is unspecified and "v" or "*"
  19562. should be used in variant format strings. For example:
  19563. &lt;informalexample&gt;&lt;programlisting&gt;
  19564. args = g_variant_new ("(v)", soup_xmlrpc_variant_new_datetime (date));
  19565. &lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
  19566. <return-value transfer-ownership="full">
  19567. <doc xml:space="preserve">a floating #GVariant.</doc>
  19568. <type name="GLib.Variant" c:type="GVariant*"/>
  19569. </return-value>
  19570. <parameters>
  19571. <parameter name="date" transfer-ownership="none">
  19572. <doc xml:space="preserve">a #SoupDate</doc>
  19573. <type name="Date" c:type="SoupDate*"/>
  19574. </parameter>
  19575. </parameters>
  19576. </function>
  19577. </namespace>
  19578. </repository>