Будет ли двигаться SSL :: контекст вызовет UB?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Будет ли двигаться SSL :: контекст вызовет UB?

Сообщение Anonymous »

У меня есть какой -то код, который создает SSL :: Stream . Объект ssl :: stream принимает контекст ssl :: code> в своем конструкторе по ссылке. Создание SSL :: Stream выглядит так

Код: Выделить всё

ssl::context ssl_context(boost::asio::ssl::context::tls_client);
ssl_context.set_options(boost::asio::ssl::context::default_workarounds);
ssl::stream ssl_stream(std::move(socket), ssl_context);
< /code>
Позже я хочу перенести владение объектами ssl_context и ssl_stream в другой объект, как это: < /p>
session_t sess(std::move(ssl_stream), std::move(ssl_context));
будет дальнейшее использование ssl :: stream привести к ub?
я спрашиваю, потому что ssl :: stream принимает ssl :: context по ссылке, и мы перемещаем code :: code>, что было передано в SSL :: Stream . SSL :: Stream имеет висящую ссылку на него и использует эту свисающую ссылку для доступа к контексту SSL. Но я не уверен.

Подробнее здесь: https://stackoverflow.com/questions/797 ... t-cause-ub
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»