Qoxra tat-tfal ma tistax tesporta proxy lura fil-Perl
Issettja l-ENV tal-Perl direttament u illimita l-varjabbli tal-proxy b'local madwar sejħa waħda tat-tfal biex il-valuri oriġinali jerġgħu lura wara.
Kmand b'backtick li fih export ibiddel biss il-qoxra maħluqa għal dak il-kmand. Meta l-qoxra tintemm, il-proċess Perl ġenitur għad għandu l-ambjent preċedenti tiegħu.
Minflok, issettja l-hash tal-ambjent tal-Perl. local jista' jżomm il-bidla fi ħdan blokka waħda:
{
local $ENV{http_proxy} = 'http://proxy.example:8080';
local $ENV{https_proxy} = 'http://proxy.example:8080';
my $status = system {
'/usr/bin/curl'
} '/usr/bin/curl', '--fail', '--max-time', '30',
'https://downloads.example/data.csv';
die "Downloader failed: $status" if $status != 0;
}
It-tifel jiret il-valuri lokalizzati. Għal download HTTP pubbliku, punt tat-tmiem mil-lista tal-proxy HTTP jista' jipprovdi dawk il-valuri tal-URL. Meta tintemm il-blokka, il-Perl jirrestawra l-entrati preċedenti, inkluża n-nuqqas preċedenti tagħhom. Ir-riżultat system li jintwera huwa l-istat tal-proċess tal-Perl, mhux kodiċi ta' risposta HTTP dekodifikat.
local għandu ambitu dinamiku: kodiċi Perl ieħor imsejjaħ f'dik il-blokka jara wkoll l-ambjent temporanju. Mhuwiex maħżen privat ta' kredenzjali għal kull funzjoni.
Irrevedi l-varjabbli ereditati b'ittri kbar u l-varjabbli ta' bypass għall-klijent magħżul. Id-downloader jiddeċiedi liema inputs jikkonsma. Issettjar tal-proxy lanqas ma jbiddel l-identità tal-utent tal-proċess u lanqas jeħtieġ qoxra root separata sempliċement biex tinkiseb b'eredità.