mirror of
				https://github.com/yuezk/GlobalProtect-openconnect.git
				synced 2025-05-20 07:26:58 -04:00 
			
		
		
		
	Merge remote-tracking branch 'origin/release/2.1.2' into dev
This commit is contained in:
		
							
								
								
									
										8
									
								
								.github/workflows/build.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								.github/workflows/build.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -9,6 +9,9 @@ on: | ||||
|     branches: | ||||
|       - main | ||||
|       - dev | ||||
|       - hotfix/* | ||||
|       - feature/* | ||||
|       - release/* | ||||
|     tags: | ||||
|       - latest | ||||
|       - v*.*.* | ||||
| @@ -42,6 +45,7 @@ jobs: | ||||
|       with: | ||||
|         token: ${{ secrets.GH_PAT }} | ||||
|         repository: yuezk/GlobalProtect-openconnect | ||||
|         ref: ${{ github.ref }} | ||||
|         path: source/gp | ||||
|     - name: Create tarball | ||||
|       run: | | ||||
| @@ -114,12 +118,14 @@ jobs: | ||||
|       with: | ||||
|         token: ${{ secrets.GH_PAT }} | ||||
|         repository: yuezk/GlobalProtect-openconnect | ||||
|         ref: ${{ github.ref }} | ||||
|         path: gpgui-source/gp | ||||
|     - name: Checkout gpgui | ||||
|     - name: Checkout gpgui@${{ github.ref_name }} | ||||
|       uses: actions/checkout@v3 | ||||
|       with: | ||||
|         token: ${{ secrets.GH_PAT }} | ||||
|         repository: yuezk/gpgui | ||||
|         ref: ${{ github.ref_name }} | ||||
|         path: gpgui-source/gpgui | ||||
|     - name: Tarball | ||||
|       run: | | ||||
|   | ||||
							
								
								
									
										14
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										14
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							| @@ -564,7 +564,7 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "common" | ||||
| version = "2.1.1" | ||||
| version = "2.1.2" | ||||
| dependencies = [ | ||||
|  "is_executable", | ||||
| ] | ||||
| @@ -1430,7 +1430,7 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "gpapi" | ||||
| version = "2.1.1" | ||||
| version = "2.1.2" | ||||
| dependencies = [ | ||||
|  "anyhow", | ||||
|  "base64 0.21.5", | ||||
| @@ -1462,7 +1462,7 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "gpauth" | ||||
| version = "2.1.1" | ||||
| version = "2.1.2" | ||||
| dependencies = [ | ||||
|  "anyhow", | ||||
|  "clap", | ||||
| @@ -1482,7 +1482,7 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "gpclient" | ||||
| version = "2.1.1" | ||||
| version = "2.1.2" | ||||
| dependencies = [ | ||||
|  "anyhow", | ||||
|  "clap", | ||||
| @@ -1504,7 +1504,7 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "gpgui-helper" | ||||
| version = "2.1.1" | ||||
| version = "2.1.2" | ||||
| dependencies = [ | ||||
|  "anyhow", | ||||
|  "clap", | ||||
| @@ -1522,7 +1522,7 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "gpservice" | ||||
| version = "2.1.1" | ||||
| version = "2.1.2" | ||||
| dependencies = [ | ||||
|  "anyhow", | ||||
|  "axum", | ||||
| @@ -2527,7 +2527,7 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "openconnect" | ||||
| version = "2.1.1" | ||||
| version = "2.1.2" | ||||
| dependencies = [ | ||||
|  "cc", | ||||
|  "common", | ||||
|   | ||||
| @@ -5,7 +5,7 @@ members = ["crates/*", "apps/gpclient", "apps/gpservice", "apps/gpauth", "apps/g | ||||
|  | ||||
| [workspace.package] | ||||
| rust-version = "1.70" | ||||
| version = "2.1.1" | ||||
| version = "2.1.2" | ||||
| authors = ["Kevin Yue <k3vinyue@gmail.com>"] | ||||
| homepage = "https://github.com/yuezk/GlobalProtect-openconnect" | ||||
| edition = "2021" | ||||
|   | ||||
| @@ -153,7 +153,7 @@ impl<'a> ConnectHandler<'a> { | ||||
|   } | ||||
|  | ||||
|   async fn connect_gateway_with_prelogin(&self, gateway: &str) -> anyhow::Result<()> { | ||||
|     info!("Treat the portal as the gateway, connecting..."); | ||||
|     info!("Performing the gateway authentication..."); | ||||
|  | ||||
|     let mut gp_params = self.build_gp_params(); | ||||
|     gp_params.set_is_gateway(true); | ||||
|   | ||||
| @@ -1,5 +1,9 @@ | ||||
| # Changelog | ||||
|  | ||||
| ## 2.1.2 - 2024-03-29 | ||||
|  | ||||
| - Treat portal as gateway when the gateway login is failed (fix #338) | ||||
|  | ||||
| ## 2.1.1 - 2024-03-25 | ||||
|  | ||||
| - Add the `--hip` option to enable HIP report | ||||
|   | ||||
| @@ -6,6 +6,6 @@ pub enum PortalError { | ||||
|   PreloginError(String), | ||||
|   #[error("Portal config error: {0}")] | ||||
|   ConfigError(String), | ||||
|   #[error("Gateway error: {0}")] | ||||
|   GatewayError(String), | ||||
|   #[error("Network error: {0}")] | ||||
|   NetworkError(String), | ||||
| } | ||||
|   | ||||
| @@ -34,7 +34,7 @@ pub async fn gateway_login(gateway: &str, cred: &Credential, gp_params: &GpParam | ||||
|     .form(¶ms) | ||||
|     .send() | ||||
|     .await | ||||
|     .map_err(|e| anyhow::anyhow!(PortalError::GatewayError(e.to_string())))?; | ||||
|     .map_err(|e| anyhow::anyhow!(PortalError::NetworkError(e.to_string())))?; | ||||
|  | ||||
|   let status = res.status(); | ||||
|  | ||||
|   | ||||
| @@ -102,7 +102,12 @@ pub async fn retrieve_config(portal: &str, cred: &Credential, gp_params: &GpPara | ||||
|  | ||||
|   info!("Portal config, user_agent: {}", gp_params.user_agent()); | ||||
|  | ||||
|   let res = client.post(&url).form(¶ms).send().await?; | ||||
|   let res = client | ||||
|     .post(&url) | ||||
|     .form(¶ms) | ||||
|     .send() | ||||
|     .await | ||||
|     .map_err(|e| anyhow::anyhow!(PortalError::NetworkError(e.to_string())))?; | ||||
|   let status = res.status(); | ||||
|  | ||||
|   if status == StatusCode::NOT_FOUND { | ||||
|   | ||||
| @@ -118,7 +118,12 @@ pub async fn prelogin(portal: &str, gp_params: &GpParams) -> anyhow::Result<Prel | ||||
|     .user_agent(user_agent) | ||||
|     .build()?; | ||||
|  | ||||
|   let res = client.post(&prelogin_url).form(¶ms).send().await?; | ||||
|   let res = client | ||||
|     .post(&prelogin_url) | ||||
|     .form(¶ms) | ||||
|     .send() | ||||
|     .await | ||||
|     .map_err(|e| anyhow::anyhow!(PortalError::NetworkError(e.to_string())))?; | ||||
|   let status = res.status(); | ||||
|  | ||||
|   if status == StatusCode::NOT_FOUND { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user