TT#189201 change block/silence media flags to bool

This makes it possible to refactor and simplify the interface functions,
as pointers and offsets can't be utilised with bit fields.

Change-Id: I70f1ac0eca7d2ccf8e8d5f5794580163f3f5b7ad
pull/1546/head
Richard Fuchs 3 years ago
parent 81a80f8d23
commit c109644fea

@ -2658,12 +2658,12 @@ const char *call_block_media_ng(bencode_item_t *input, bencode_item_t *output) {
if (monologue) {
ilog(LOG_INFO, "Blocking directional media (tag '" STR_FORMAT_M "')",
STR_FMT_M(&monologue->tag));
monologue->block_media = 1;
monologue->block_media = true;
__monologue_unkernelize(monologue);
}
else {
ilog(LOG_INFO, "Blocking media (entire call)");
call->block_media = 1;
call->block_media = true;
__call_unkernelize(call);
}
@ -2683,16 +2683,16 @@ const char *call_unblock_media_ng(bencode_item_t *input, bencode_item_t *output)
if (monologue) {
ilog(LOG_INFO, "Unblocking directional media (tag '" STR_FORMAT_M "')",
STR_FMT_M(&monologue->tag));
monologue->block_media = 0;
monologue->block_media = false;
__monologue_unkernelize(monologue);
}
else {
ilog(LOG_INFO, "Unblocking media (entire call)");
call->block_media = 0;
call->block_media = false;
if (flags.all) {
for (GList *l = call->monologues.head; l; l = l->next) {
monologue = l->data;
monologue->block_media = 0;
monologue->block_media = false;
}
}
__call_unkernelize(call);
@ -2715,12 +2715,12 @@ const char *call_silence_media_ng(bencode_item_t *input, bencode_item_t *output)
if (monologue) {
ilog(LOG_INFO, "Silencing directional media (tag '" STR_FORMAT_M "')",
STR_FMT_M(&monologue->tag));
monologue->silence_media = 1;
monologue->silence_media = true;
__monologue_unkernelize(monologue);
}
else {
ilog(LOG_INFO, "Blocking media (entire call)");
call->silence_media = 1;
call->silence_media = true;
__call_unkernelize(call);
}
@ -2740,16 +2740,16 @@ const char *call_unsilence_media_ng(bencode_item_t *input, bencode_item_t *outpu
if (monologue) {
ilog(LOG_INFO, "Unsilencing directional media (tag '" STR_FORMAT_M "')",
STR_FMT_M(&monologue->tag));
monologue->silence_media = 0;
monologue->silence_media = false;
__monologue_unkernelize(monologue);
}
else {
ilog(LOG_INFO, "Unsilencing media (entire call)");
call->silence_media = 0;
call->silence_media = false;
if (flags.all) {
for (GList *l = call->monologues.head; l; l = l->next) {
monologue = l->data;
monologue->silence_media = 0;
monologue->silence_media = false;
}
}
__call_unkernelize(call);

@ -1482,7 +1482,7 @@ static int redis_tags(struct call *c, struct redis_list *tags, JsonReader *root_
if (!redis_hash_get_int(&ii, rh, "block_dtmf"))
ml->block_dtmf = ii;
if (!redis_hash_get_int(&ii, rh, "block_media"))
ml->block_media = ii ? 1 : 0;
ml->block_media = ii ? true : false;
if (redis_hash_get_str(&s, rh, "logical_intf")
|| !(ml->logical_intf = get_logical_interface(&s, NULL, 0)))
@ -2018,7 +2018,7 @@ static void json_restore_call(struct redis *r, const str *callid, bool foreign)
if (!redis_hash_get_int(&i, &call, "block_dtmf"))
c->block_dtmf = i;
if (!redis_hash_get_int(&i, &call, "block_media"))
c->block_media = i ? 1 : 0;
c->block_media = i ? true : false;
err = "missing 'redis_hosted_db' value";
if (redis_hash_get_unsigned((unsigned int *) &c->redis_hosted_db, &call, "redis_hosted_db"))
@ -2346,7 +2346,7 @@ char* redis_encode_json(struct call *c) {
JSON_SET_SIMPLE("redis_hosted_db","%u",c->redis_hosted_db);
JSON_SET_SIMPLE_STR("recording_metadata",&c->metadata);
JSON_SET_SIMPLE("block_dtmf","%i", c->block_dtmf);
JSON_SET_SIMPLE("block_media","%i",c->block_media ? 1 : 0);
JSON_SET_SIMPLE("block_media","%i",c->block_media);
if ((rec = c->recording)) {
JSON_SET_SIMPLE_CSTR("recording_meta_prefix",rec->meta_prefix);
@ -2467,7 +2467,7 @@ char* redis_encode_json(struct call *c) {
JSON_SET_SIMPLE("created","%llu",(long long unsigned) ml->created);
JSON_SET_SIMPLE("deleted","%llu",(long long unsigned) ml->deleted);
JSON_SET_SIMPLE("block_dtmf","%i", ml->block_dtmf);
JSON_SET_SIMPLE("block_media","%i",ml->block_media ? 1 : 0);
JSON_SET_SIMPLE("block_media","%i",ml->block_media);
if (ml->logical_intf)
JSON_SET_SIMPLE_STR("logical_intf", &ml->logical_intf->name);

@ -485,8 +485,9 @@ struct call_monologue {
unsigned int block_dtmf_trigger_end_ms;
unsigned int dtmf_delay;
unsigned int block_media:1;
unsigned int silence_media:1;
bool block_media;
bool silence_media;
unsigned int rec_forwarding:1;
unsigned int inject_dtmf:1;
unsigned int detect_dtmf:1;
@ -580,6 +581,9 @@ struct call {
int cpu_affinity;
enum block_dtmf_mode block_dtmf;
bool block_media;
bool silence_media;
// ipv4/ipv6 media flags
unsigned int is_ipv4_media_offer:1;
unsigned int is_ipv6_media_offer:1;
@ -587,8 +591,6 @@ struct call {
unsigned int is_ipv6_media_answer:1;
unsigned int is_call_media_counted:1;
unsigned int block_media:1;
unsigned int silence_media:1;
unsigned int recording_on:1;
unsigned int rec_forwarding:1;
unsigned int drop_traffic:1;

Loading…
Cancel
Save