Commit e792ca67 authored by bol-van's avatar bol-van
Browse files

nfqws: display original SNI value

parent e5e53db6
Loading
Loading
Loading
Loading
+36 −25
Original line number Diff line number Diff line
@@ -1067,11 +1067,20 @@ static bool onetime_tls_mod_blob(int profile_n, int fake_n, uint32_t fake_tls_mo
			{
				size_t slen_new = strlen(fake_tls_sni);
				ssize_t slen_delta = slen_new-slen;
				char *s1=NULL;
				if (params.debug)
				{
					if ((s1 = malloc(slen+1)))
					{
						memcpy(s1,sni,slen); s1[slen]=0;
					}
				}
				if (slen_delta)
				{
					if ((*fake_tls_size+slen_delta)>fake_tls_buf_size)
					{
						DLOG_ERR("profile %d fake[%d] not enough space for new SNI\n", profile_n, fake_n);
						free(s1);
						return false;
					}
					memmove(sni+slen_new,sni+slen,fake_tls+*fake_tls_size-(sni+slen));
@@ -1084,7 +1093,9 @@ static bool onetime_tls_mod_blob(int profile_n, int fake_n, uint32_t fake_tls_mo
					*fake_tls_size+=slen_delta;
					slen = slen_new;
				}
				DLOG("profile %d fake[%d] change sni to %s size_delta=%zd\n", profile_n, fake_n, fake_tls_sni,slen_delta);
				DLOG("profile %d fake[%d] change SNI : %s => %s size_delta=%zd\n", profile_n, fake_n, s1, fake_tls_sni, slen_delta);
				free(s1);

				memcpy(sni,fake_tls_sni,slen_new);
			}
			if (fake_tls_mod & FAKE_TLS_MOD_RND_SNI)
@@ -1125,7 +1136,6 @@ static bool onetime_tls_mod_blob(int profile_n, int fake_n, uint32_t fake_tls_mo
				}
			}
		}
	}
		if (fake_tls_mod & FAKE_TLS_MOD_PADENCAP)
		{
			if (TLSFindExt(fake_tls,*fake_tls_size,21,&ext,&extlen,false))
@@ -1156,6 +1166,7 @@ static bool onetime_tls_mod_blob(int profile_n, int fake_n, uint32_t fake_tls_mo
				DLOG("profile %d fake[%d] tls padding is absent. added. padding length offset %zu\n", profile_n, fake_n, modcache->padlen_offset);
			}
		}
	}
	return true;
}
static bool onetime_tls_mod(struct desync_profile *dp)