Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TAOのSSLIOP、HTIOP、SHMIOP対応のための修正 #1013

Draft
wants to merge 19 commits into
base: master
Choose a base branch
from

Conversation

Nobu19800
Copy link

@Nobu19800 Nobu19800 commented Jan 20, 2022

Identify the Bug

Description of the Change

TAOのSSLIOP、HTIOP、SHMIOP通信対応のために以下の修正を行った。

  • CMakeでのインストール時に各種設定ファイルの自動生成
    • SHMIOP用設定ファイル:rtc.shmiop.confsvc.conf
    • SSLIOP用設定ファイル:rtc.ssliop.confsvc.conf
    • HTIOP用設定ファイル:rtc.htiop.confsvc.confHT_Config.conf
  • SSLIOP対応のためのAccessDecisionオブジェクトの設定を追加。TAOのSSLIOP機能ではSSL通信以外でのCORBAオブジェクトへのアクセスを拒否する設定ができる。プロセス内部からのCORBAオブジェクトの操作もSSL通信ではないためデフォルトで拒否するようになっている。このため、AccessDecisionオブジェクトのdefault_collocated_decision関数でプロセス内部からの操作は許可するようにしている。

Verification

  • Did you succeed the build?
  • No warnings for the build?
  • Have you passed the unit tests?

@Nobu19800 Nobu19800 added the enhancement New feature or request label Jan 20, 2022
@Nobu19800 Nobu19800 requested a review from n-ando January 20, 2022 15:17
@Nobu19800 Nobu19800 self-assigned this Jan 20, 2022
n-ando
n-ando previously approved these changes Jan 24, 2022
@n-kawauchi n-kawauchi marked this pull request as ready for review August 30, 2024 09:06
Copy link

@n-kawauchi n-kawauchi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ubuntu24.04環境での確認で、ビルドエラーになります。
まずTAOのインストールですが、下記ドキュメントの手順(TAO7.0.6利用)に従うと下記エラーになったため、最新の8.0.1を使いました。
https://openrtm.org/openrtm/ja/node/7131#ubuntu

cd TAO
make
 :
../../tao/Any_Insert_Policy_T.h:42:14: error: ‘void CORBA::Any::operator<<=(unsigned char)’ is private within this context
   42 |         (*p) <<= x;
      |         ~~~~~^~~~~

OpenRTMのビルドは下記手順に従うとcmakeエラーになりました。
https://openrtm.org/openrtm/ja/doc/installation/install_2_0/cpp_2_0/build_2_0/openrtm_cpp_cmake_build#toc4

CMake Error at /usr/share/cmake-3.28/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - TAO_Svc_Utils

そこで、cmake直前にTAOインストール先のpkgconfigを指定したところcmakeは通りました。

export PKG_CONFIG_PATH=${ACE_INSTALL_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH

しかしビルドエラーになります。

cmake --build . --config Release -- -j$(nproc)
  :
/home/vagrant/work/ace_install/include/tao/ParameterModeC.h:47:2: error: #error This file should be regenerated with TAO_IDL
   47 | #error This file should be regenerated with TAO_IDL
      |  ^~~~~
In file included from /home/vagrant/work/ace_install/include/tao/IOPC.h:58:
/home/vagrant/work/ace_install/include/tao/OctetSeqC.h:56:2: error: #error This file should be regenerated with TAO_IDL
   56 | #error This file should be regenerated with TAO_IDL
      |  ^~~~~
/home/vagrant/work/ace_install/include/tao/IOPC.h:61:2: error: #error This file should be regenerated with TAO_IDL
   61 | #error This file should be regenerated with TAO_IDL
      |  ^~~~~
  :以下、同様のエラーが続く

@n-kawauchi n-kawauchi marked this pull request as draft September 2, 2024 05:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants