| 152 | int flags[SRTO_E_SIZE]; |
| 153 | std::map<SRT_SOCKOPT, std::string> private_default; |
| 154 | SrtOptionAction() |
| 155 | { |
| 156 | // Set everything to 0 to clear all flags |
| 157 | // When an option isn't present here, it means that: |
| 158 | // * it is not settable, or |
| 159 | // * the option is POST (non-restricted) |
| 160 | // * it has no post-actions |
| 161 | // The post-action may be defined independently on restrictions. |
| 162 | memset(flags, 0, sizeof flags); |
| 163 | |
| 164 | flags[SRTO_MSS] = SRTO_R_PREBIND; |
| 165 | flags[SRTO_FC] = SRTO_R_PRE; |
| 166 | flags[SRTO_SNDBUF] = SRTO_R_PREBIND; |
| 167 | flags[SRTO_RCVBUF] = SRTO_R_PREBIND; |
| 168 | flags[SRTO_UDP_SNDBUF] = SRTO_R_PREBIND; |
| 169 | flags[SRTO_UDP_RCVBUF] = SRTO_R_PREBIND; |
| 170 | flags[SRTO_RENDEZVOUS] = SRTO_R_PRE; |
| 171 | flags[SRTO_REUSEADDR] = SRTO_R_PREBIND; |
| 172 | flags[SRTO_MAXBW] = SRTO_POST_SPEC; |
| 173 | flags[SRTO_SENDER] = SRTO_R_PRE; |
| 174 | flags[SRTO_TSBPDMODE] = SRTO_R_PRE; |
| 175 | flags[SRTO_LATENCY] = SRTO_R_PRE; |
| 176 | flags[SRTO_INPUTBW] = SRTO_POST_SPEC; |
| 177 | flags[SRTO_MININPUTBW] = SRTO_POST_SPEC; |
| 178 | flags[SRTO_OHEADBW] = SRTO_POST_SPEC; |
| 179 | flags[SRTO_PASSPHRASE] = SRTO_R_PRE; |
| 180 | flags[SRTO_PBKEYLEN] = SRTO_R_PRE; |
| 181 | flags[SRTO_IPTTL] = SRTO_R_PREBIND; |
| 182 | flags[SRTO_IPTOS] = SRTO_R_PREBIND; |
| 183 | flags[SRTO_TLPKTDROP] = SRTO_R_PRE; |
| 184 | flags[SRTO_SNDDROPDELAY] = SRTO_POST_SPEC; |
| 185 | flags[SRTO_NAKREPORT] = SRTO_R_PRE; |
| 186 | flags[SRTO_VERSION] = SRTO_R_PRE; |
| 187 | flags[SRTO_CONNTIMEO] = SRTO_R_PRE; |
| 188 | flags[SRTO_LOSSMAXTTL] = SRTO_POST_SPEC; |
| 189 | flags[SRTO_RCVLATENCY] = SRTO_R_PRE; |
| 190 | flags[SRTO_PEERLATENCY] = SRTO_R_PRE; |
| 191 | flags[SRTO_MINVERSION] = SRTO_R_PRE; |
| 192 | flags[SRTO_STREAMID] = SRTO_R_PRE; |
| 193 | flags[SRTO_CONGESTION] = SRTO_R_PRE; |
| 194 | flags[SRTO_MESSAGEAPI] = SRTO_R_PRE; |
| 195 | flags[SRTO_PAYLOADSIZE] = SRTO_R_PRE; |
| 196 | flags[SRTO_TRANSTYPE] = SRTO_R_PREBIND; |
| 197 | flags[SRTO_KMREFRESHRATE] = SRTO_R_PRE; |
| 198 | flags[SRTO_KMPREANNOUNCE] = SRTO_R_PRE; |
| 199 | flags[SRTO_ENFORCEDENCRYPTION] = SRTO_R_PRE; |
| 200 | flags[SRTO_IPV6ONLY] = SRTO_R_PREBIND; |
| 201 | flags[SRTO_PEERIDLETIMEO] = SRTO_R_PRE; |
| 202 | #ifdef SRT_ENABLE_BINDTODEVICE |
| 203 | flags[SRTO_BINDTODEVICE] = SRTO_R_PREBIND; |
| 204 | #endif |
| 205 | #if ENABLE_BONDING |
| 206 | flags[SRTO_GROUPCONNECT] = SRTO_R_PRE; |
| 207 | flags[SRTO_GROUPMINSTABLETIMEO]= SRTO_R_PRE; |
| 208 | #endif |
| 209 | flags[SRTO_PACKETFILTER] = SRTO_R_PRE; |
| 210 | flags[SRTO_RETRANSMITALGO] = SRTO_R_PRE; |
| 211 | #ifdef ENABLE_AEAD_API_PREVIEW |
nothing calls this directly
no outgoing calls
no test coverage detected