-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
events_v1_event_parseFromJSON SegFault due to invalid cJSON pointer #245
Comments
I got events with null event_time from my k8s cluster (v1.22). For stability purpose, we should make the object <-> JSON conversion smooth. Here is my proposed improvement: diff --git a/client/kubernetes/model/events_v1_event.c b/client/kubernetes/model/events_v1_event.c
index 59a4e2d..70cd75e 100644
--- a/client/kubernetes/model/events_v1_event.c
+++ b/client/kubernetes/model/events_v1_event.c
@@ -179,12 +179,11 @@ cJSON *events_v1_event_convertToJSON(events_v1_event_t *events_v1_event) {
// events_v1_event->event_time
- if (!events_v1_event->event_time) {
- goto fail;
- }
+ if (events_v1_event->event_time) {
if(cJSON_AddStringToObject(item, "eventTime", events_v1_event->event_time) == NULL) {
goto fail; //Date-Time
}
+ }
// events_v1_event->kind
@@ -462,7 +461,7 @@ events_v1_event_t *events_v1_event_parseFromJSON(cJSON *events_v1_eventJSON){
deprecated_first_timestamp && !cJSON_IsNull(deprecated_first_timestamp) ? strdup(deprecated_first_timestamp->valuestring) : NULL,
deprecated_last_timestamp && !cJSON_IsNull(deprecated_last_timestamp) ? strdup(deprecated_last_timestamp->valuestring) : NULL,
deprecated_source ? deprecated_source_local_nonprim : NULL,
- strdup(event_time->valuestring),
+ event_time && !cJSON_IsNull(event_time) ? strdup(event_time->valuestring) : NULL,
kind && !cJSON_IsNull(kind) ? strdup(kind->valuestring) : NULL,
metadata ? metadata_local_nonprim : NULL,
note && !cJSON_IsNull(note) ? strdup(note->valuestring) : NULL, |
By comparison, |
The Kubernetes project currently lacks enough contributors to adequately respond to all issues. This bot triages un-triaged issues according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
This segfault occurs due to a lack of valid cJSON obj validation in events_v1_event_parseFromJSON
c/kubernetes/model/events_v1_event.c
Line 465 in 2d93989
The text was updated successfully, but these errors were encountered: