내용 목차
wsadmin에서 release 이후 패치된 버전에 대한 diff 정보를 볼 수 있는 명령어를 추가하였다.
[예 3.1] wsadmin > patchinfo 정보
$$2 webtob (wsadm) [2015/09/22:14:40:02]: patchinfo ---------- B291.10.0(2015/05/08) : (CHG) Change *NODE.LimitRequestLine, *NODE.LimitRequestFieldSize' default value(8190->16382). B291.9.0 (2015/04/23) : (CHG) Change processing incomplete POST body. IMS-95420 B291.8.0 (2015/04/21) : (ADD) Add *NODE.Options="ProcessIncompleteRequest". IMS-95420 B291.7.0 (2015/04/13) : (ADD) Add a new type of license for cloud. B291.6.0 (2015/03/27) : (CHG) Change OpenSSL binary for AES cipher on Sun Sparc. IMS-94411 B291.5.0 (2015/03/23) : (CHG) Upgrade OpenSSL from 1.0.1l to 1.0.1m because of CVE-2015-0286 (and etc). B291.4.0 (2015/03/20) : (CHG) Synchronize response status code with JSV (accesslog). IMS-88401 B291.3.0 (2015/03/06) : (CHG) Upgrade OpenSSL from 1.0.1j to 1.0.1l because of CVE-2015-0204 (and etc). B291.2.0 (2015/03/04) : (BUG) Fix a bug that a memory leak occurs in reverse proxy. IMS-93593 B291.1.0 (2015/02/26) : (CHG) Change socket option(SO_REUSEADDR->SO_EXCLUSIVEADDRUSE) on Windows. IMS-93718 Released (2015/01/29) : 4.1.8.1-B291.0.0 ----------
관련이슈 : IMS-90114
TCPGW를 사용할 때 클라이언트와의 연결 로그를 남길지 여부에 대한 설정을 추가하였다.
관련이슈 : IMS-96365
OpenSSL에서 지원하는 ECDHE-RSA Key Exchange 방식을 사용하기 위하여 해당 기능을 추가하였다.
관련이슈 : IMS-99064
WebDAV(Web Distributed Authoring and Versioning, 웹 분산 저작 및 버전 관리) 기능을 지원한다.
HTTP의 확장 프로토콜로 아래와 같이 NODE(VHOST) 절에 메소드를 추가하여 서버에 저장된 문서와 파일을 편집하고 관리할 수 있다. WebtoB에서는 PUT, DELETE, COPY, MOVE, MKCOL, PROPFIND 메소드를 지원한다. (LOCK/UNLOCK ,PROPPATCH 제외)
해당 기능을 사용하지 않고자 할 때는 특정 method를 disable하도록 설정하면 된다. 자세한 사항은 RFC-4918을 참고한다.
[예 3.3] WebDAV 기능 설정 방법
*VHOST
vhost1 ...
Method = "GET, POST, HEAD, OPTIONS, PROPFIND, PUT, DELETE, MKCOL, COPY, MOVE"
(default:"GET, POST, HEAD, OPTIONS")
...
관련이슈 : IMS-82239
wsadmin> cl off 명령을 수행할 때 listen port를 내리고, 이미 HTH와 연결된 클라이언트는 close해주도록 기능을 추가하였다. 단, 이미 처리 중이거나(RUNNING) 큐잉된 요청의 클라이언트에 대해서는 정상적으로 해당 요청처리가 끝나면 close해주도록 한다.
관련이슈 : IMS-98088
Windows에서 소켓을 생성할 때 SO_REUSEADDR 소켓 옵션을 사용했을 경우, 이미 bind된 소켓을 다시 bind할 수 있는 문제가 있어 SO_REUSEADDR 옵션 대신 SO_EXCLUSIVEADDRUSE 사용하도록 변경하였다.
관련이슈 : IMS-93718
JEUS로부터 응답을 받아 처리한 경우 access log를 남길 때 기존에는 마지막 메시지의 rdode 값을 사용하였으나, 첫 번째 받은 메시지의 Response status code를 사용하도록 변경하였다.
관련이슈 : IMS-88401
Sun Sparc에서 AES 암호화 알고리즘을 사용하는 경우 정상 동작하지 않는 문제가 있었다. 이는 cc(SunStudio11) 사용하여 컴파일할 때 발생할 수 있는 문제로 SunOS Sparc 서버의 cc compiler에 대한 패치를 진행하였다.
관련이슈 : IMS-94411
클라이언트가 body data를 Content-Length 만큼 다 보내지 않은 상태에서 연결을 미리 끊은 경우, 기존에는 WebtoB는 클라이언트 연결과 해당 서버의 연결을 끊고 남은 body를 버렸으나, 클라이언트로부터 받은 데이터를 body data에 대해 (클라이언트가 close하더라도) 해당 서버로 전달하도록 변경하였다.
해당 기능을 사용하기 위해서는 다음을 추가하여야 한다.
*NODE.Options="ProcessIncompleteRequest"
관련이슈 : IMS-95420
*NODE 절의 LimitRequestFieldSize 및 LimitRequestLine의 Max 값이 기존 8KB에서 16KB로 변경되었다.
[예 3.4] *NODE.LimitRequestFieldSize, LimitRequestLine MAX 값 변경
*NODE webtob ... LimitRequestFieldSize = Numeric, # 8190 (0-16382) LimitRequestLine = Numeric, # 8190 (0-16382) ...
관련이슈 : IMS-92139
*NODE.HTH의 최대 설정 가능한 수를 20에서 100으로 변경한 이후에 발생한 문제로 usrinc/wsadmin.h에 MAX_NUM_HTH 값을 20에서 100으로 변경하여 SysMaster 3에서 WEBADM이 정상동작하지 않는 오류가 수정되었다.
관련이슈 : IMS-96515
해당 로그는 JEUS에서 WebtoB reconnect 후(또는 chunk 응답 완료후) 아래와 같이 알수 없는 메시지를 보내는 경우에 발생하는데, 이는 known bug로 해당 로그 레벨을 Warning에서 Debug로 변경하였다.
관련이슈 : IMS-98223
해당 로그는 중간에 방화벽 등으로 인해 JSV connection이 RUN 상태로 오래 지속되는 경우 발생할 수 있는 로그이다. 해당 현상에 대해 자세한 분석을 할 수 있도록 해당 로그 레벨을 Debug에서 Warning으로 변경하였다.
(FlowControl 값이 default 50인 경우) 기존에는 HttpOutBufSize를 0으로 설정하였을 경우 Max HttpOutBufSize인 16MB를 사용하게 되어 FlowControl 버퍼 사이즈가 800MB 정도로 큰 값을 사용하여 malloc fail 현상이 발생할 수 있는 문제가 있었다. 그리하여 HttpOutBufSize를 0으로 설정하였을 경우 FlowControl 버퍼를 만들때는 8KB를 사용하도록 변경하였다. 즉 변경 후에는 FlowControl 버퍼 사이즈가 400KB정도가 된다.
관련이슈 : IMS-97655
WBSSL의 버전을 기존의 "WBSSL 1.0.1j"에서 "WBSSL 2.2.2"로 업그레이드하였다.
최근 계속해서 발생하는 OpenSSL의 보안 취약점 문제를 해결하기 위하여 SSL/TLS 통신 프로토콜 처리 부분을 개선한 OpenSSL 대체 라이브러리를 포함하였다.
관련이슈 : IMS-90114
Reverse Proxy 사용 중 클라이언트가 응답을 받기 전 연결을 끊은 경우에 대해 Request를 담고 있는 메모리가 해제되지 않는 경우에 즉, errorlog에 "RPROXY : premature client close.."가 남는 경우 memory leak이 발생할 수 있는 문제가 수정되었다.
관련이슈 : IMS-93593
Reverse Proxy를 사용하는 경우 내부 context가 동기화 되지 않은 경우에 발생하며, 반복적인 "HTH0121" 로그가 발생하여 CPU 점유율이 높아지는 오류가 수정되었다.
관련이슈 : IMS-97301
Request uri를 WJPv2로 사용하여 JEUS로 전달할 때 query string을 제외한 WJPv1과 동일한 원래의 request가 전달되도록 수정되었다.
ForceCacheModificationCheck=Y로 설정할 때 Location Response Header가 포함되지 않아서 클라이언트(브라우저)가 redirect를 하지 못하는 오류가 수정되었다.
관련이슈 : IMS-97699
wsadmin에서 restat 명령을 수행하였을 경우 st -j, st -rp, st -rpg 등의 명령어를 통해 확인할 수 있는 통계정보가 초기화되지 않는 오류가 수정되었다.
관련이슈 : IMS-99714
chunked data를 다 파싱하고 났을 때 더 이상 남은 request body가 없다는 것을 체크하지 못하고 "HTH0473" 로그를 남기며 JEUS와 연결이 끊어지는 오류를 수정하였다.
관련이슈 : IMS-99965
HTH가 caching된 item으로 클라이언트에게 응답할 때 소켓에 다 write하기전에 이미 status를 READY로 변경해 버리는 문제로 인해 "HTH0381" 로그가 syslog에 남을 수 있는 오류를 수정하였다.
관련이슈 : IMS-99701
HTH는 JSV Response를 read() 한후 offset을 옮겨가며 이를 parsing하여 compression을 위해 HTMLS로 넘겨주는데 이때 JSV Response 를 read()한 버퍼가 full 이고, 내부 WJP header/body offset이 정확히 buffer의 끝에 있을 때 HTH가 무한 loop에 빠질 수 있는 오류를 수정하였다.
WebtoB 4.1 SP5 Fix#3 이상 WebtoB 4.1 SP8 Fix#1 이하 버전에서 발생하는 오류 현상이다.
관련이슈 : IMS-100466
HTH에서 WSM에게 로그 메시지를 file에 써 달라고 요청하는 과정에서 한번에 다 못쓰는 경우에 HTH가 Length 계산을 잘못하면서 WSM에게 데이터를 잘못 보내는 오류를 수정하였다.
WebtoB 4.1 SP5 Fix#0 이상 WebtoB 4.1 SP8 Fix#1 이하 버전에서 발생하는 오류 현상이다.
관련이슈 : IMS-98890