<p>I wish that changing a structure is something simple, but is not.</p>
<p>The main constraint is having the config interpreter able to deal only with integer numbers as values (static or via variables), and flags field stay behind a variable.</p>
<p>But there could be also memory alignment problems when fields size changes.</p>
<p>Another way could be adding a new field, extended flags, with a different set of functions to handle them like setflagx()/resetflagx(...)/isflagxset(...), so the current behaviour is not affected at all. At this moment, from extensibility point of view I think using an array (static size) is better than single value field. Initially it can be of uint32_t[2] to give access to 64 more flags, but in the future it can be changed if needed. The functions will take two parameters, bit index and array index.</p>
<p>Just some ideas, it can be another way, but I would prefer not to affect that much existing code...</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/kamailio/kamailio/issues/1288#issuecomment-340431612">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AF36ZVTl3feXfRNuniOQp4Y_MWPFrTPFks5sxcM4gaJpZM4QKR-M">mute the thread</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/AF36ZSaTaoA2TiLFURziT7f-m63NrFSiks5sxcM4gaJpZM4QKR-M.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/kamailio/kamailio/issues/1288#issuecomment-340431612"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"PERSON","message":"@miconda in #1288: I wish that changing a structure is something simple, but is not.\r\n\r\nThe main constraint is having the config interpreter able to deal only with integer numbers as values (static or via variables), and flags field stay behind a variable.\r\n\r\nBut there could be also memory alignment problems when fields size changes.\r\n\r\nAnother way could be adding a new field, extended flags, with a different set of functions to handle them like setflagx()/resetflagx(...)/isflagxset(...), so the current behaviour is not affected at all. At this moment, from extensibility point of view I think using an array (static size) is better than single value field. Initially it can be of uint32_t[2] to give access to 64 more flags, but in the future it can be changed if needed. The functions will take two parameters, bit index and array index.\r\n\r\nJust some ideas, it can be another way, but I would prefer not to affect that much existing code..."}],"action":{"name":"View Issue","url":"https://github.com/kamailio/kamailio/issues/1288#issuecomment-340431612"}}}</script>