노무현 전 대통령 서거 - 삼가 고인의 명복을 빕니다


'2010/03'에 해당되는 글 4건

  1. 2010/03/26 How to close session when closing modeless CDHtmlDialog
  2. 2010/03/25 XMPP over BOSH
  3. 2010/03/19 File encryption with OpenSSL
  4. 2010/03/09 청첩의 변
2010/03/26 01:23

How to close session when closing modeless CDHtmlDialog

CDHtmlDialog에서 상속받은 클래스에서 Navigate() method를 통해 웹 사이트에 접속한 후
modeless dialog를 닫을 때, dialog는 닫히지만 실제로 세션은 닫히지 않는다.
(내장된 웹브라우저 컨트롤의 instance가 해제되지 않는다.)

이 경우, 아래와 같이 처리해야 한다.

CDHtmlDialog_Derived::PostNcDestroy()
{
    delete this;
    CDHtmlDialog::PostNcDestroy();
}

CDHtmlDialog_Derived::OnClose()
{
    DestroyModeless();
    return;
}
위와 같이 할 경우 dialog가 닫힐 때 세션이 정리된다.
저작자 표시
Trackback 0 Comment 0
2010/03/25 23:28

XMPP over BOSH

강한 네트워크 보안 정책을 운용하는 환경에 속해 있을 경우,
일부 허용된 포트 (주로 http / https)만 접근이 가능하다.

이런 환경에서 TCP 5222 포트로 서비스하고 있는 XMPP 서버에 접근할 수 없을 경우,
HTTP 프로토콜의 payload에 XMPP 패킷을 올려서 (wrapping) 사용할 수 있다. (아래 참조)

XMPP over BOSH payload



○ 관련 프로토콜 명세: http://xmpp.org/extensions/xep-0124.html

※ 아직 조사가 더 필요하지만, synchronous XMPP 프로토콜 구현이 가능할 경우, 활용 가치가 매우 높다.
저작자 표시 비영리 변경 금지
Trackback 0 Comment 0
2010/03/19 10:01

File encryption with OpenSSL

○ OpenSSL에서 제공하는 EVP cryptography 추상화 계층과 BIO I/O 추상화 계층을 이용하여 파일에 대한 암/복호화를 수행하는 라이브러리
* 마이크로소프트웨어 2004.01월에 발간된 내용 참조

○ 간략한 사용 방법:
int main(int argc, char* argv[])
{
int is_encrypt = 0;
int result = 0;

if (argv[1][0] == 'e')
{
is_encrypt = 1;
}
else if (argv[1][0] == 'd')
{
is_encrypt = 0;
}
else
{
printf("[ERROR] invalid option. Only e (for encryption) and d (for decryption) allowed.\n");
return -1;
}

result = do_encryption(argv[2], argv[3], is_encrypt);
if (result != 0)
{
printf("[ERROR] Failed to encrypt.\n");
}
else
{
printf("[INFO] Successfully done.\n");
}

return 0;
}

○ 첨부된 파일
저작자 표시 변경 금지
Trackback 0 Comment 0
2010/03/09 01:41

청첩의 변

모든 것이 새로워지는 꽃향기 그윽한 봄 햇살 아래
오늘이 있기까지 많은 사랑과 관심을 기울여주신
여러 어르신과 친지분을 모시고
저희 두 사람이 새 인생을 시작하려 합니다.
부디 참석하시어 새 인생의 첫 출발을 축복으로 빛내주시기 바랍니다.

Trackback 0 Comment 0