Имя исполняемого файла по умолчанию - a.out
, согласно g++
manpage:
-o file
Place output in file file. This applies to whatever sort
of output is being produced, whether it be an executable file,
an object file, an assembler file or preprocessed C code.
If -o is not specified, the default is to put an executable file
in a.out, the object file for source.suffix in source.o, its
assembler file in source.s, a precompiled header file in
source.suffix.gch, and all preprocessed C source on standard output.
Поэтому вы можете использовать . /a.out
для запуска скомпилированного исполняемого файла или добавить аргумент -o
в командную строку g++
:
$ g++ -o server server.cpp -Wall
$ ./server
Хотя я в основном согласен с Ромео в том, что у вас уже должны быть файлы сертификатов на сервере, если вам нужно обрабатывать несколько сертификатов с одного s_client
, вы можете сделать что-то вроде :
openssl s_client ..... -showcerts \
| awk '/-----BEGIN/{f="cert."(n++)} f{print>f} /-----END/{f=""}'
# or input from bundle or chain file
for c in cert.*; do
openssl x509 <$c -noout -pubkey .....
done
rm cert.*
# use better temp name/location if you want
Вы можете извлечь эмитента из сертификата (CN эмитента). Но с этого момента вы должны получить этот сертификат вручную, выполнив поиск на веб-сайте эмитента. Если у вас есть доступ к веб-серверу, вы найдете в файловой системе сертификаты и запустите свой скрипт над файлами с сертификатами CA