tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

fec_private_tables_random.cc (10661B)


      1 /*
      2 *  Copyright (c) 2018 The WebRTC project authors. All Rights Reserved.
      3 *
      4 *  Use of this source code is governed by a BSD-style license
      5 *  that can be found in the LICENSE file in the root of the source
      6 *  tree. An additional intellectual property rights grant can be found
      7 *  in the file PATENTS.  All contributing project authors may
      8 *  be found in the AUTHORS file in the root of the source tree.
      9 */
     10 
     11 #include "modules/rtp_rtcp/source/fec_private_tables_random.h"
     12 
     13 #include <cstdint>
     14 
     15 namespace {
     16 // clang-format off
     17 #define kMaskRandom1_1 \
     18  0x80, 0x00
     19 
     20 #define kMaskRandom2_1 \
     21  0xc0, 0x00
     22 
     23 #define kMaskRandom2_2 \
     24  0xc0, 0x00, \
     25  0x80, 0x00
     26 
     27 #define kMaskRandom3_1 \
     28  0xe0, 0x00
     29 
     30 #define kMaskRandom3_2 \
     31  0xc0, 0x00, \
     32  0xa0, 0x00
     33 
     34 #define kMaskRandom3_3 \
     35  0xc0, 0x00, \
     36  0xa0, 0x00, \
     37  0x60, 0x00
     38 
     39 #define kMaskRandom4_1 \
     40  0xf0, 0x00
     41 
     42 #define kMaskRandom4_2 \
     43  0xc0, 0x00, \
     44  0xb0, 0x00
     45 
     46 #define kMaskRandom4_3 \
     47  0xc0, 0x00, \
     48  0xb0, 0x00, \
     49  0x60, 0x00
     50 
     51 #define kMaskRandom4_4 \
     52  0xc0, 0x00, \
     53  0xa0, 0x00, \
     54  0x30, 0x00, \
     55  0x50, 0x00
     56 
     57 #define kMaskRandom5_1 \
     58  0xf8, 0x00
     59 
     60 #define kMaskRandom5_2 \
     61  0xa8, 0x00, \
     62  0xd0, 0x00
     63 
     64 #define kMaskRandom5_3 \
     65  0xb0, 0x00, \
     66  0xc8, 0x00, \
     67  0x50, 0x00
     68 
     69 #define kMaskRandom5_4 \
     70  0xc8, 0x00, \
     71  0xb0, 0x00, \
     72  0x50, 0x00, \
     73  0x28, 0x00
     74 
     75 #define kMaskRandom5_5 \
     76  0xc0, 0x00, \
     77  0x30, 0x00, \
     78  0x18, 0x00, \
     79  0xa0, 0x00, \
     80  0x48, 0x00
     81 
     82 #define kMaskRandom6_1 \
     83  0xfc, 0x00
     84 
     85 #define kMaskRandom6_2 \
     86  0xa8, 0x00, \
     87  0xd4, 0x00
     88 
     89 #define kMaskRandom6_3 \
     90  0xd0, 0x00, \
     91  0x68, 0x00, \
     92  0xa4, 0x00
     93 
     94 #define kMaskRandom6_4 \
     95  0xa8, 0x00, \
     96  0x58, 0x00, \
     97  0x64, 0x00, \
     98  0x94, 0x00
     99 
    100 #define kMaskRandom6_5 \
    101  0xa8, 0x00, \
    102  0x84, 0x00, \
    103  0x64, 0x00, \
    104  0x90, 0x00, \
    105  0x58, 0x00
    106 
    107 #define kMaskRandom6_6 \
    108  0x98, 0x00, \
    109  0x64, 0x00, \
    110  0x50, 0x00, \
    111  0x14, 0x00, \
    112  0xa8, 0x00, \
    113  0xe0, 0x00
    114 
    115 #define kMaskRandom7_1 \
    116  0xfe, 0x00
    117 
    118 #define kMaskRandom7_2 \
    119  0xd4, 0x00, \
    120  0xaa, 0x00
    121 
    122 #define kMaskRandom7_3 \
    123  0xd0, 0x00, \
    124  0xaa, 0x00, \
    125  0x64, 0x00
    126 
    127 #define kMaskRandom7_4 \
    128  0xd0, 0x00, \
    129  0xaa, 0x00, \
    130  0x64, 0x00, \
    131  0x1c, 0x00
    132 
    133 #define kMaskRandom7_5 \
    134  0x0c, 0x00, \
    135  0xb0, 0x00, \
    136  0x1a, 0x00, \
    137  0xc4, 0x00, \
    138  0x62, 0x00
    139 
    140 #define kMaskRandom7_6 \
    141  0x8c, 0x00, \
    142  0x4a, 0x00, \
    143  0x64, 0x00, \
    144  0xd0, 0x00, \
    145  0xa0, 0x00, \
    146  0x32, 0x00
    147 
    148 #define kMaskRandom7_7 \
    149  0x4a, 0x00, \
    150  0x94, 0x00, \
    151  0x1a, 0x00, \
    152  0xc4, 0x00, \
    153  0x28, 0x00, \
    154  0xc2, 0x00, \
    155  0x34, 0x00
    156 
    157 #define kMaskRandom8_1 \
    158  0xff, 0x00
    159 
    160 #define kMaskRandom8_2 \
    161  0xaa, 0x00, \
    162  0xd5, 0x00
    163 
    164 #define kMaskRandom8_3 \
    165  0xc5, 0x00, \
    166  0x92, 0x00, \
    167  0x6a, 0x00
    168 
    169 #define kMaskRandom8_4 \
    170  0x45, 0x00, \
    171  0xb4, 0x00, \
    172  0x6a, 0x00, \
    173  0x89, 0x00
    174 
    175 #define kMaskRandom8_5 \
    176  0x8c, 0x00, \
    177  0x92, 0x00, \
    178  0x2b, 0x00, \
    179  0x51, 0x00, \
    180  0x64, 0x00
    181 
    182 #define kMaskRandom8_6 \
    183  0xa1, 0x00, \
    184  0x52, 0x00, \
    185  0x91, 0x00, \
    186  0x2a, 0x00, \
    187  0xc4, 0x00, \
    188  0x4c, 0x00
    189 
    190 #define kMaskRandom8_7 \
    191  0x15, 0x00, \
    192  0xc2, 0x00, \
    193  0x25, 0x00, \
    194  0x62, 0x00, \
    195  0x58, 0x00, \
    196  0x8c, 0x00, \
    197  0xa3, 0x00
    198 
    199 #define kMaskRandom8_8 \
    200  0x25, 0x00, \
    201  0x8a, 0x00, \
    202  0x91, 0x00, \
    203  0x68, 0x00, \
    204  0x32, 0x00, \
    205  0x43, 0x00, \
    206  0xc4, 0x00, \
    207  0x1c, 0x00
    208 
    209 #define kMaskRandom9_1 \
    210  0xff, 0x80
    211 
    212 #define kMaskRandom9_2 \
    213  0xaa, 0x80, \
    214  0xd5, 0x00
    215 
    216 #define kMaskRandom9_3 \
    217  0xa5, 0x00, \
    218  0xc8, 0x00, \
    219  0x52, 0x80
    220 
    221 #define kMaskRandom9_4 \
    222  0xa2, 0x00, \
    223  0xc9, 0x00, \
    224  0x52, 0x80, \
    225  0x24, 0x80
    226 
    227 #define kMaskRandom9_5 \
    228  0x8c, 0x00, \
    229  0x25, 0x00, \
    230  0x92, 0x80, \
    231  0x41, 0x80, \
    232  0x58, 0x00
    233 
    234 #define kMaskRandom9_6 \
    235  0x84, 0x80, \
    236  0x27, 0x00, \
    237  0x51, 0x80, \
    238  0x1a, 0x00, \
    239  0x68, 0x00, \
    240  0x89, 0x00
    241 
    242 #define kMaskRandom9_7 \
    243  0x8c, 0x00, \
    244  0x47, 0x00, \
    245  0x81, 0x80, \
    246  0x12, 0x80, \
    247  0x58, 0x00, \
    248  0x28, 0x80, \
    249  0xb4, 0x00
    250 
    251 #define kMaskRandom9_8 \
    252  0x2c, 0x00, \
    253  0x91, 0x00, \
    254  0x40, 0x80, \
    255  0x06, 0x80, \
    256  0xc8, 0x00, \
    257  0x45, 0x00, \
    258  0x30, 0x80, \
    259  0xa2, 0x00
    260 
    261 #define kMaskRandom9_9 \
    262  0x4c, 0x00, \
    263  0x62, 0x00, \
    264  0x91, 0x00, \
    265  0x42, 0x80, \
    266  0xa4, 0x00, \
    267  0x13, 0x00, \
    268  0x30, 0x80, \
    269  0x88, 0x80, \
    270  0x09, 0x00
    271 
    272 #define kMaskRandom10_1 \
    273  0xff, 0xc0
    274 
    275 #define kMaskRandom10_10 \
    276  0x4c, 0x00, \
    277  0x51, 0x00, \
    278  0xa0, 0x40, \
    279  0x04, 0xc0, \
    280  0x03, 0x80, \
    281  0x86, 0x00, \
    282  0x29, 0x00, \
    283  0x42, 0x40, \
    284  0x98, 0x00, \
    285  0x30, 0x80
    286 
    287 #define kMaskRandom10_2 \
    288  0xaa, 0x80, \
    289  0xd5, 0x40
    290 
    291 #define kMaskRandom10_3 \
    292  0xa4, 0x40, \
    293  0xc9, 0x00, \
    294  0x52, 0x80
    295 
    296 #define kMaskRandom10_4 \
    297  0xca, 0x00, \
    298  0x32, 0x80, \
    299  0xa1, 0x40, \
    300  0x55, 0x00
    301 
    302 #define kMaskRandom10_5 \
    303  0xca, 0x00, \
    304  0x32, 0x80, \
    305  0xa1, 0x40, \
    306  0x55, 0x00, \
    307  0x08, 0xc0
    308 
    309 #define kMaskRandom10_6 \
    310  0x0e, 0x00, \
    311  0x33, 0x00, \
    312  0x10, 0xc0, \
    313  0x45, 0x40, \
    314  0x88, 0x80, \
    315  0xe0, 0x00
    316 
    317 #define kMaskRandom10_7 \
    318  0x46, 0x00, \
    319  0x33, 0x00, \
    320  0x80, 0xc0, \
    321  0x0c, 0x40, \
    322  0x28, 0x80, \
    323  0x94, 0x00, \
    324  0xc1, 0x00
    325 
    326 #define kMaskRandom10_8 \
    327  0x2c, 0x00, \
    328  0x81, 0x80, \
    329  0xa0, 0x40, \
    330  0x05, 0x40, \
    331  0x18, 0x80, \
    332  0xc2, 0x00, \
    333  0x22, 0x80, \
    334  0x50, 0x40
    335 
    336 #define kMaskRandom10_9 \
    337  0x4c, 0x00, \
    338  0x23, 0x00, \
    339  0x88, 0xc0, \
    340  0x21, 0x40, \
    341  0x52, 0x80, \
    342  0x94, 0x00, \
    343  0x26, 0x00, \
    344  0x48, 0x40, \
    345  0x91, 0x80
    346 
    347 #define kMaskRandom11_1 \
    348  0xff, 0xe0
    349 
    350 #define kMaskRandom11_10 \
    351  0x64, 0x40, \
    352  0x51, 0x40, \
    353  0xa9, 0x00, \
    354  0x04, 0xc0, \
    355  0xd0, 0x00, \
    356  0x82, 0x40, \
    357  0x21, 0x20, \
    358  0x0c, 0x20, \
    359  0x4a, 0x00, \
    360  0x12, 0xa0
    361 
    362 #define kMaskRandom11_11 \
    363  0x46, 0x40, \
    364  0x33, 0x20, \
    365  0x99, 0x00, \
    366  0x05, 0x80, \
    367  0x80, 0xa0, \
    368  0x84, 0x40, \
    369  0x40, 0x60, \
    370  0x0a, 0x80, \
    371  0x68, 0x00, \
    372  0x10, 0x20, \
    373  0x30, 0x40
    374 
    375 #define kMaskRandom11_2 \
    376  0xec, 0xc0, \
    377  0x9b, 0xa0
    378 
    379 #define kMaskRandom11_3 \
    380  0xca, 0xc0, \
    381  0xf1, 0x40, \
    382  0xb6, 0x20
    383 
    384 #define kMaskRandom11_4 \
    385  0xc4, 0xc0, \
    386  0x31, 0x60, \
    387  0x4b, 0x20, \
    388  0x2c, 0xa0
    389 
    390 #define kMaskRandom11_5 \
    391  0x86, 0x80, \
    392  0x23, 0x20, \
    393  0x16, 0x20, \
    394  0x4c, 0x20, \
    395  0x41, 0xc0
    396 
    397 #define kMaskRandom11_6 \
    398  0x64, 0x40, \
    399  0x51, 0x40, \
    400  0x0c, 0xa0, \
    401  0xa1, 0x20, \
    402  0x12, 0xa0, \
    403  0x8a, 0x40
    404 
    405 #define kMaskRandom11_7 \
    406  0x46, 0x40, \
    407  0x33, 0x20, \
    408  0x91, 0x80, \
    409  0xa4, 0x20, \
    410  0x50, 0xa0, \
    411  0x84, 0xc0, \
    412  0x09, 0x60
    413 
    414 #define kMaskRandom11_8 \
    415  0x0c, 0x80, \
    416  0x80, 0x60, \
    417  0xa0, 0x80, \
    418  0x05, 0x40, \
    419  0x43, 0x00, \
    420  0x1a, 0x00, \
    421  0x60, 0x20, \
    422  0x14, 0x20
    423 
    424 #define kMaskRandom11_9 \
    425  0x46, 0x40, \
    426  0x62, 0x60, \
    427  0x8c, 0x00, \
    428  0x01, 0x60, \
    429  0x07, 0x80, \
    430  0xa0, 0x80, \
    431  0x18, 0xa0, \
    432  0x91, 0x00, \
    433  0x78, 0x00
    434 
    435 #define kMaskRandom12_1 \
    436  0xff, 0xf0
    437 
    438 #define kMaskRandom12_10 \
    439  0x51, 0x40, \
    440  0x45, 0x10, \
    441  0x80, 0xd0, \
    442  0x24, 0x20, \
    443  0x0a, 0x20, \
    444  0x00, 0xe0, \
    445  0xb8, 0x00, \
    446  0x09, 0x10, \
    447  0x56, 0x00, \
    448  0xa2, 0x80
    449 
    450 #define kMaskRandom12_11 \
    451  0x53, 0x60, \
    452  0x21, 0x30, \
    453  0x10, 0x90, \
    454  0x00, 0x70, \
    455  0x0c, 0x10, \
    456  0x40, 0xc0, \
    457  0x6a, 0x00, \
    458  0x86, 0x00, \
    459  0x24, 0x80, \
    460  0x89, 0x00, \
    461  0xc0, 0x20
    462 
    463 #define kMaskRandom12_12 \
    464  0x10, 0x60, \
    465  0x02, 0x30, \
    466  0x40, 0x50, \
    467  0x21, 0x80, \
    468  0x81, 0x10, \
    469  0x14, 0x80, \
    470  0x98, 0x00, \
    471  0x08, 0x90, \
    472  0x62, 0x00, \
    473  0x24, 0x20, \
    474  0x8a, 0x00, \
    475  0x84, 0x40
    476 
    477 #define kMaskRandom12_2 \
    478  0xec, 0xc0, \
    479  0x93, 0xb0
    480 
    481 #define kMaskRandom12_3 \
    482  0x9b, 0x80, \
    483  0x4f, 0x10, \
    484  0x3c, 0x60
    485 
    486 #define kMaskRandom12_4 \
    487  0x8b, 0x20, \
    488  0x14, 0xb0, \
    489  0x22, 0xd0, \
    490  0x45, 0x50
    491 
    492 #define kMaskRandom12_5 \
    493  0x53, 0x60, \
    494  0x64, 0x20, \
    495  0x0c, 0xc0, \
    496  0x82, 0xa0, \
    497  0x09, 0x30
    498 
    499 #define kMaskRandom12_6 \
    500  0x51, 0x40, \
    501  0xc5, 0x10, \
    502  0x21, 0x80, \
    503  0x12, 0x30, \
    504  0x08, 0xe0, \
    505  0x2e, 0x00
    506 
    507 #define kMaskRandom12_7 \
    508  0x53, 0x60, \
    509  0x21, 0x30, \
    510  0x90, 0x90, \
    511  0x02, 0x50, \
    512  0x06, 0xa0, \
    513  0x2c, 0x00, \
    514  0x88, 0x60
    515 
    516 #define kMaskRandom12_8 \
    517  0x20, 0x60, \
    518  0x80, 0x30, \
    519  0x42, 0x40, \
    520  0x01, 0x90, \
    521  0x14, 0x10, \
    522  0x0a, 0x80, \
    523  0x38, 0x00, \
    524  0xc5, 0x00
    525 
    526 #define kMaskRandom12_9 \
    527  0x53, 0x60, \
    528  0xe4, 0x20, \
    529  0x24, 0x40, \
    530  0xa1, 0x10, \
    531  0x18, 0x30, \
    532  0x03, 0x90, \
    533  0x8a, 0x10, \
    534  0x04, 0x90, \
    535  0x00, 0xe0
    536 
    537 #define kPacketMaskRandom1 1, \
    538  kMaskRandom1_1
    539 
    540 #define kPacketMaskRandom2 2, \
    541  kMaskRandom2_1, \
    542  kMaskRandom2_2
    543 
    544 #define kPacketMaskRandom3 3, \
    545  kMaskRandom3_1, \
    546  kMaskRandom3_2, \
    547  kMaskRandom3_3
    548 
    549 #define kPacketMaskRandom4 4, \
    550  kMaskRandom4_1, \
    551  kMaskRandom4_2, \
    552  kMaskRandom4_3, \
    553  kMaskRandom4_4
    554 
    555 #define kPacketMaskRandom5 5, \
    556  kMaskRandom5_1, \
    557  kMaskRandom5_2, \
    558  kMaskRandom5_3, \
    559  kMaskRandom5_4, \
    560  kMaskRandom5_5
    561 
    562 #define kPacketMaskRandom6 6, \
    563  kMaskRandom6_1, \
    564  kMaskRandom6_2, \
    565  kMaskRandom6_3, \
    566  kMaskRandom6_4, \
    567  kMaskRandom6_5, \
    568  kMaskRandom6_6
    569 
    570 #define kPacketMaskRandom7 7, \
    571  kMaskRandom7_1, \
    572  kMaskRandom7_2, \
    573  kMaskRandom7_3, \
    574  kMaskRandom7_4, \
    575  kMaskRandom7_5, \
    576  kMaskRandom7_6, \
    577  kMaskRandom7_7
    578 
    579 #define kPacketMaskRandom8 8, \
    580  kMaskRandom8_1, \
    581  kMaskRandom8_2, \
    582  kMaskRandom8_3, \
    583  kMaskRandom8_4, \
    584  kMaskRandom8_5, \
    585  kMaskRandom8_6, \
    586  kMaskRandom8_7, \
    587  kMaskRandom8_8
    588 
    589 #define kPacketMaskRandom9 9, \
    590  kMaskRandom9_1, \
    591  kMaskRandom9_2, \
    592  kMaskRandom9_3, \
    593  kMaskRandom9_4, \
    594  kMaskRandom9_5, \
    595  kMaskRandom9_6, \
    596  kMaskRandom9_7, \
    597  kMaskRandom9_8, \
    598  kMaskRandom9_9
    599 
    600 #define kPacketMaskRandom10 10, \
    601  kMaskRandom10_1, \
    602  kMaskRandom10_2, \
    603  kMaskRandom10_3, \
    604  kMaskRandom10_4, \
    605  kMaskRandom10_5, \
    606  kMaskRandom10_6, \
    607  kMaskRandom10_7, \
    608  kMaskRandom10_8, \
    609  kMaskRandom10_9, \
    610  kMaskRandom10_10
    611 
    612 #define kPacketMaskRandom11 11, \
    613  kMaskRandom11_1, \
    614  kMaskRandom11_2, \
    615  kMaskRandom11_3, \
    616  kMaskRandom11_4, \
    617  kMaskRandom11_5, \
    618  kMaskRandom11_6, \
    619  kMaskRandom11_7, \
    620  kMaskRandom11_8, \
    621  kMaskRandom11_9, \
    622  kMaskRandom11_10, \
    623  kMaskRandom11_11
    624 
    625 #define kPacketMaskRandom12 12, \
    626  kMaskRandom12_1, \
    627  kMaskRandom12_2, \
    628  kMaskRandom12_3, \
    629  kMaskRandom12_4, \
    630  kMaskRandom12_5, \
    631  kMaskRandom12_6, \
    632  kMaskRandom12_7, \
    633  kMaskRandom12_8, \
    634  kMaskRandom12_9, \
    635  kMaskRandom12_10, \
    636  kMaskRandom12_11, \
    637  kMaskRandom12_12
    638 
    639 // clang-format on
    640 }  // namespace
    641 
    642 namespace webrtc {
    643 namespace fec_private_tables {
    644 
    645 const uint8_t kPacketMaskRandomTbl[] = {
    646    12,
    647    kPacketMaskRandom1,  // 2 byte entries.
    648    kPacketMaskRandom2,
    649    kPacketMaskRandom3,
    650    kPacketMaskRandom4,
    651    kPacketMaskRandom5,
    652    kPacketMaskRandom6,
    653    kPacketMaskRandom7,
    654    kPacketMaskRandom8,
    655    kPacketMaskRandom9,
    656    kPacketMaskRandom10,
    657    kPacketMaskRandom11,
    658    kPacketMaskRandom12,
    659 };
    660 
    661 }  // namespace fec_private_tables
    662 }  // namespace webrtc