Ako libproxy vrati proxy URI dok se sljedeći socket povezuje izravno, provjerite primopredaju. libproxy otkriva politiku; ne presreće svaki socket koji aplikacija otvori.

  1. Pitajte za resurs. U dokumentiranom libproxy 0.5 C API-ju stvorite proxy tvornicu i zatražite stvarni URL odredišta.
  2. Protumačite poredane kandidate. HTTP, SOCKS i izravni rezultati zahtijevaju različito rukovanje. Zadržite njihov redoslijed preferencije i predviđenu politiku neuspjeha.
  3. Konfigurirajte potrošača. Predajte odabrani tip proxyja, krajnju točku i raspored autentifikacije prijevozu koji ih podržava. Sirovi TCP socket ne dobiva CONNECT ni SOCKS pregovaranje iz vraćenog URI-ja.

Ne spremajte jedan odgovor kao rutu za sva odredišta i ne činite izravno usmjeravanje trajnim zato što je prvi proxy jednom zakazao.

Ako HTTP klijent već integrira sistemski proxy ili PAC otkrivanje, odaberite jednog vlasnika odabira. Dva neovisna birača plus još jedan omotač mogu proizvesti rutu koju nijedna politika nije namjeravala.

U izvornom kodu slijedite životni ciklus tvornice i memorije rezultata instaliranog API-ja. Ponovna uporaba tvornice može zadržati korisno stanje otkrivanja, ali još uvijek zahtijeva upit za svako odredište. Bilježite odabir odvojeno od ishoda veze: vraćeni URI ne dokazuje uspješnu autentifikaciju, razrješavanje ili daljnji pristup.

Povezani članci