Lines Matching refs:par
359 lws_ss_deserialize_parse(struct lws_ss_serialization_parser *par,
376 switch (par->ps) {
378 par->type = *cp++;
379 par->ps++;
383 par->rem = (uint16_t)((*cp++) << 8);
384 par->ps++;
388 par->rem = (uint16_t)(par->rem | *cp++);
389 switch (par->type) {
399 par->ps = RPAR_FLAG_B3;
405 par->ps = RPAR_TYPE;
416 par->ps = RPAR_TYPE;
445 if (par->rem < 1 + 4 + 1)
447 par->ps = RPAR_INIT_PROVERS;
453 if (par->rem < 3)
455 par->ctr = 0;
456 par->ps = RPAR_METADATA_NAMELEN;
460 par->ps = RPAR_TXCR0;
461 par->ctr = 0;
467 if (par->rem != 4)
469 par->ps = RPAR_TIMEOUT0;
470 par->ctr = 0;
476 if (par->rem != 4)
478 par->ps = RPAR_PAYLEN0;
479 par->ctr = 0;
491 par->rideshare[0] = '\0';
492 par->ps = RPAR_FLAG_B3;
501 if (par->rem < 1)
504 par->ps = RPAR_RESULT_CREATION;
514 if (par->rem < 5 || par->rem > 8)
517 par->ps = RPAR_STATEINDEX;
518 par->ctr = 0;
524 if (par->rem < 3)
526 par->ctr = 0;
527 par->ps = RPAR_METADATA_NAMELEN;
531 par->ctr = 0;
532 par->ps = RPAR_RX_TXCR_UPDATE;
536 par->ctr = 0;
537 if (!par->rem)
539 par->ps = RPAR_PERF;
544 par->type);
553 par->flags <<= 8;
554 par->flags |= *cp++;
555 par->ps++;
556 if (!par->rem--)
564 par->usd_phandling <<= 8;
565 par->usd_phandling |= *cp++;
566 par->ps++;
567 if (!par->rem--)
579 par->ust_pwait <<= 8;
580 par->ust_pwait |= *cp++;
581 par->ps++;
582 par->frag1 = 1;
583 if (!par->rem--)
586 if (par->ps == RPAR_RIDESHARE_LEN &&
587 !(par->flags & LWSSS_FLAG_RIDESHARE))
588 par->ps = RPAR_PAYLOAD;
590 if (par->rem)
595 if (!(par->flags & LWSSS_FLAG_RIDESHARE))
605 par->slen = *cp++;
606 par->ctr = 0;
607 par->ps++;
608 if (par->rem-- < par->slen)
614 if (n > par->rem)
615 n = par->rem;
643 par->rem = (uint16_t)(par->rem - (uint16_t)(unsigned int)n);
646 if (!par->rem)
647 par->ps = RPAR_TYPE;
651 par->rideshare[par->ctr++] = (char)*cp++;
652 if (!par->rem--)
654 if (par->ctr != par->slen)
656 par->ps = RPAR_PAYLOAD;
657 if (par->rem)
665 if (n > par->rem)
666 n = par->rem;
690 flags = par->flags & LWSSS_FLAG_RELATED_START;
691 if (par->frag1)
696 flags |= par->flags &
699 if (par->rem == n)
705 flags |= par->flags & (LWSSS_FLAG_EOM |
708 par->frag1 = 0;
733 lws_ser_wu32be(&p[7], par->usd_phandling);
735 lws_ser_wu32be(&p[11], (uint32_t)(us - (lws_usec_t)par->ust_pwait));
758 h = lws_container_of(par, lws_sspc_handle_t,
794 par->usd_phandling;
796 us - par->ust_pwait;
805 par->rem = (uint16_t)(par->rem - (uint16_t)(unsigned int)n);
813 if (!par->rem)
814 par->ps = RPAR_TYPE;
818 if (!--par->rem && par->ctr != 3)
821 par->temp32 = (par->temp32 << 8) | *cp++;
822 if (++par->ctr < 4)
827 * par->temp32 more bytes tx credit to write to it
830 h = lws_container_of(par, lws_sspc_handle_t, parser);
831 h->txc.tx_cr += par->temp32;
832 lwsl_info("%s: RX_PEER_TXCR: %d\n", __func__, par->temp32);
834 par->ctr = 0;
835 par->ps = RPAR_TYPE;
840 par->protocol_version = *cp++;
849 if (par->protocol_version != 1) {
852 __func__, par->protocol_version);
857 if (!--par->rem)
859 par->ctr = 0;
860 par->ps = RPAR_INIT_PID;
865 if (!--par->rem)
868 par->temp32 = (par->temp32 << 8) | *cp++;
869 if (++par->ctr < 4)
872 par->client_pid = (uint32_t)par->temp32;
873 par->ctr = 0;
874 par->ps = RPAR_INITTXC0;
878 if (!--par->rem)
881 par->temp32 = (par->temp32 << 8) | *cp++;
882 if (++par->ctr < 4)
885 par->txcr_out = par->temp32;
886 par->ctr = 0;
887 par->ps = RPAR_STREAMTYPE;
897 par->temp32 = (par->temp32 << 8) | *cp++;
898 if (++par->ctr < 4) {
899 if (!--par->rem)
904 if (--par->rem)
919 par->temp32);
921 __func__, par->temp32,
935 h = lws_container_of(par, lws_sspc_handle_t,
937 h->txc.tx_cr += par->temp32;
939 __func__, par->temp32);
942 par->ps = RPAR_TYPE;
947 par->temp32 = (par->temp32 << 8) | *cp++;
948 if (++par->ctr < 4) {
949 if (!--par->rem)
954 if (--par->rem)
965 if ((unsigned int)par->temp32 == 0xffffffff) {
972 if (!par->temp32)
973 par->temp32 = (int)
978 __func__, par->temp32);
982 par->temp32);
986 par->ps = RPAR_TYPE;
994 par->temp32 = (par->temp32 << 8) | *cp++;
995 if (++par->ctr < 4) {
996 if (!--par->rem)
1001 if (--par->rem)
1005 par->temp32);
1007 par->ps = RPAR_TYPE;
1011 (unsigned long)par->temp32);
1019 if (!--par->rem)
1021 par->slen = *cp++;
1022 if (par->slen >= sizeof(par->metadata_name) - 1)
1024 par->ctr = 0;
1025 par->ps++;
1030 if (!--par->rem)
1032 par->metadata_name[par->ctr++] = (char)*cp++;
1033 if (par->ctr != par->slen)
1035 par->metadata_name[par->ctr] = '\0';
1036 par->ps = RPAR_METADATA_VALUE;
1057 par->metadata_name)) {
1072 par->rem + 1, "rxmeta");
1084 lws_strncpy(md->name, par->metadata_name,
1086 md->len = par->rem;
1087 par->rxmetaval = (uint8_t *)&md[1];
1094 par->rxmetaval[md->len] = '\0';
1097 par->ctr = 0;
1117 par->metadata_name);
1120 __func__, par->metadata_name);
1125 par->ssmd = lws_ss_get_handle_metadata(
1127 par->metadata_name);
1129 if (par->ssmd) {
1131 if (par->ssmd->value_on_lws_heap)
1132 lws_free_set_NULL(par->ssmd->value__may_own_heap);
1133 par->ssmd->value_on_lws_heap = 0;
1137 par->ssmd->value__may_own_heap = NULL;
1139 par->ssmd->value__may_own_heap =
1140 lws_malloc((unsigned int)par->rem + 1, "metadata");
1142 if (!par->ssmd->value__may_own_heap) {
1146 par->ssmd->length = par->rem;
1147 ((uint8_t *)par->ssmd->value__may_own_heap)[par->rem] = '\0';
1149 par->ssmd->value_on_lws_heap = 1;
1151 par->ctr = 0;
1158 *par->rxmetaval++ = *cp++;
1161 if (!par->ssmd) {
1166 if (--par->rem)
1169 par->ps = RPAR_TYPE;
1173 ((uint8_t *)(par->ssmd->value__may_own_heap))[par->ctr++] = *cp++;
1176 if (--par->rem)
1181 h = lws_container_of(par, lws_sspc_handle_t, parser);
1183 par->metadata_name);
1187 par->ssmd->name,
1188 (int)par->ssmd->length);
1190 par->ssmd->value__may_own_heap,
1191 par->ssmd->length);
1193 par->ps = RPAR_TYPE;
1202 if (par->ctr == sizeof(par->streamtype) - 1)
1219 par->streamtype[par->ctr++] = (char)*cp++;
1220 if (--par->rem)
1223 par->ps = RPAR_TYPE;
1224 par->streamtype[par->ctr] = '\0';
1226 __func__, par->streamtype,
1227 par->protocol_version, par->txcr_out);
1229 ssi->streamtype = par->streamtype;
1230 if (par->txcr_out) // !!!
1231 ssi->manual_initial_tx_credit = par->txcr_out;
1240 ssi->sss_protocol_version = par->protocol_version;
1241 ssi->client_pid = par->client_pid;
1251 par->streamtype);
1256 __func__, par->streamtype);
1271 __func__, par->txcr_out);
1273 (*pss)->info.manual_initial_tx_credit = par->txcr_out;
1289 if (--par->rem < 4)
1292 par->ps = RPAR_RESULT_CREATION_DSH;
1293 par->ctr = 0;
1298 par->temp32 = (par->temp32 << 8) | (*cp++);
1299 if (!par->rem--)
1301 if (++par->ctr < 4)
1305 * Client (par->temp32 == dsh alloc)
1308 h = lws_container_of(par, lws_sspc_handle_t, parser);
1368 h->dsh = lws_dsh_create(NULL, (size_t)(par->temp32 ?
1369 par->temp32 : 32768), 1);
1375 par->rsl_pos = 0;
1376 par->rsl_idx = 0;
1383 par->ps = RPAR_TYPE;
1385 if (par->rem) {
1386 par->ps = RPAR_RESULT_CREATION_RIDESHARE;
1387 if (par->rem >= sizeof(h->rideshare_list))
1393 h = lws_container_of(par, lws_sspc_handle_t, parser);
1396 h->rideshare_list[par->rsl_pos++] = '\0';
1397 if (par->rsl_idx == LWS_ARRAY_SIZE(h->rideshare_ofs))
1399 h->rideshare_ofs[++par->rsl_idx] = par->rsl_pos;
1401 h->rideshare_list[par->rsl_pos++] = (char)*cp++;
1402 if (!--par->rem)
1403 par->ps = RPAR_TYPE;
1407 par->ctr = (par->ctr << 8) | (*cp++);
1408 if (--par->rem == 4)
1409 par->ps = RPAR_ORD3;
1413 par->flags = (uint32_t)((*cp++) << 24);
1414 par->ps++;
1418 par->flags |= (uint32_t)((*cp++) << 16);
1419 par->ps++;
1423 par->flags |= (uint32_t)((*cp++) << 8);
1424 par->ps++;
1428 par->flags |= (uint32_t)(*cp++);
1429 par->ps++;
1430 par->ps = RPAR_TYPE;
1445 switch (par->ctr) {
1475 if (par->ctr < 0)
1480 lws_ss_state_name(par->ctr));
1483 if (par->ctr == LWSSSCS_CREATING) {
1484 h = lws_container_of(par, lws_sspc_handle_t, parser);
1498 h = lws_container_of(par, lws_sspc_handle_t, parser);
1499 lws_ss_constate_t cs = (lws_ss_constate_t)par->ctr;
1515 NULL, cs, par->flags);