Commit 466d0780 authored by Greg Messner's avatar Greg Messner
Browse files

Changes handling of missing X-GitLab-Event header (#248).

parent 3eeb140c
...@@ -54,13 +54,19 @@ public class SystemHookManager extends HookManager { ...@@ -54,13 +54,19 @@ public class SystemHookManager extends HookManager {
*/ */
public void handleEvent(HttpServletRequest request) throws GitLabApiException { public void handleEvent(HttpServletRequest request) throws GitLabApiException {
String eventName = request.getHeader("X-Gitlab-Event");
if (eventName == null || eventName.trim().isEmpty()) {
String message = "X-Gitlab-Event header is missing!";
LOGGER.warning(message);
return;
}
if (!isValidSecretToken(request)) { if (!isValidSecretToken(request)) {
String message = "X-Gitlab-Token mismatch!"; String message = "X-Gitlab-Token mismatch!";
LOGGER.warning(message); LOGGER.warning(message);
throw new GitLabApiException(message); throw new GitLabApiException(message);
} }
String eventName = request.getHeader("X-Gitlab-Event");
LOGGER.info("handleEvent: X-Gitlab-Event=" + eventName); LOGGER.info("handleEvent: X-Gitlab-Event=" + eventName);
if (!SYSTEM_HOOK_EVENT.equals(eventName)) { if (!SYSTEM_HOOK_EVENT.equals(eventName)) {
String message = "Unsupported X-Gitlab-Event, event Name=" + eventName; String message = "Unsupported X-Gitlab-Event, event Name=" + eventName;
......
...@@ -52,13 +52,18 @@ public class WebHookManager extends HookManager { ...@@ -52,13 +52,18 @@ public class WebHookManager extends HookManager {
*/ */
public void handleEvent(HttpServletRequest request) throws GitLabApiException { public void handleEvent(HttpServletRequest request) throws GitLabApiException {
String eventName = request.getHeader("X-Gitlab-Event");
if (eventName == null || eventName.trim().isEmpty()) {
LOGGER.warning("X-Gitlab-Event header is missing!");
return;
}
if (!isValidSecretToken(request)) { if (!isValidSecretToken(request)) {
String message = "X-Gitlab-Token mismatch!"; String message = "X-Gitlab-Token mismatch!";
LOGGER.warning(message); LOGGER.warning(message);
throw new GitLabApiException(message); throw new GitLabApiException(message);
} }
String eventName = request.getHeader("X-Gitlab-Event");
LOGGER.info("handleEvent: X-Gitlab-Event=" + eventName); LOGGER.info("handleEvent: X-Gitlab-Event=" + eventName);
switch (eventName) { switch (eventName) {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment