본문 바로가기

전체 글340

C++ & AFX(MFC) 환경에서 사용자 정의 메세지 사용하면서 SendMessage으로 메세지 호출할 때 Run-Time Check Failure C++ & AFX(MFC) 환경에서 사용자 정의 메세지 사용하면서 SendMessage으로 메세지 호출할 떄... Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention.위와 같은 오류가 났던 경우가 있었습니다. 이틀동안 엄청 삽질했는데... 보통 이런경우 메모리가 꼬여서 (Overflow/일부 메모리 free등) 문제가 발생했.. 2019. 6. 27.
안전한 IOCP 프로그래밍 GQCS = GetQueuedCompletionStatus 비동기 처리 함수들 (WSARecv, WSASend, WriteFile, ReadFile 등) 비동기 처리 개수만큼 GQCS 결과 발생 GQCS의 return이 FALSE일 경우에도 key 및 lpOverlapped가 NULL이 아닌 경우에는 해당 이벤트에 대한 처리가 필요함 (이런 경우에는 해당 핸들에 오류가 발생한 것으로 GetLastError으로 오류결과 받을 수 있고 해당 핸들에 대한 정리(Cleanup) 처리 등이 필요) PostQueuedCompletionStatus로 비동기 처리에 대한 대체결과 Post가능 (이 경우 기존 작업 취소됨(?)) 예를 들어 비동기 WSARecv받는 중에 closesocket하면 GQCS의 return값이.. 2019. 6. 23.
OpenSSL FIPS 빌드 저의 빌드 환경은 Windows x86 64bit , Visual Studio 2015 환경입니다. 그리고 필요한 프로그램들은 (대략) 아래와 같습니다. (더 필요할 수 있음) nasm (32bit/64bit 둘 다 따로 설치) ActivePerl D:\replace.bat (아래) @echo ON setlocal call :FindReplace %1 %2 %3 exit /b :FindReplace set tmp="%temp%\tmp.txt" If not exist %temp%\_.vbs call :MakeReplace for /f "tokens=*" %%a in ('dir "%3" /s /b /a-d /on') do ( for /f "usebackq" %%b in (`Findstr /mi.. 2019. 6. 19.
Nitrokey HSM key import 처음부터 HSM을 사용하지 않다가 HSM을 사용하게 된다면 기존의 Key와 인증서들을 HSM으로 Import해야 하는 경우가 발생합니다. 하지만 이러한 것은 보안상의 문제로 많은 HSM에서 공식적으로 지원하지 않습니다. (잘 생각은 안나는데.. 무슨 인증을 받으려면(CC였나?) 이러한 기능이 존재하면 안된다고 합니다.. 확실치는 않아요.. 지나가다 본거 같아서.. 정확히는 key import의 경우 안전한 random으로 만들어진 key가 아니라서 그랬다고 했나 쨋든...) 공식적으로 지원하지 않는 만큼.. 좋은 방법이 아닙니다. HSM내에서 안전한 Random generator를 통해서 생성한 Key를 외부에 노출하지 않고 HSM내부에만 저장하여 안전하게 보관하는 것이 좋습니다. 저 또한.. Key를 .. 2019. 6. 8.
전동 블라인드 만들기 피곤해서 누웠는데 창문으로 밝은 빛이...★...ㅠㅠ 블라인드 내리기 귀찮아서 언제 전동블라인드 만들어야지... 생각만 하다가 휴일이 된 김에 만들었네요~ 블라인드 제조사는 기억이 안납니다.. 뒤지면 나올텐데.. 뭐 다들 비슷할거라 생각해서 PASS하고.. 사용한 부품은 아래와 같습니다. 스테핑 모터 : 17HS4401 (토크 : 40N.cm 으로써 토크가 큰걸 골랐습니다. (블라인드 무거움..)) 모터 드라이버 : DRV8825 모듈 (vref=0.7V 으로써 current limit를 1.4A으로 정했습니다.) 제어 : Arduino Pro mini 릴레이모듈(필요없지만.. 혹시나 해서 보호회로 구현하려고 넣음.. FET가 없어서 그렇지 그냥 FET쓰거나 모터드라이브 Shutdown하는게 더 나아요... 2019. 6. 6.
Kubernetes Node가 계속해서 NotReady/Ready를 오가는 경우 kubelet와 kubernetes-cni를 업그레이드 하고 관련해서 flannel등등 업그레이드 하고... 중요한 것! # kubeadm upgrade apply v1.14.2 이 명령으로 apiserver를 업그레이트 해 주어야 한다! 1.13.1 환경에서 가끔 연결 끊기고 DB연결이 특히나 문제가 되었었는데.. 그런 문제가 말끔히 해결되었다... 2019. 6. 3.
반응형