Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 35 additions & 5 deletions gencert.bat
Original file line number Diff line number Diff line change
@@ -1,23 +1,53 @@
@echo off
setlocal

if not exist "ssl" mkdir "ssl"

IF EXIST "ssl\studio-app.snapchat.com.key" (
IF EXIST "ssl\studio-app.snapchat.com.crt" (
echo SSL certificate already exists.
exit
exit /b 0
)
)
SET command=req -x509 -nodes -days 3650 -subj "/C=CA/ST=QC/O=Snap Inc./CN=studio-app.snapchat.com" -addext "subjectAltName=DNS:*.snapchat.com" -newkey rsa:2048 -keyout ./ssl/studio-app.snapchat.com.key -out ./ssl/studio-app.snapchat.com.crt

REM create tmp cfg
set "TEMP_CONF=%TEMP%\openssl_%RANDOM%.cnf"
(
echo [ req ]
echo distinguished_name = req_distinguished_name
echo prompt = no
echo [ req_distinguished_name ]
echo [ v3_ca ]
echo subjectAltName = DNS:*.snapchat.com
) > "%TEMP_CONF%"

set COMMAND=req -x509 -nodes -days 3650 -subj "/C=CA/ST=QC/O=Snap Inc./CN=studio-app.snapchat.com" -newkey rsa:2048 -keyout .\ssl\studio-app.snapchat.com.key -out .\ssl\studio-app.snapchat.com.crt -config "%TEMP_CONF%"

WHERE openssl >nul 2>&1
IF %ERRORLEVEL% == 0 (
openssl %command%
openssl %COMMAND%
) ELSE (
IF EXIST "%programfiles%\OpenSSL-Win64\bin\openssl.exe" (
"%programfiles%\OpenSSL-Win64\bin\openssl.exe" %command%
"%programfiles%\OpenSSL-Win64\bin\openssl.exe" %COMMAND%
) ELSE (
IF EXIST "%programfiles(x86)%\OpenSSL-Win32\bin\openssl.exe" (
"%programfiles(x86)%\OpenSSL-Win32\bin\openssl.exe" %command%
"%programfiles(x86)%\OpenSSL-Win32\bin\openssl.exe" %COMMAND%
) ELSE (
echo Error: OpenSSL could not be found on your system. Please download and install OpenSSL.
del "%TEMP_CONF%" 2>nul
pause
exit /b 1
)
)
)

REM remove tmp cfg
del "%TEMP_CONF%" 2>nul

if exist "ssl\studio-app.snapchat.com.key" if exist "ssl\studio-app.snapchat.com.crt" (
echo SSL certificate generated successfully.
) else (
echo Certificate generation failed.
)

endlocal