1 /* 2 * libpri: An implementation of Primary Rate ISDN 3 * 4 * Copyright (C) 2009 Digium, Inc. 5 * 6 * Richard Mudgett <rmudgett@digium.com> 7 * 8 * See http://www.asterisk.org for more information about 9 * the Asterisk project. Please do not directly contact 10 * any of the maintainers of this project for assistance; 11 * the project provides a web site, mailing lists and IRC 12 * channels for your use. 13 * 14 * This program is free software, distributed under the terms of 15 * the GNU General Public License Version 2 as published by the 16 * Free Software Foundation. See the LICENSE file included with 17 * this program for more details. 18 * 19 * In addition, when this program is distributed with Asterisk in 20 * any form that would qualify as a 'combined work' or as a 21 * 'derivative work' (but not mere aggregation), you can redistribute 22 * and/or modify the combination under the terms of the license 23 * provided with that copy of Asterisk, instead of the license 24 * terms granted here. 25 */ 26 27 /*! 28 * \file 29 * \brief Internal definitions and prototypes for ROSE. 30 * 31 * \author Richard Mudgett <rmudgett@digium.com> 32 */ 33 34 #ifndef _LIBPRI_ROSE_INTERNAL_H 35 #define _LIBPRI_ROSE_INTERNAL_H 36 37 #include "rose.h" 38 39 #ifdef __cplusplus 40 extern "C" { 41 #endif 42 43 44 /* ------------------------------------------------------------------- */ 45 46 47 /* Embedded-Q931-Types */ 48 unsigned char *rose_enc_Q931ie(struct pri *ctrl, unsigned char *pos, unsigned char *end, 49 unsigned tag, const struct roseQ931ie *q931ie); 50 51 const unsigned char *rose_dec_Q931ie(struct pri *ctrl, const char *name, unsigned tag, 52 const unsigned char *pos, const unsigned char *end, struct roseQ931ie *q931ie, 53 size_t contents_size); 54 55 /* Addressing-Data-Elements */ 56 unsigned char *rose_enc_PartyNumber(struct pri *ctrl, unsigned char *pos, 57 unsigned char *end, const struct rosePartyNumber *party_number); 58 unsigned char *rose_enc_PartySubaddress(struct pri *ctrl, unsigned char *pos, 59 unsigned char *end, const struct rosePartySubaddress *party_subaddress); 60 unsigned char *rose_enc_Address(struct pri *ctrl, unsigned char *pos, unsigned char *end, 61 unsigned tag, const struct roseAddress *address); 62 unsigned char *rose_enc_PresentedNumberUnscreened(struct pri *ctrl, unsigned char *pos, 63 unsigned char *end, const struct rosePresentedNumberUnscreened *party); 64 unsigned char *rose_enc_NumberScreened(struct pri *ctrl, unsigned char *pos, 65 unsigned char *end, unsigned tag, const struct roseNumberScreened *screened); 66 unsigned char *rose_enc_PresentedNumberScreened(struct pri *ctrl, unsigned char *pos, 67 unsigned char *end, const struct rosePresentedNumberScreened *party); 68 unsigned char *rose_enc_AddressScreened(struct pri *ctrl, unsigned char *pos, 69 unsigned char *end, unsigned tag, const struct roseAddressScreened *screened); 70 unsigned char *rose_enc_PresentedAddressScreened(struct pri *ctrl, unsigned char *pos, 71 unsigned char *end, const struct rosePresentedAddressScreened *party); 72 73 const unsigned char *rose_dec_PartyNumber(struct pri *ctrl, const char *name, 74 unsigned tag, const unsigned char *pos, const unsigned char *end, 75 struct rosePartyNumber *party_number); 76 const unsigned char *rose_dec_PartySubaddress(struct pri *ctrl, const char *name, 77 unsigned tag, const unsigned char *pos, const unsigned char *end, 78 struct rosePartySubaddress *party_subaddress); 79 const unsigned char *rose_dec_Address(struct pri *ctrl, const char *name, unsigned tag, 80 const unsigned char *pos, const unsigned char *end, struct roseAddress *address); 81 const unsigned char *rose_dec_PresentedNumberUnscreened(struct pri *ctrl, 82 const char *name, unsigned tag, const unsigned char *pos, const unsigned char *end, 83 struct rosePresentedNumberUnscreened *party); 84 const unsigned char *rose_dec_NumberScreened(struct pri *ctrl, const char *name, 85 unsigned tag, const unsigned char *pos, const unsigned char *end, 86 struct roseNumberScreened *screened); 87 const unsigned char *rose_dec_PresentedNumberScreened(struct pri *ctrl, const char *name, 88 unsigned tag, const unsigned char *pos, const unsigned char *end, 89 struct rosePresentedNumberScreened *party); 90 const unsigned char *rose_dec_AddressScreened(struct pri *ctrl, const char *name, 91 unsigned tag, const unsigned char *pos, const unsigned char *end, 92 struct roseAddressScreened *screened); 93 const unsigned char *rose_dec_PresentedAddressScreened(struct pri *ctrl, 94 const char *name, unsigned tag, const unsigned char *pos, const unsigned char *end, 95 struct rosePresentedAddressScreened *party); 96 97 /* ETSI Advice-of-Charge (AOC) */ 98 unsigned char *rose_enc_etsi_ChargingRequest_ARG(struct pri *ctrl, unsigned char *pos, 99 unsigned char *end, const union rose_msg_invoke_args *args); 100 unsigned char *rose_enc_etsi_ChargingRequest_RES(struct pri *ctrl, unsigned char *pos, 101 unsigned char *end, const union rose_msg_result_args *args); 102 unsigned char *rose_enc_etsi_AOCSCurrency_ARG(struct pri *ctrl, unsigned char *pos, 103 unsigned char *end, const union rose_msg_invoke_args *args); 104 unsigned char *rose_enc_etsi_AOCSSpecialArr_ARG(struct pri *ctrl, unsigned char *pos, 105 unsigned char *end, const union rose_msg_invoke_args *args); 106 unsigned char *rose_enc_etsi_AOCDCurrency_ARG(struct pri *ctrl, unsigned char *pos, 107 unsigned char *end, const union rose_msg_invoke_args *args); 108 unsigned char *rose_enc_etsi_AOCDChargingUnit_ARG(struct pri *ctrl, unsigned char *pos, 109 unsigned char *end, const union rose_msg_invoke_args *args); 110 unsigned char *rose_enc_etsi_AOCECurrency_ARG(struct pri *ctrl, unsigned char *pos, 111 unsigned char *end, const union rose_msg_invoke_args *args); 112 unsigned char *rose_enc_etsi_AOCEChargingUnit_ARG(struct pri *ctrl, unsigned char *pos, 113 unsigned char *end, const union rose_msg_invoke_args *args); 114 115 const unsigned char *rose_dec_etsi_ChargingRequest_ARG(struct pri *ctrl, unsigned tag, 116 const unsigned char *pos, const unsigned char *end, 117 union rose_msg_invoke_args *args); 118 const unsigned char *rose_dec_etsi_ChargingRequest_RES(struct pri *ctrl, unsigned tag, 119 const unsigned char *pos, const unsigned char *end, 120 union rose_msg_result_args *args); 121 const unsigned char *rose_dec_etsi_AOCSCurrency_ARG(struct pri *ctrl, unsigned tag, 122 const unsigned char *pos, const unsigned char *end, 123 union rose_msg_invoke_args *args); 124 const unsigned char *rose_dec_etsi_AOCSSpecialArr_ARG(struct pri *ctrl, unsigned tag, 125 const unsigned char *pos, const unsigned char *end, 126 union rose_msg_invoke_args *args); 127 const unsigned char *rose_dec_etsi_AOCDCurrency_ARG(struct pri *ctrl, unsigned tag, 128 const unsigned char *pos, const unsigned char *end, 129 union rose_msg_invoke_args *args); 130 const unsigned char *rose_dec_etsi_AOCDChargingUnit_ARG(struct pri *ctrl, unsigned tag, 131 const unsigned char *pos, const unsigned char *end, 132 union rose_msg_invoke_args *args); 133 const unsigned char *rose_dec_etsi_AOCECurrency_ARG(struct pri *ctrl, unsigned tag, 134 const unsigned char *pos, const unsigned char *end, 135 union rose_msg_invoke_args *args); 136 const unsigned char *rose_dec_etsi_AOCEChargingUnit_ARG(struct pri *ctrl, unsigned tag, 137 const unsigned char *pos, const unsigned char *end, 138 union rose_msg_invoke_args *args); 139 140 /* ETSI Call Diversion */ 141 unsigned char *rose_enc_etsi_ActivationDiversion_ARG(struct pri *ctrl, 142 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 143 unsigned char *rose_enc_etsi_DeactivationDiversion_ARG(struct pri *ctrl, 144 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 145 unsigned char *rose_enc_etsi_ActivationStatusNotificationDiv_ARG(struct pri *ctrl, 146 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 147 unsigned char *rose_enc_etsi_DeactivationStatusNotificationDiv_ARG(struct pri *ctrl, 148 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 149 unsigned char *rose_enc_etsi_InterrogationDiversion_ARG(struct pri *ctrl, 150 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 151 unsigned char *rose_enc_etsi_InterrogationDiversion_RES(struct pri *ctrl, 152 unsigned char *pos, unsigned char *end, const union rose_msg_result_args *args); 153 unsigned char *rose_enc_etsi_DiversionInformation_ARG(struct pri *ctrl, 154 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 155 unsigned char *rose_enc_etsi_CallDeflection_ARG(struct pri *ctrl, unsigned char *pos, 156 unsigned char *end, const union rose_msg_invoke_args *args); 157 unsigned char *rose_enc_etsi_CallRerouting_ARG(struct pri *ctrl, unsigned char *pos, 158 unsigned char *end, const union rose_msg_invoke_args *args); 159 unsigned char *rose_enc_etsi_InterrogateServedUserNumbers_RES(struct pri *ctrl, 160 unsigned char *pos, unsigned char *end, const union rose_msg_result_args *args); 161 unsigned char *rose_enc_etsi_DivertingLegInformation1_ARG(struct pri *ctrl, 162 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 163 unsigned char *rose_enc_etsi_DivertingLegInformation2_ARG(struct pri *ctrl, 164 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 165 unsigned char *rose_enc_etsi_DivertingLegInformation3_ARG(struct pri *ctrl, 166 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 167 168 const unsigned char *rose_dec_etsi_ActivationDiversion_ARG(struct pri *ctrl, 169 unsigned tag, const unsigned char *pos, const unsigned char *end, 170 union rose_msg_invoke_args *args); 171 const unsigned char *rose_dec_etsi_DeactivationDiversion_ARG(struct pri *ctrl, 172 unsigned tag, const unsigned char *pos, const unsigned char *end, 173 union rose_msg_invoke_args *args); 174 const unsigned char *rose_dec_etsi_ActivationStatusNotificationDiv_ARG(struct pri *ctrl, 175 unsigned tag, const unsigned char *pos, const unsigned char *end, 176 union rose_msg_invoke_args *args); 177 const unsigned char *rose_dec_etsi_DeactivationStatusNotificationDiv_ARG(struct pri 178 *ctrl, unsigned tag, const unsigned char *pos, const unsigned char *end, 179 union rose_msg_invoke_args *args); 180 const unsigned char *rose_dec_etsi_InterrogationDiversion_ARG(struct pri *ctrl, 181 unsigned tag, const unsigned char *pos, const unsigned char *end, 182 union rose_msg_invoke_args *args); 183 const unsigned char *rose_dec_etsi_InterrogationDiversion_RES(struct pri *ctrl, 184 unsigned tag, const unsigned char *pos, const unsigned char *end, 185 union rose_msg_result_args *args); 186 const unsigned char *rose_dec_etsi_DiversionInformation_ARG(struct pri *ctrl, 187 unsigned tag, const unsigned char *pos, const unsigned char *end, 188 union rose_msg_invoke_args *args); 189 const unsigned char *rose_dec_etsi_CallDeflection_ARG(struct pri *ctrl, unsigned tag, 190 const unsigned char *pos, const unsigned char *end, 191 union rose_msg_invoke_args *args); 192 const unsigned char *rose_dec_etsi_CallRerouting_ARG(struct pri *ctrl, unsigned tag, 193 const unsigned char *pos, const unsigned char *end, 194 union rose_msg_invoke_args *args); 195 const unsigned char *rose_dec_etsi_InterrogateServedUserNumbers_RES(struct pri *ctrl, 196 unsigned tag, const unsigned char *pos, const unsigned char *end, 197 union rose_msg_result_args *args); 198 const unsigned char *rose_dec_etsi_DivertingLegInformation1_ARG(struct pri *ctrl, 199 unsigned tag, const unsigned char *pos, const unsigned char *end, 200 union rose_msg_invoke_args *args); 201 const unsigned char *rose_dec_etsi_DivertingLegInformation2_ARG(struct pri *ctrl, 202 unsigned tag, const unsigned char *pos, const unsigned char *end, 203 union rose_msg_invoke_args *args); 204 const unsigned char *rose_dec_etsi_DivertingLegInformation3_ARG(struct pri *ctrl, 205 unsigned tag, const unsigned char *pos, const unsigned char *end, 206 union rose_msg_invoke_args *args); 207 208 /* ETSI Explicit Call Transfer (ECT) */ 209 unsigned char *rose_enc_etsi_ExplicitEctExecute_ARG(struct pri *ctrl, unsigned char *pos, 210 unsigned char *end, const union rose_msg_invoke_args *args); 211 unsigned char *rose_enc_etsi_SubaddressTransfer_ARG(struct pri *ctrl, unsigned char *pos, 212 unsigned char *end, const union rose_msg_invoke_args *args); 213 unsigned char *rose_enc_etsi_EctLinkIdRequest_RES(struct pri *ctrl, unsigned char *pos, 214 unsigned char *end, const union rose_msg_result_args *args); 215 unsigned char *rose_enc_etsi_EctInform_ARG(struct pri *ctrl, unsigned char *pos, 216 unsigned char *end, const union rose_msg_invoke_args *args); 217 unsigned char *rose_enc_etsi_EctLoopTest_ARG(struct pri *ctrl, unsigned char *pos, 218 unsigned char *end, const union rose_msg_invoke_args *args); 219 unsigned char *rose_enc_etsi_EctLoopTest_RES(struct pri *ctrl, unsigned char *pos, 220 unsigned char *end, const union rose_msg_result_args *args); 221 222 const unsigned char *rose_dec_etsi_ExplicitEctExecute_ARG(struct pri *ctrl, unsigned tag, 223 const unsigned char *pos, const unsigned char *end, 224 union rose_msg_invoke_args *args); 225 const unsigned char *rose_dec_etsi_SubaddressTransfer_ARG(struct pri *ctrl, unsigned tag, 226 const unsigned char *pos, const unsigned char *end, 227 union rose_msg_invoke_args *args); 228 const unsigned char *rose_dec_etsi_EctLinkIdRequest_RES(struct pri *ctrl, unsigned tag, 229 const unsigned char *pos, const unsigned char *end, 230 union rose_msg_result_args *args); 231 const unsigned char *rose_dec_etsi_EctInform_ARG(struct pri *ctrl, unsigned tag, 232 const unsigned char *pos, const unsigned char *end, 233 union rose_msg_invoke_args *args); 234 const unsigned char *rose_dec_etsi_EctLoopTest_ARG(struct pri *ctrl, unsigned tag, 235 const unsigned char *pos, const unsigned char *end, 236 union rose_msg_invoke_args *args); 237 const unsigned char *rose_dec_etsi_EctLoopTest_RES(struct pri *ctrl, unsigned tag, 238 const unsigned char *pos, const unsigned char *end, 239 union rose_msg_result_args *args); 240 241 /* ETSI Status Request */ 242 unsigned char *rose_enc_etsi_StatusRequest_ARG(struct pri *ctrl, unsigned char *pos, 243 unsigned char *end, const union rose_msg_invoke_args *args); 244 unsigned char *rose_enc_etsi_StatusRequest_RES(struct pri *ctrl, unsigned char *pos, 245 unsigned char *end, const union rose_msg_result_args *args); 246 247 const unsigned char *rose_dec_etsi_StatusRequest_ARG(struct pri *ctrl, unsigned tag, 248 const unsigned char *pos, const unsigned char *end, 249 union rose_msg_invoke_args *args); 250 const unsigned char *rose_dec_etsi_StatusRequest_RES(struct pri *ctrl, unsigned tag, 251 const unsigned char *pos, const unsigned char *end, 252 union rose_msg_result_args *args); 253 254 /* ETSI Call-Completion Busy Status (CCBS) / Call-Completion No Reply (CCNR) */ 255 unsigned char *rose_enc_etsi_CallInfoRetain_ARG(struct pri *ctrl, unsigned char *pos, 256 unsigned char *end, const union rose_msg_invoke_args *args); 257 unsigned char *rose_enc_etsi_EraseCallLinkageID_ARG(struct pri *ctrl, unsigned char *pos, 258 unsigned char *end, const union rose_msg_invoke_args *args); 259 unsigned char *rose_enc_etsi_CCBSDeactivate_ARG(struct pri *ctrl, unsigned char *pos, 260 unsigned char *end, const union rose_msg_invoke_args *args); 261 unsigned char *rose_enc_etsi_CCBSErase_ARG(struct pri *ctrl, unsigned char *pos, 262 unsigned char *end, const union rose_msg_invoke_args *args); 263 unsigned char *rose_enc_etsi_CCBSRemoteUserFree_ARG(struct pri *ctrl, unsigned char *pos, 264 unsigned char *end, const union rose_msg_invoke_args *args); 265 unsigned char *rose_enc_etsi_CCBSCall_ARG(struct pri *ctrl, unsigned char *pos, 266 unsigned char *end, const union rose_msg_invoke_args *args); 267 unsigned char *rose_enc_etsi_CCBSBFree_ARG(struct pri *ctrl, unsigned char *pos, 268 unsigned char *end, const union rose_msg_invoke_args *args); 269 unsigned char *rose_enc_etsi_CCBSStopAlerting_ARG(struct pri *ctrl, unsigned char *pos, 270 unsigned char *end, const union rose_msg_invoke_args *args); 271 unsigned char *rose_enc_etsi_CCBSStatusRequest_ARG(struct pri *ctrl, unsigned char *pos, 272 unsigned char *end, const union rose_msg_invoke_args *args); 273 unsigned char *rose_enc_etsi_CCBSStatusRequest_RES(struct pri *ctrl, unsigned char *pos, 274 unsigned char *end, const union rose_msg_result_args *args); 275 unsigned char *rose_enc_etsi_CCBSRequest_ARG(struct pri *ctrl, unsigned char *pos, 276 unsigned char *end, const union rose_msg_invoke_args *args); 277 unsigned char *rose_enc_etsi_CCNRRequest_ARG(struct pri *ctrl, unsigned char *pos, 278 unsigned char *end, const union rose_msg_invoke_args *args); 279 unsigned char *rose_enc_etsi_CCBSRequest_RES(struct pri *ctrl, unsigned char *pos, 280 unsigned char *end, const union rose_msg_result_args *args); 281 unsigned char *rose_enc_etsi_CCNRRequest_RES(struct pri *ctrl, unsigned char *pos, 282 unsigned char *end, const union rose_msg_result_args *args); 283 unsigned char *rose_enc_etsi_CCBSInterrogate_ARG(struct pri *ctrl, unsigned char *pos, 284 unsigned char *end, const union rose_msg_invoke_args *args); 285 unsigned char *rose_enc_etsi_CCNRInterrogate_ARG(struct pri *ctrl, unsigned char *pos, 286 unsigned char *end, const union rose_msg_invoke_args *args); 287 unsigned char *rose_enc_etsi_CCBSInterrogate_RES(struct pri *ctrl, unsigned char *pos, 288 unsigned char *end, const union rose_msg_result_args *args); 289 unsigned char *rose_enc_etsi_CCNRInterrogate_RES(struct pri *ctrl, unsigned char *pos, 290 unsigned char *end, const union rose_msg_result_args *args); 291 292 const unsigned char *rose_dec_etsi_CallInfoRetain_ARG(struct pri *ctrl, unsigned tag, 293 const unsigned char *pos, const unsigned char *end, 294 union rose_msg_invoke_args *args); 295 const unsigned char *rose_dec_etsi_EraseCallLinkageID_ARG(struct pri *ctrl, unsigned tag, 296 const unsigned char *pos, const unsigned char *end, 297 union rose_msg_invoke_args *args); 298 const unsigned char *rose_dec_etsi_CCBSDeactivate_ARG(struct pri *ctrl, unsigned tag, 299 const unsigned char *pos, const unsigned char *end, 300 union rose_msg_invoke_args *args); 301 const unsigned char *rose_dec_etsi_CCBSErase_ARG(struct pri *ctrl, unsigned tag, 302 const unsigned char *pos, const unsigned char *end, 303 union rose_msg_invoke_args *args); 304 const unsigned char *rose_dec_etsi_CCBSRemoteUserFree_ARG(struct pri *ctrl, unsigned tag, 305 const unsigned char *pos, const unsigned char *end, 306 union rose_msg_invoke_args *args); 307 const unsigned char *rose_dec_etsi_CCBSCall_ARG(struct pri *ctrl, unsigned tag, 308 const unsigned char *pos, const unsigned char *end, 309 union rose_msg_invoke_args *args); 310 const unsigned char *rose_dec_etsi_CCBSBFree_ARG(struct pri *ctrl, unsigned tag, 311 const unsigned char *pos, const unsigned char *end, 312 union rose_msg_invoke_args *args); 313 const unsigned char *rose_dec_etsi_CCBSStopAlerting_ARG(struct pri *ctrl, unsigned tag, 314 const unsigned char *pos, const unsigned char *end, 315 union rose_msg_invoke_args *args); 316 const unsigned char *rose_dec_etsi_CCBSStatusRequest_ARG(struct pri *ctrl, unsigned tag, 317 const unsigned char *pos, const unsigned char *end, 318 union rose_msg_invoke_args *args); 319 const unsigned char *rose_dec_etsi_CCBSStatusRequest_RES(struct pri *ctrl, unsigned tag, 320 const unsigned char *pos, const unsigned char *end, 321 union rose_msg_result_args *args); 322 const unsigned char *rose_dec_etsi_CCBSRequest_ARG(struct pri *ctrl, unsigned tag, 323 const unsigned char *pos, const unsigned char *end, 324 union rose_msg_invoke_args *args); 325 const unsigned char *rose_dec_etsi_CCNRRequest_ARG(struct pri *ctrl, unsigned tag, 326 const unsigned char *pos, const unsigned char *end, 327 union rose_msg_invoke_args *args); 328 const unsigned char *rose_dec_etsi_CCBSRequest_RES(struct pri *ctrl, unsigned tag, 329 const unsigned char *pos, const unsigned char *end, 330 union rose_msg_result_args *args); 331 const unsigned char *rose_dec_etsi_CCNRRequest_RES(struct pri *ctrl, unsigned tag, 332 const unsigned char *pos, const unsigned char *end, 333 union rose_msg_result_args *args); 334 const unsigned char *rose_dec_etsi_CCBSInterrogate_ARG(struct pri *ctrl, unsigned tag, 335 const unsigned char *pos, const unsigned char *end, 336 union rose_msg_invoke_args *args); 337 const unsigned char *rose_dec_etsi_CCNRInterrogate_ARG(struct pri *ctrl, unsigned tag, 338 const unsigned char *pos, const unsigned char *end, 339 union rose_msg_invoke_args *args); 340 const unsigned char *rose_dec_etsi_CCBSInterrogate_RES(struct pri *ctrl, unsigned tag, 341 const unsigned char *pos, const unsigned char *end, 342 union rose_msg_result_args *args); 343 const unsigned char *rose_dec_etsi_CCNRInterrogate_RES(struct pri *ctrl, unsigned tag, 344 const unsigned char *pos, const unsigned char *end, 345 union rose_msg_result_args *args); 346 347 /* ETSI CCBS-T/CCNR-T */ 348 unsigned char *rose_enc_etsi_CCBS_T_Request_ARG(struct pri *ctrl, unsigned char *pos, 349 unsigned char *end, const union rose_msg_invoke_args *args); 350 unsigned char *rose_enc_etsi_CCNR_T_Request_ARG(struct pri *ctrl, unsigned char *pos, 351 unsigned char *end, const union rose_msg_invoke_args *args); 352 unsigned char *rose_enc_etsi_CCBS_T_Request_RES(struct pri *ctrl, unsigned char *pos, 353 unsigned char *end, const union rose_msg_result_args *args); 354 unsigned char *rose_enc_etsi_CCNR_T_Request_RES(struct pri *ctrl, unsigned char *pos, 355 unsigned char *end, const union rose_msg_result_args *args); 356 357 const unsigned char *rose_dec_etsi_CCBS_T_Request_ARG(struct pri *ctrl, unsigned tag, 358 const unsigned char *pos, const unsigned char *end, 359 union rose_msg_invoke_args *args); 360 const unsigned char *rose_dec_etsi_CCNR_T_Request_ARG(struct pri *ctrl, unsigned tag, 361 const unsigned char *pos, const unsigned char *end, 362 union rose_msg_invoke_args *args); 363 const unsigned char *rose_dec_etsi_CCBS_T_Request_RES(struct pri *ctrl, unsigned tag, 364 const unsigned char *pos, const unsigned char *end, 365 union rose_msg_result_args *args); 366 const unsigned char *rose_dec_etsi_CCNR_T_Request_RES(struct pri *ctrl, unsigned tag, 367 const unsigned char *pos, const unsigned char *end, 368 union rose_msg_result_args *args); 369 370 /* ETSI Message Waiting Indication (MWI) */ 371 unsigned char *rose_enc_etsi_MWIActivate_ARG(struct pri *ctrl, unsigned char *pos, 372 unsigned char *end, const union rose_msg_invoke_args *args); 373 unsigned char *rose_enc_etsi_MWIDeactivate_ARG(struct pri *ctrl, unsigned char *pos, 374 unsigned char *end, const union rose_msg_invoke_args *args); 375 unsigned char *rose_enc_etsi_MWIIndicate_ARG(struct pri *ctrl, unsigned char *pos, 376 unsigned char *end, const union rose_msg_invoke_args *args); 377 378 const unsigned char *rose_dec_etsi_MWIActivate_ARG(struct pri *ctrl, unsigned tag, 379 const unsigned char *pos, const unsigned char *end, 380 union rose_msg_invoke_args *args); 381 const unsigned char *rose_dec_etsi_MWIDeactivate_ARG(struct pri *ctrl, unsigned tag, 382 const unsigned char *pos, const unsigned char *end, 383 union rose_msg_invoke_args *args); 384 const unsigned char *rose_dec_etsi_MWIIndicate_ARG(struct pri *ctrl, unsigned tag, 385 const unsigned char *pos, const unsigned char *end, 386 union rose_msg_invoke_args *args); 387 388 /* Q.SIG Name-Operations */ 389 unsigned char *rose_enc_qsig_Name(struct pri *ctrl, unsigned char *pos, 390 unsigned char *end, const struct roseQsigName *name); 391 392 const unsigned char *rose_dec_qsig_Name(struct pri *ctrl, const char *fname, 393 unsigned tag, const unsigned char *pos, const unsigned char *end, 394 struct roseQsigName *name); 395 396 unsigned char *rose_enc_qsig_CallingName_ARG(struct pri *ctrl, unsigned char *pos, 397 unsigned char *end, const union rose_msg_invoke_args *args); 398 unsigned char *rose_enc_qsig_CalledName_ARG(struct pri *ctrl, unsigned char *pos, 399 unsigned char *end, const union rose_msg_invoke_args *args); 400 unsigned char *rose_enc_qsig_ConnectedName_ARG(struct pri *ctrl, unsigned char *pos, 401 unsigned char *end, const union rose_msg_invoke_args *args); 402 unsigned char *rose_enc_qsig_BusyName_ARG(struct pri *ctrl, unsigned char *pos, 403 unsigned char *end, const union rose_msg_invoke_args *args); 404 405 const unsigned char *rose_dec_qsig_CallingName_ARG(struct pri *ctrl, unsigned tag, 406 const unsigned char *pos, const unsigned char *end, 407 union rose_msg_invoke_args *args); 408 const unsigned char *rose_dec_qsig_CalledName_ARG(struct pri *ctrl, unsigned tag, 409 const unsigned char *pos, const unsigned char *end, 410 union rose_msg_invoke_args *args); 411 const unsigned char *rose_dec_qsig_ConnectedName_ARG(struct pri *ctrl, unsigned tag, 412 const unsigned char *pos, const unsigned char *end, 413 union rose_msg_invoke_args *args); 414 const unsigned char *rose_dec_qsig_BusyName_ARG(struct pri *ctrl, unsigned tag, 415 const unsigned char *pos, const unsigned char *end, 416 union rose_msg_invoke_args *args); 417 418 /* 419 * Q.SIG Dummy invoke/result argument used by: 420 * SS-AOC-Operations, 421 * Call-Transfer-Operations, 422 * Call-Diversion-Operations, 423 * and SS-MWI-Operations. 424 */ 425 unsigned char *rose_enc_qsig_DummyArg_ARG(struct pri *ctrl, unsigned char *pos, 426 unsigned char *end, const union rose_msg_invoke_args *args); 427 unsigned char *rose_enc_qsig_DummyRes_RES(struct pri *ctrl, unsigned char *pos, 428 unsigned char *end, const union rose_msg_result_args *args); 429 430 const unsigned char *rose_dec_qsig_DummyArg_ARG(struct pri *ctrl, unsigned tag, 431 const unsigned char *pos, const unsigned char *end, 432 union rose_msg_invoke_args *args); 433 const unsigned char *rose_dec_qsig_DummyRes_RES(struct pri *ctrl, unsigned tag, 434 const unsigned char *pos, const unsigned char *end, 435 union rose_msg_result_args *args); 436 437 /* Q.SIG SS-AOC-Operations */ 438 unsigned char *rose_enc_qsig_ChargeRequest_ARG(struct pri *ctrl, unsigned char *pos, 439 unsigned char *end, const union rose_msg_invoke_args *args); 440 unsigned char *rose_enc_qsig_ChargeRequest_RES(struct pri *ctrl, unsigned char *pos, 441 unsigned char *end, const union rose_msg_result_args *args); 442 unsigned char *rose_enc_qsig_AocFinal_ARG(struct pri *ctrl, unsigned char *pos, 443 unsigned char *end, const union rose_msg_invoke_args *args); 444 unsigned char *rose_enc_qsig_AocInterim_ARG(struct pri *ctrl, unsigned char *pos, 445 unsigned char *end, const union rose_msg_invoke_args *args); 446 unsigned char *rose_enc_qsig_AocRate_ARG(struct pri *ctrl, unsigned char *pos, 447 unsigned char *end, const union rose_msg_invoke_args *args); 448 unsigned char *rose_enc_qsig_AocComplete_ARG(struct pri *ctrl, unsigned char *pos, 449 unsigned char *end, const union rose_msg_invoke_args *args); 450 unsigned char *rose_enc_qsig_AocComplete_RES(struct pri *ctrl, unsigned char *pos, 451 unsigned char *end, const union rose_msg_result_args *args); 452 unsigned char *rose_enc_qsig_AocDivChargeReq_ARG(struct pri *ctrl, unsigned char *pos, 453 unsigned char *end, const union rose_msg_invoke_args *args); 454 455 const unsigned char *rose_dec_qsig_ChargeRequest_ARG(struct pri *ctrl, unsigned tag, 456 const unsigned char *pos, const unsigned char *end, 457 union rose_msg_invoke_args *args); 458 const unsigned char *rose_dec_qsig_ChargeRequest_RES(struct pri *ctrl, unsigned tag, 459 const unsigned char *pos, const unsigned char *end, 460 union rose_msg_result_args *args); 461 const unsigned char *rose_dec_qsig_AocFinal_ARG(struct pri *ctrl, unsigned tag, 462 const unsigned char *pos, const unsigned char *end, 463 union rose_msg_invoke_args *args); 464 const unsigned char *rose_dec_qsig_AocInterim_ARG(struct pri *ctrl, unsigned tag, 465 const unsigned char *pos, const unsigned char *end, 466 union rose_msg_invoke_args *args); 467 const unsigned char *rose_dec_qsig_AocRate_ARG(struct pri *ctrl, unsigned tag, 468 const unsigned char *pos, const unsigned char *end, 469 union rose_msg_invoke_args *args); 470 const unsigned char *rose_dec_qsig_AocComplete_ARG(struct pri *ctrl, unsigned tag, 471 const unsigned char *pos, const unsigned char *end, 472 union rose_msg_invoke_args *args); 473 const unsigned char *rose_dec_qsig_AocComplete_RES(struct pri *ctrl, unsigned tag, 474 const unsigned char *pos, const unsigned char *end, 475 union rose_msg_result_args *args); 476 const unsigned char *rose_dec_qsig_AocDivChargeReq_ARG(struct pri *ctrl, unsigned tag, 477 const unsigned char *pos, const unsigned char *end, 478 union rose_msg_invoke_args *args); 479 480 /* Q.SIG Call-Diversion-Operations */ 481 unsigned char *rose_enc_qsig_ActivateDiversionQ_ARG(struct pri *ctrl, unsigned char *pos, 482 unsigned char *end, const union rose_msg_invoke_args *args); 483 unsigned char *rose_enc_qsig_DeactivateDiversionQ_ARG(struct pri *ctrl, 484 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 485 unsigned char *rose_enc_qsig_InterrogateDiversionQ_ARG(struct pri *ctrl, 486 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 487 unsigned char *rose_enc_qsig_InterrogateDiversionQ_RES(struct pri *ctrl, 488 unsigned char *pos, unsigned char *end, const union rose_msg_result_args *args); 489 unsigned char *rose_enc_qsig_CheckRestriction_ARG(struct pri *ctrl, unsigned char *pos, 490 unsigned char *end, const union rose_msg_invoke_args *args); 491 unsigned char *rose_enc_qsig_CallRerouting_ARG(struct pri *ctrl, unsigned char *pos, 492 unsigned char *end, const union rose_msg_invoke_args *args); 493 unsigned char *rose_enc_qsig_DivertingLegInformation1_ARG(struct pri *ctrl, 494 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 495 unsigned char *rose_enc_qsig_DivertingLegInformation2_ARG(struct pri *ctrl, 496 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 497 unsigned char *rose_enc_qsig_DivertingLegInformation3_ARG(struct pri *ctrl, 498 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 499 500 const unsigned char *rose_dec_qsig_ActivateDiversionQ_ARG(struct pri *ctrl, unsigned tag, 501 const unsigned char *pos, const unsigned char *end, 502 union rose_msg_invoke_args *args); 503 const unsigned char *rose_dec_qsig_DeactivateDiversionQ_ARG(struct pri *ctrl, 504 unsigned tag, const unsigned char *pos, const unsigned char *end, 505 union rose_msg_invoke_args *args); 506 const unsigned char *rose_dec_qsig_InterrogateDiversionQ_ARG(struct pri *ctrl, 507 unsigned tag, const unsigned char *pos, const unsigned char *end, 508 union rose_msg_invoke_args *args); 509 const unsigned char *rose_dec_qsig_InterrogateDiversionQ_RES(struct pri *ctrl, 510 unsigned tag, const unsigned char *pos, const unsigned char *end, 511 union rose_msg_result_args *args); 512 const unsigned char *rose_dec_qsig_CheckRestriction_ARG(struct pri *ctrl, unsigned tag, 513 const unsigned char *pos, const unsigned char *end, 514 union rose_msg_invoke_args *args); 515 const unsigned char *rose_dec_qsig_CallRerouting_ARG(struct pri *ctrl, unsigned tag, 516 const unsigned char *pos, const unsigned char *end, 517 union rose_msg_invoke_args *args); 518 const unsigned char *rose_dec_qsig_DivertingLegInformation1_ARG(struct pri *ctrl, 519 unsigned tag, const unsigned char *pos, const unsigned char *end, 520 union rose_msg_invoke_args *args); 521 const unsigned char *rose_dec_qsig_DivertingLegInformation2_ARG(struct pri *ctrl, 522 unsigned tag, const unsigned char *pos, const unsigned char *end, 523 union rose_msg_invoke_args *args); 524 const unsigned char *rose_dec_qsig_DivertingLegInformation3_ARG(struct pri *ctrl, 525 unsigned tag, const unsigned char *pos, const unsigned char *end, 526 union rose_msg_invoke_args *args); 527 528 /* Q.SIG Call-Transfer-Operations (CT) */ 529 unsigned char *rose_enc_qsig_CallTransferIdentify_RES(struct pri *ctrl, 530 unsigned char *pos, unsigned char *end, const union rose_msg_result_args *args); 531 unsigned char *rose_enc_qsig_CallTransferInitiate_ARG(struct pri *ctrl, 532 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 533 unsigned char *rose_enc_qsig_CallTransferSetup_ARG(struct pri *ctrl, unsigned char *pos, 534 unsigned char *end, const union rose_msg_invoke_args *args); 535 unsigned char *rose_enc_qsig_CallTransferActive_ARG(struct pri *ctrl, unsigned char *pos, 536 unsigned char *end, const union rose_msg_invoke_args *args); 537 unsigned char *rose_enc_qsig_CallTransferComplete_ARG(struct pri *ctrl, 538 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 539 unsigned char *rose_enc_qsig_CallTransferUpdate_ARG(struct pri *ctrl, unsigned char *pos, 540 unsigned char *end, const union rose_msg_invoke_args *args); 541 unsigned char *rose_enc_qsig_SubaddressTransfer_ARG(struct pri *ctrl, unsigned char *pos, 542 unsigned char *end, const union rose_msg_invoke_args *args); 543 544 const unsigned char *rose_dec_qsig_CallTransferIdentify_RES(struct pri *ctrl, 545 unsigned tag, const unsigned char *pos, const unsigned char *end, 546 union rose_msg_result_args *args); 547 const unsigned char *rose_dec_qsig_CallTransferInitiate_ARG(struct pri *ctrl, 548 unsigned tag, const unsigned char *pos, const unsigned char *end, 549 union rose_msg_invoke_args *args); 550 const unsigned char *rose_dec_qsig_CallTransferSetup_ARG(struct pri *ctrl, unsigned tag, 551 const unsigned char *pos, const unsigned char *end, 552 union rose_msg_invoke_args *args); 553 const unsigned char *rose_dec_qsig_CallTransferActive_ARG(struct pri *ctrl, unsigned tag, 554 const unsigned char *pos, const unsigned char *end, 555 union rose_msg_invoke_args *args); 556 const unsigned char *rose_dec_qsig_CallTransferComplete_ARG(struct pri *ctrl, 557 unsigned tag, const unsigned char *pos, const unsigned char *end, 558 union rose_msg_invoke_args *args); 559 const unsigned char *rose_dec_qsig_CallTransferUpdate_ARG(struct pri *ctrl, unsigned tag, 560 const unsigned char *pos, const unsigned char *end, 561 union rose_msg_invoke_args *args); 562 const unsigned char *rose_dec_qsig_SubaddressTransfer_ARG(struct pri *ctrl, unsigned tag, 563 const unsigned char *pos, const unsigned char *end, 564 union rose_msg_invoke_args *args); 565 566 /* Q.SIG SS-CC-Operations */ 567 unsigned char *rose_enc_qsig_CcbsRequest_ARG(struct pri *ctrl, unsigned char *pos, 568 unsigned char *end, const union rose_msg_invoke_args *args); 569 unsigned char *rose_enc_qsig_CcnrRequest_ARG(struct pri *ctrl, unsigned char *pos, 570 unsigned char *end, const union rose_msg_invoke_args *args); 571 unsigned char *rose_enc_qsig_CcbsRequest_RES(struct pri *ctrl, unsigned char *pos, 572 unsigned char *end, const union rose_msg_result_args *args); 573 unsigned char *rose_enc_qsig_CcnrRequest_RES(struct pri *ctrl, unsigned char *pos, 574 unsigned char *end, const union rose_msg_result_args *args); 575 unsigned char *rose_enq_qsig_CcCancel_ARG(struct pri *ctrl, unsigned char *pos, 576 unsigned char *end, const union rose_msg_invoke_args *args); 577 unsigned char *rose_enq_qsig_CcExecPossible_ARG(struct pri *ctrl, unsigned char *pos, 578 unsigned char *end, const union rose_msg_invoke_args *args); 579 unsigned char *rose_enc_qsig_CcPathReserve_ARG(struct pri *ctrl, unsigned char *pos, 580 unsigned char *end, const union rose_msg_invoke_args *args); 581 unsigned char *rose_enc_qsig_CcPathReserve_RES(struct pri *ctrl, unsigned char *pos, 582 unsigned char *end, const union rose_msg_result_args *args); 583 unsigned char *rose_enc_qsig_CcRingout_ARG(struct pri *ctrl, unsigned char *pos, 584 unsigned char *end, const union rose_msg_invoke_args *args); 585 unsigned char *rose_enc_qsig_CcSuspend_ARG(struct pri *ctrl, unsigned char *pos, 586 unsigned char *end, const union rose_msg_invoke_args *args); 587 unsigned char *rose_enc_qsig_CcResume_ARG(struct pri *ctrl, unsigned char *pos, 588 unsigned char *end, const union rose_msg_invoke_args *args); 589 590 const unsigned char *rose_dec_qsig_CcbsRequest_ARG(struct pri *ctrl, unsigned tag, 591 const unsigned char *pos, const unsigned char *end, 592 union rose_msg_invoke_args *args); 593 const unsigned char *rose_dec_qsig_CcnrRequest_ARG(struct pri *ctrl, unsigned tag, 594 const unsigned char *pos, const unsigned char *end, 595 union rose_msg_invoke_args *args); 596 const unsigned char *rose_dec_qsig_CcbsRequest_RES(struct pri *ctrl, unsigned tag, 597 const unsigned char *pos, const unsigned char *end, 598 union rose_msg_result_args *args); 599 const unsigned char *rose_dec_qsig_CcnrRequest_RES(struct pri *ctrl, unsigned tag, 600 const unsigned char *pos, const unsigned char *end, 601 union rose_msg_result_args *args); 602 const unsigned char *rose_dec_qsig_CcCancel_ARG(struct pri *ctrl, unsigned tag, 603 const unsigned char *pos, const unsigned char *end, 604 union rose_msg_invoke_args *args); 605 const unsigned char *rose_dec_qsig_CcExecPossible_ARG(struct pri *ctrl, unsigned tag, 606 const unsigned char *pos, const unsigned char *end, 607 union rose_msg_invoke_args *args); 608 const unsigned char *rose_dec_qsig_CcPathReserve_ARG(struct pri *ctrl, unsigned tag, 609 const unsigned char *pos, const unsigned char *end, 610 union rose_msg_invoke_args *args); 611 const unsigned char *rose_dec_qsig_CcPathReserve_RES(struct pri *ctrl, unsigned tag, 612 const unsigned char *pos, const unsigned char *end, 613 union rose_msg_result_args *args); 614 const unsigned char *rose_dec_qsig_CcRingout_ARG(struct pri *ctrl, unsigned tag, 615 const unsigned char *pos, const unsigned char *end, 616 union rose_msg_invoke_args *args); 617 const unsigned char *rose_dec_qsig_CcSuspend_ARG(struct pri *ctrl, unsigned tag, 618 const unsigned char *pos, const unsigned char *end, 619 union rose_msg_invoke_args *args); 620 const unsigned char *rose_dec_qsig_CcResume_ARG(struct pri *ctrl, unsigned tag, 621 const unsigned char *pos, const unsigned char *end, 622 union rose_msg_invoke_args *args); 623 624 /* Q.SIG SS-MWI-Operations */ 625 unsigned char *rose_enc_qsig_MWIActivate_ARG(struct pri *ctrl, unsigned char *pos, 626 unsigned char *end, const union rose_msg_invoke_args *args); 627 unsigned char *rose_enc_qsig_MWIDeactivate_ARG(struct pri *ctrl, unsigned char *pos, 628 unsigned char *end, const union rose_msg_invoke_args *args); 629 unsigned char *rose_enc_qsig_MWIInterrogate_ARG(struct pri *ctrl, unsigned char *pos, 630 unsigned char *end, const union rose_msg_invoke_args *args); 631 unsigned char *rose_enc_qsig_MWIInterrogate_RES(struct pri *ctrl, unsigned char *pos, 632 unsigned char *end, const union rose_msg_result_args *args); 633 634 const unsigned char *rose_dec_qsig_MWIActivate_ARG(struct pri *ctrl, unsigned tag, 635 const unsigned char *pos, const unsigned char *end, 636 union rose_msg_invoke_args *args); 637 const unsigned char *rose_dec_qsig_MWIDeactivate_ARG(struct pri *ctrl, unsigned tag, 638 const unsigned char *pos, const unsigned char *end, 639 union rose_msg_invoke_args *args); 640 const unsigned char *rose_dec_qsig_MWIInterrogate_ARG(struct pri *ctrl, unsigned tag, 641 const unsigned char *pos, const unsigned char *end, 642 union rose_msg_invoke_args *args); 643 const unsigned char *rose_dec_qsig_MWIInterrogate_RES(struct pri *ctrl, unsigned tag, 644 const unsigned char *pos, const unsigned char *end, 645 union rose_msg_result_args *args); 646 647 /* Northern Telecom DMS-100 operations */ 648 unsigned char *rose_enc_dms100_RLT_OperationInd_RES(struct pri *ctrl, unsigned char *pos, 649 unsigned char *end, const union rose_msg_result_args *args); 650 unsigned char *rose_enc_dms100_RLT_ThirdParty_ARG(struct pri *ctrl, unsigned char *pos, 651 unsigned char *end, const union rose_msg_invoke_args *args); 652 653 const unsigned char *rose_dec_dms100_RLT_OperationInd_RES(struct pri *ctrl, unsigned tag, 654 const unsigned char *pos, const unsigned char *end, 655 union rose_msg_result_args *args); 656 const unsigned char *rose_dec_dms100_RLT_ThirdParty_ARG(struct pri *ctrl, unsigned tag, 657 const unsigned char *pos, const unsigned char *end, 658 union rose_msg_invoke_args *args); 659 660 /* National ISDN 2 (NI2) operations */ 661 unsigned char *rose_enc_ni2_InformationFollowing_ARG(struct pri *ctrl, 662 unsigned char *pos, unsigned char *end, const union rose_msg_invoke_args *args); 663 unsigned char *rose_enc_ni2_InitiateTransfer_ARG(struct pri *ctrl, unsigned char *pos, 664 unsigned char *end, const union rose_msg_invoke_args *args); 665 666 const unsigned char *rose_dec_ni2_InformationFollowing_ARG(struct pri *ctrl, 667 unsigned tag, const unsigned char *pos, const unsigned char *end, 668 union rose_msg_invoke_args *args); 669 const unsigned char *rose_dec_ni2_InitiateTransfer_ARG(struct pri *ctrl, unsigned tag, 670 const unsigned char *pos, const unsigned char *end, 671 union rose_msg_invoke_args *args); 672 673 674 /* ------------------------------------------------------------------- */ 675 676 #ifdef __cplusplus 677 } 678 #endif 679 680 #endif /* _LIBPRI_ROSE_INTERNAL_H */ 681 /* ------------------------------------------------------------------- */ 682 /* end rose_internal.h */ 683