4 if exist %~dp0sp-key.pem goto protect
\r
5 if exist %~dp0sp-cert.pem goto protect
\r
9 set TEMP_DOMAIN_NAME=
\r
14 if not defined PARAM goto opt_end
\r
15 if %1==-h goto opt_fqdn
\r
16 if %1==-y goto opt_years
\r
20 if not defined DAYS set DAYS=10
\r
21 set /a DAYS=%DAYS%*365
\r
23 if not defined FQDN goto guess_fqdn
\r
26 set PATH=%~dp0..\..\lib;%~dp0..\..\bin
\r
27 %~dp0..\..\bin\openssl.exe req -x509 -days %DAYS% -newkey rsa:2048 -nodes -keyout %~dp0sp-key.pem -out %~dp0sp-cert.pem -subj /CN=%FQDN% -config %~dp0openssl.cnf -extensions usr_cert -set_serial 0
\r
31 echo The files sp-key.pem and/or sp-cert.pem already exist!
\r
47 echo usage: keygen [-h hostname/cn for cert] [-y years to issue cert]
\r
51 for /F "tokens=2 delims=:" %%i in ('"ipconfig /all | findstr /c:"Primary DNS Suffix""') do set TEMP_DOMAIN_NAME=%%i
\r
52 if defined TEMP_DOMAIN_NAME set FQDN=%TEMP_DOMAIN_NAME: =%
\r
53 set TEMP_DOMAIN_NAME=
\r
54 if defined USERDNSDOMAIN set FQDN=%USERDNSDOMAIN%
\r
56 for /F %%i in ('hostname') do set HOST=%%i
\r
57 if defined FQDN (set FQDN=%HOST%.%FQDN%) else (set FQDN=%HOST%)
\r
60 for /F %%i in ('dir /b/l %FQDN%') do set FQDN=%%i
\r