in src/plugin/plugin_curl.rs [404:420]
fn inject_sw_header(request_id: Option<i64>, ch: ZVal, info: &CurlInfo) -> crate::Result<()> {
let sw_header = RequestContext::try_get_sw_header(request_id, &info.peer)?;
let mut val = CURL_HEADERS
.with(|headers| headers.borrow_mut().remove(&info.cid))
.unwrap_or_else(|| ZVal::from(ZArray::new()));
if let Some(arr) = val.as_mut_z_arr() {
arr.insert(
InsertKey::NextIndex,
ZVal::from(format!("{}: {}", SW_HEADER, sw_header)),
);
call(
"curl_setopt",
&mut [ch, ZVal::from(SKY_CURLOPT_HTTPHEADER), val],
)?;
}
Ok(())
}