diff options
Diffstat (limited to 'libarmep/service.c')
-rw-r--r-- | libarmep/service.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/libarmep/service.c b/libarmep/service.c index 77683e5..c8d0208 100644 --- a/libarmep/service.c +++ b/libarmep/service.c @@ -149,7 +149,7 @@ void probe_close(struct aep *aep) close(aep->fd); } -static void copy_public_ch_info_to_shared(struct aep_shared *aep_shared, struct aep_channel *ch) +static void copy_public_ch_info_to_shared(struct aep_shared *aep_shared, int chan, struct aep_channel *ch) { strncpy(aep_shared->channel_name[chan], ch->channel_name, sizeof(aep_shared->channel_name[0])); aep_shared->channel_name[chan][sizeof(aep_shared->channel_name[0]) - 1] = '\0'; @@ -373,7 +373,7 @@ bail: if (!ch->requested) continue; - copy_public_ch_info_to_shared(aep_context->aep_shared, ch); + copy_public_ch_info_to_shared(aep_context->aep_shared, chan, ch); chan++; aep_context->aep_shared->chans = chan; @@ -384,6 +384,11 @@ bail: aep_context->aeps[m].sec_last_traffic = tv.tv_sec; } + for (m = 0; m < aep_context->count_virtual_channels; m++) { + copy_public_ch_info_to_shared(aep_context->aep_shared, chan++, &aep_context->vch[m]); + aep_context->aep_shared->vchans++; + } + } post_start: |