cmdmon: replace definitions of empty requests with null request
This commit is contained in:
parent
438b881ab4
commit
31669f343a
2 changed files with 28 additions and 79 deletions
60
candm.h
60
candm.h
|
@ -116,6 +116,10 @@ typedef struct {
|
||||||
pktlength.c, to get the number of bytes that ought to be
|
pktlength.c, to get the number of bytes that ought to be
|
||||||
transmitted for each packet type. */
|
transmitted for each packet type. */
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
int32_t EOR;
|
||||||
|
} REQ_Null;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
IPAddr mask;
|
IPAddr mask;
|
||||||
IPAddr address;
|
IPAddr address;
|
||||||
|
@ -215,19 +219,11 @@ typedef struct {
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
} REQ_Manual;
|
} REQ_Manual;
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_N_Sources;
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int32_t index;
|
int32_t index;
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
} REQ_Source_Data;
|
} REQ_Source_Data;
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_Rekey;
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
IPAddr ip;
|
IPAddr ip;
|
||||||
int32_t subnet_bits;
|
int32_t subnet_bits;
|
||||||
|
@ -264,10 +260,6 @@ typedef struct {
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
} REQ_Del_Source;
|
} REQ_Del_Source;
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_WriteRtc;
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
Float dfreq;
|
Float dfreq;
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
|
@ -279,27 +271,11 @@ typedef struct {
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
} REQ_Doffset;
|
} REQ_Doffset;
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_Tracking;
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
uint32_t index;
|
uint32_t index;
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
} REQ_Sourcestats;
|
} REQ_Sourcestats;
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_RTCReport;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_TrimRTC;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_CycleLogs;
|
|
||||||
|
|
||||||
/* This is based on the response size rather than the
|
/* This is based on the response size rather than the
|
||||||
request size */
|
request size */
|
||||||
#define MAX_CLIENT_ACCESSES 8
|
#define MAX_CLIENT_ACCESSES 8
|
||||||
|
@ -310,27 +286,11 @@ typedef struct {
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
} REQ_ClientAccessesByIndex;
|
} REQ_ClientAccessesByIndex;
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_ManualList;
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int32_t index;
|
int32_t index;
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
} REQ_ManualDelete;
|
} REQ_ManualDelete;
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_MakeStep;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_Activity;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int32_t EOR;
|
|
||||||
} REQ_Reselect;
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
Float distance;
|
Float distance;
|
||||||
int32_t EOR;
|
int32_t EOR;
|
||||||
|
@ -398,6 +358,7 @@ typedef struct {
|
||||||
uint32_t token; /* Command token (to prevent replay attack) */
|
uint32_t token; /* Command token (to prevent replay attack) */
|
||||||
|
|
||||||
union {
|
union {
|
||||||
|
REQ_Null null;
|
||||||
REQ_Online online;
|
REQ_Online online;
|
||||||
REQ_Offline offline;
|
REQ_Offline offline;
|
||||||
REQ_Burst burst;
|
REQ_Burst burst;
|
||||||
|
@ -415,27 +376,16 @@ typedef struct {
|
||||||
REQ_Settime settime;
|
REQ_Settime settime;
|
||||||
REQ_Local local;
|
REQ_Local local;
|
||||||
REQ_Manual manual;
|
REQ_Manual manual;
|
||||||
REQ_N_Sources n_sources;
|
|
||||||
REQ_Source_Data source_data;
|
REQ_Source_Data source_data;
|
||||||
REQ_Rekey rekey;
|
|
||||||
REQ_Allow_Deny allow_deny;
|
REQ_Allow_Deny allow_deny;
|
||||||
REQ_Ac_Check ac_check;
|
REQ_Ac_Check ac_check;
|
||||||
REQ_NTP_Source ntp_source;
|
REQ_NTP_Source ntp_source;
|
||||||
REQ_Del_Source del_source;
|
REQ_Del_Source del_source;
|
||||||
REQ_WriteRtc writertc;
|
|
||||||
REQ_Dfreq dfreq;
|
REQ_Dfreq dfreq;
|
||||||
REQ_Doffset doffset;
|
REQ_Doffset doffset;
|
||||||
REQ_Tracking tracking;
|
|
||||||
REQ_Sourcestats sourcestats;
|
REQ_Sourcestats sourcestats;
|
||||||
REQ_RTCReport rtcreport;
|
|
||||||
REQ_TrimRTC trimrtc;
|
|
||||||
REQ_CycleLogs cyclelogs;
|
|
||||||
REQ_ClientAccessesByIndex client_accesses_by_index;
|
REQ_ClientAccessesByIndex client_accesses_by_index;
|
||||||
REQ_ManualList manual_list;
|
|
||||||
REQ_ManualDelete manual_delete;
|
REQ_ManualDelete manual_delete;
|
||||||
REQ_MakeStep make_step;
|
|
||||||
REQ_Activity activity;
|
|
||||||
REQ_Reselect reselect;
|
|
||||||
REQ_ReselectDistance reselect_distance;
|
REQ_ReselectDistance reselect_distance;
|
||||||
} data; /* Command specific parameters */
|
} data; /* Command specific parameters */
|
||||||
|
|
||||||
|
|
47
pktlength.c
47
pktlength.c
|
@ -44,9 +44,8 @@ command_unpadded_length(CMD_Request *r)
|
||||||
return 0;
|
return 0;
|
||||||
} else {
|
} else {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
|
|
||||||
case REQ_NULL:
|
case REQ_NULL:
|
||||||
return offsetof(CMD_Request, data);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_ONLINE:
|
case REQ_ONLINE:
|
||||||
return offsetof(CMD_Request, data.online.EOR);
|
return offsetof(CMD_Request, data.online.EOR);
|
||||||
case REQ_OFFLINE:
|
case REQ_OFFLINE:
|
||||||
|
@ -78,11 +77,11 @@ command_unpadded_length(CMD_Request *r)
|
||||||
case REQ_MANUAL :
|
case REQ_MANUAL :
|
||||||
return offsetof(CMD_Request, data.manual.EOR);
|
return offsetof(CMD_Request, data.manual.EOR);
|
||||||
case REQ_N_SOURCES :
|
case REQ_N_SOURCES :
|
||||||
return offsetof(CMD_Request, data.n_sources.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_SOURCE_DATA :
|
case REQ_SOURCE_DATA :
|
||||||
return offsetof(CMD_Request, data.source_data.EOR);
|
return offsetof(CMD_Request, data.source_data.EOR);
|
||||||
case REQ_REKEY :
|
case REQ_REKEY :
|
||||||
return offsetof(CMD_Request, data.rekey.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_ALLOW :
|
case REQ_ALLOW :
|
||||||
return offsetof(CMD_Request, data.allow_deny.EOR);
|
return offsetof(CMD_Request, data.allow_deny.EOR);
|
||||||
case REQ_ALLOWALL :
|
case REQ_ALLOWALL :
|
||||||
|
@ -110,21 +109,21 @@ command_unpadded_length(CMD_Request *r)
|
||||||
case REQ_DEL_SOURCE :
|
case REQ_DEL_SOURCE :
|
||||||
return offsetof(CMD_Request, data.del_source.EOR);
|
return offsetof(CMD_Request, data.del_source.EOR);
|
||||||
case REQ_WRITERTC :
|
case REQ_WRITERTC :
|
||||||
return offsetof(CMD_Request, data.writertc.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_DFREQ :
|
case REQ_DFREQ :
|
||||||
return offsetof(CMD_Request, data.dfreq.EOR);
|
return offsetof(CMD_Request, data.dfreq.EOR);
|
||||||
case REQ_DOFFSET :
|
case REQ_DOFFSET :
|
||||||
return offsetof(CMD_Request, data.doffset.EOR);
|
return offsetof(CMD_Request, data.doffset.EOR);
|
||||||
case REQ_TRACKING :
|
case REQ_TRACKING :
|
||||||
return offsetof(CMD_Request, data.tracking.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_SOURCESTATS :
|
case REQ_SOURCESTATS :
|
||||||
return offsetof(CMD_Request, data.sourcestats.EOR);
|
return offsetof(CMD_Request, data.sourcestats.EOR);
|
||||||
case REQ_RTCREPORT :
|
case REQ_RTCREPORT :
|
||||||
return offsetof(CMD_Request, data.rtcreport.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_TRIMRTC :
|
case REQ_TRIMRTC :
|
||||||
return offsetof(CMD_Request, data.trimrtc.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_CYCLELOGS :
|
case REQ_CYCLELOGS :
|
||||||
return offsetof(CMD_Request, data.cyclelogs.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_SUBNETS_ACCESSED :
|
case REQ_SUBNETS_ACCESSED :
|
||||||
case REQ_CLIENT_ACCESSES:
|
case REQ_CLIENT_ACCESSES:
|
||||||
/* No longer supported */
|
/* No longer supported */
|
||||||
|
@ -132,15 +131,15 @@ command_unpadded_length(CMD_Request *r)
|
||||||
case REQ_CLIENT_ACCESSES_BY_INDEX:
|
case REQ_CLIENT_ACCESSES_BY_INDEX:
|
||||||
return offsetof(CMD_Request, data.client_accesses_by_index.EOR);
|
return offsetof(CMD_Request, data.client_accesses_by_index.EOR);
|
||||||
case REQ_MANUAL_LIST:
|
case REQ_MANUAL_LIST:
|
||||||
return offsetof(CMD_Request, data.manual_list.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_MANUAL_DELETE:
|
case REQ_MANUAL_DELETE:
|
||||||
return offsetof(CMD_Request, data.manual_delete.EOR);
|
return offsetof(CMD_Request, data.manual_delete.EOR);
|
||||||
case REQ_MAKESTEP:
|
case REQ_MAKESTEP:
|
||||||
return offsetof(CMD_Request, data.make_step.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_ACTIVITY:
|
case REQ_ACTIVITY:
|
||||||
return offsetof(CMD_Request, data.activity.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_RESELECT:
|
case REQ_RESELECT:
|
||||||
return offsetof(CMD_Request, data.reselect.EOR);
|
return offsetof(CMD_Request, data.null.EOR);
|
||||||
case REQ_RESELECTDISTANCE:
|
case REQ_RESELECTDISTANCE:
|
||||||
return offsetof(CMD_Request, data.reselect_distance.EOR);
|
return offsetof(CMD_Request, data.reselect_distance.EOR);
|
||||||
case REQ_MODIFY_MINSTRATUM:
|
case REQ_MODIFY_MINSTRATUM:
|
||||||
|
@ -228,11 +227,11 @@ PKL_CommandPaddingLength(CMD_Request *r)
|
||||||
case REQ_MANUAL:
|
case REQ_MANUAL:
|
||||||
return PADDING_LENGTH(data.manual.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.manual.EOR, data.null.EOR);
|
||||||
case REQ_N_SOURCES:
|
case REQ_N_SOURCES:
|
||||||
return PADDING_LENGTH(data.n_sources.EOR, data.n_sources.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.n_sources.EOR);
|
||||||
case REQ_SOURCE_DATA:
|
case REQ_SOURCE_DATA:
|
||||||
return PADDING_LENGTH(data.source_data.EOR, data.source_data.EOR);
|
return PADDING_LENGTH(data.source_data.EOR, data.source_data.EOR);
|
||||||
case REQ_REKEY:
|
case REQ_REKEY:
|
||||||
return PADDING_LENGTH(data.rekey.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.null.EOR);
|
||||||
case REQ_ALLOW:
|
case REQ_ALLOW:
|
||||||
return PADDING_LENGTH(data.allow_deny.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.allow_deny.EOR, data.null.EOR);
|
||||||
case REQ_ALLOWALL:
|
case REQ_ALLOWALL:
|
||||||
|
@ -260,21 +259,21 @@ PKL_CommandPaddingLength(CMD_Request *r)
|
||||||
case REQ_DEL_SOURCE:
|
case REQ_DEL_SOURCE:
|
||||||
return PADDING_LENGTH(data.del_source.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.del_source.EOR, data.null.EOR);
|
||||||
case REQ_WRITERTC:
|
case REQ_WRITERTC:
|
||||||
return PADDING_LENGTH(data.writertc.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.null.EOR);
|
||||||
case REQ_DFREQ:
|
case REQ_DFREQ:
|
||||||
return PADDING_LENGTH(data.dfreq.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.dfreq.EOR, data.null.EOR);
|
||||||
case REQ_DOFFSET:
|
case REQ_DOFFSET:
|
||||||
return PADDING_LENGTH(data.doffset.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.doffset.EOR, data.null.EOR);
|
||||||
case REQ_TRACKING:
|
case REQ_TRACKING:
|
||||||
return PADDING_LENGTH(data.tracking.EOR, data.tracking.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.tracking.EOR);
|
||||||
case REQ_SOURCESTATS:
|
case REQ_SOURCESTATS:
|
||||||
return PADDING_LENGTH(data.sourcestats.EOR, data.sourcestats.EOR);
|
return PADDING_LENGTH(data.sourcestats.EOR, data.sourcestats.EOR);
|
||||||
case REQ_RTCREPORT:
|
case REQ_RTCREPORT:
|
||||||
return PADDING_LENGTH(data.rtcreport.EOR, data.rtc.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.rtc.EOR);
|
||||||
case REQ_TRIMRTC:
|
case REQ_TRIMRTC:
|
||||||
return PADDING_LENGTH(data.trimrtc.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.null.EOR);
|
||||||
case REQ_CYCLELOGS:
|
case REQ_CYCLELOGS:
|
||||||
return PADDING_LENGTH(data.cyclelogs.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.null.EOR);
|
||||||
case REQ_SUBNETS_ACCESSED:
|
case REQ_SUBNETS_ACCESSED:
|
||||||
case REQ_CLIENT_ACCESSES:
|
case REQ_CLIENT_ACCESSES:
|
||||||
/* No longer supported */
|
/* No longer supported */
|
||||||
|
@ -282,15 +281,15 @@ PKL_CommandPaddingLength(CMD_Request *r)
|
||||||
case REQ_CLIENT_ACCESSES_BY_INDEX:
|
case REQ_CLIENT_ACCESSES_BY_INDEX:
|
||||||
return PADDING_LENGTH(data.client_accesses_by_index.EOR, data.client_accesses_by_index.EOR);
|
return PADDING_LENGTH(data.client_accesses_by_index.EOR, data.client_accesses_by_index.EOR);
|
||||||
case REQ_MANUAL_LIST:
|
case REQ_MANUAL_LIST:
|
||||||
return PADDING_LENGTH(data.manual_list.EOR, data.manual_list.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.manual_list.EOR);
|
||||||
case REQ_MANUAL_DELETE:
|
case REQ_MANUAL_DELETE:
|
||||||
return PADDING_LENGTH(data.manual_delete.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.manual_delete.EOR, data.null.EOR);
|
||||||
case REQ_MAKESTEP:
|
case REQ_MAKESTEP:
|
||||||
return PADDING_LENGTH(data.make_step.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.null.EOR);
|
||||||
case REQ_ACTIVITY:
|
case REQ_ACTIVITY:
|
||||||
return PADDING_LENGTH(data.activity.EOR, data.activity.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.activity.EOR);
|
||||||
case REQ_RESELECT:
|
case REQ_RESELECT:
|
||||||
return PADDING_LENGTH(data.reselect.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.null.EOR, data.null.EOR);
|
||||||
case REQ_RESELECTDISTANCE:
|
case REQ_RESELECTDISTANCE:
|
||||||
return PADDING_LENGTH(data.reselect_distance.EOR, data.null.EOR);
|
return PADDING_LENGTH(data.reselect_distance.EOR, data.null.EOR);
|
||||||
case REQ_MODIFY_MINSTRATUM:
|
case REQ_MODIFY_MINSTRATUM:
|
||||||
|
|
Loading…
Reference in a new issue