본문 바로가기
728x90

전체 글550

CryptoJS.enc.Utf8.parse in c CryptoJS.enc.Utf8.parse 를 사용하면 wordArray가 나온다고 설명되어있다. wordArray란? https://gist.github.com/joecliff/10948592 c에서는 주석된 부분을 사용하면 된다. 저걸 사용하면 binary->hex뿐만아니라 다 사용가능하다. 여튼 CryptoJS.enc.Utf8.parse를 쓰는부분이 있다면 #if1 ~ #endif 를 사용하면된다. int QC_Hmac_Sha256_BAAS(char* phskey, char* pdt, int ndt, char* pkey, int nkey, MYSQL* pConn) { unsigned char zresult[SHA256_DIGEST_LENGTH + 1]; unsigned char* presult; E.. 2023. 1. 9.
linux javac 사용 예시 -Javac -cp .:./scpdb.jar ScpDbSampleCode_TotalExport.java -Java -cp .:./scpdb.jar ScpDbSampleCode_TotalExport ​ 밑에 사진은 직접 해본결과고 파일의 바뀐 시간을 보면될듯 ​ 2023. 1. 9.
환경파일 콜 void Get_SCfg_Value(char *zkey, char *zvalue, char *zfile, int fpointer) /*----------------------------------------------------------------------------*/ { char buf[1024], *sp; int nkeylen; struct stat config_stat; sprintf (buf, "%s/%s", getenv ("_Q_CFG"), zfile); if(!fpFiles[fpointer]) { if ((fpFiles[fpointer] = fopen (buf, "r")) == 0) { Exit_Process (); } stat(buf, &config_stat); tVerFile[fpoi.. 2023. 1. 9.
네트워크 관련(L2, L3, L4 스위치) 난 아무것도 반영안했는데 갑자기 안되는 경우가 많다. 그럼 어디가 문제일까. 내 소스를 먼저 의심하고 두번째는 네트워크를 의심하는게 맞는거 같다. 예외처리가 잘못되서 서버가 죽거나 할 경우도 있지만 보통 네트워크에서 문제가 생기는 것 같다. 여러번의 시행착오를 봐온 결과 서버개발자는 인프라도 알고있어야한다. ​ 무엇부터 시작을 해야할까. 네트워크 전개도를 보기 시작했다. -- 리눅스 명령어들 ifconfig ipconfig curl ifconfig.me netstat ipv4 tcp4 ipv6 tcp6 2023. 1. 9.
swagger 함수들 예시 2023. 1. 9.
was 시작 퇴사자가 생겨서 was를 하게 되었다. 좋은 기회가 왔다. 사수는 없지만 java로 서버를 보게되어 좋다. c언어가 메인이지만 드디어 java로 진입하게 된것..(사실 자바말고 요즘은 자바스크립하고싶음..노드) 옛날에 배울때만하더라도 jsp로 배우고 했는데 좀 많이 변한거같다. 자바를 안까먹기 위해서 일부러 알고리즘문제도 자바로 풀고있었는데 다행이다. 이론적으로 절차지향과 객체지향이여서 다르다. 젤 다른점은 c는 끝까지 파고들어가지는데 java는 아니다. 이게 제일 큰 차이점 같다. 아니라고? 몰라.. ​ 이미뭐 간단한 소스수정도 가능하고 운영에도 배포해본 경험이 생겨서 세팅은 어느정도 된거같다. 인텔리제이도 회사용으로 구매해놓은 상태고. ​ 할일은 많다. 좀만 부지런하게 배우고 익히자. 지금은 disp.. 2023. 1. 9.
C-JSON EXAMPLE 예제 3 - ARRAY 다른형태 /* setting */ json_object *subobj, *taglist_obj, *tag_obj; subobj = json_object_new_object(); taglist_obj = json_object_new_array(); tag_obj = json_object_new_string("test1"); json_object_array_add(taglist_obj, tag_obj); tag_obj = json_object_new_string("test2"); json_object_array_add(taglist_obj, tag_obj); /* merge */ json_object_object_add(subobj, "tag_list", taglist_obj); /* free */ json_obje.. 2023. 1. 9.
mysql(mariadb)에서 .sql 파일 실행시키기 실행법 MariaDB [(none)]> source /home/path/1000.sql ​ .sql 내부 내용물 INSERT INTO QTDB.TC1000HS (`TRADE_DATE`, `PREV_DAY`, `PREV_1MONTH`, `PREV_6MONTH`) VALUES ('20211230', '20211229', '', ''); INSERT INTO QTDB.TC1000HS (`TRADE_DATE`, `PREV_DAY`, `PREV_1MONTH`, `PREV_6MONTH`) VALUES ('20211229', '20211228', '', ''); INSERT INTO QTDB.TC1000HS (`TRADE_DATE`, `PREV_DAY`, `PREV_1MONTH`, `PREV_6MONTH`) VALU.. 2023. 1. 9.
tcp recv에 대한 고찰 tcp recv는 패킷길이가 10이라고 서로 규정을 하고 10을 보낸다하더라도 한번에 8이 올수도있고 10이 올수도 있다. 여러번으로 나뉘어 올 수도 있다는 것이다. 그렇기때문에 tcp recv로 받을 때는 패킷의 길이를 측정해서 나뉘어왔다면 붙여서 내려받는 방법이 있다. int Tcp_Recvn (int p_sfd, char *p_buf, int p_len) { int retry_cnt, msg_len; int buf_sz; buf_sz = p_len; retry_cnt = 0; while (buf_sz > 0) { msg_len = recv (p_sfd, p_buf, buf_sz, 0); if (msg_len 50) .. 2023. 1. 9.
리눅스 서버 설치(대략적인 순서) centos 설치완료 후 버전체크 1. cat /etc/redhat-release -> 버전 체크 7.7.1908 2. 비프음 끄기 - ls -al - .bash_profile 열어서 맨 밑에 setterm -blength 0 추가 - . .bash_profile로 적용 3. sshd 설치확인 - rpm -qa | grep openssh-server - yum install openssh-server - which sshd - firewall-cmd --zone=public --add-port=22/tcp --permanent(디비 유저권한 준다음 db포트도 열어줘야함) - firewall-cmd --reload (포트 재로딩) - firewall-cmd --list-ports (열린 포트 확인하는 방법.. 2023. 1. 9.
728x90