LCOV - code coverage report
Current view: top level - libs/proxy/tokio-postgres2/src - cancel_query_raw.rs (source / functions) Coverage Total Hit
Test: 5fe7fa8d483b39476409aee736d6d5e32728bfac.info Lines: 0.0 % 20 0
Test Date: 2025-03-12 16:10:49 Functions: 0.0 % 6 0

            Line data    Source code
       1              : use bytes::BytesMut;
       2              : use postgres_protocol2::message::frontend;
       3              : use tokio::io::{AsyncRead, AsyncWrite, AsyncWriteExt};
       4              : 
       5              : use crate::config::SslMode;
       6              : use crate::tls::TlsConnect;
       7              : use crate::{Error, connect_tls};
       8              : 
       9            0 : pub async fn cancel_query_raw<S, T>(
      10            0 :     stream: S,
      11            0 :     mode: SslMode,
      12            0 :     tls: T,
      13            0 :     process_id: i32,
      14            0 :     secret_key: i32,
      15            0 : ) -> Result<(), Error>
      16            0 : where
      17            0 :     S: AsyncRead + AsyncWrite + Unpin,
      18            0 :     T: TlsConnect<S>,
      19            0 : {
      20            0 :     let mut stream = connect_tls::connect_tls(stream, mode, tls).await?;
      21              : 
      22            0 :     let mut buf = BytesMut::new();
      23            0 :     frontend::cancel_request(process_id, secret_key, &mut buf);
      24            0 : 
      25            0 :     stream.write_all(&buf).await.map_err(Error::io)?;
      26            0 :     stream.flush().await.map_err(Error::io)?;
      27            0 :     stream.shutdown().await.map_err(Error::io)?;
      28              : 
      29            0 :     Ok(())
      30            0 : }
        

Generated by: LCOV version 2.1-beta