media/mtransport/common.build
author Tim Huang <tihuang@mozilla.com>
Thu, 31 Aug 2017 11:14:14 +0800
changeset 453921 b2f55468b241f28678dc5e35e19eb3b5781a1c5c
parent 451142 dc853f9fd97293ff703530d806ebf2633740ed69
child 478840 cbac90b0c34d8362ea4542ae5795a4e48f71aee4
permissions -rw-r--r--
Bug 1222285 - Part 2: Making the keyboard events of modifier keys been suppressed when 'privacy.resistFingerprinting' is true. r=arthuredelstein,masayuki This patch makes 'Shift', 'Alt', 'Contorl' and 'AltGraph' been suppressed for content when fingerprinting resistance is enabled. Chrome can still get these events. The reason behind this is that websites can still observe key combinations to tell which keyboard layout is using even we spoof the keyboardEvent.code, keyboardEvent.keyCode and modifier states. For example, the AZERTY France keyboard, the digit keys of it requires the user press the Shift key. So, it is easy to differentiate AZERTY and QWERTY keyboard by observing whether a Shift key generates its own before the digit keys. There are similar issues for 'Alt' and 'AltGraph' as well. MozReview-Commit-ID: 3CwCgvey4lK

# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

mtransport_lcppsrcs = [
    'dtlsidentity.cpp',
    'nr_socket_prsock.cpp',
    'nr_timer.cpp',
    'nricectx.cpp',
    'nricectxhandler.cpp',
    'nricemediastream.cpp',
    'nriceresolver.cpp',
    'nriceresolverfake.cpp',
    'nricestunaddr.cpp',
    'nrinterfaceprioritizer.cpp',
    'rlogconnector.cpp',
    'simpletokenbucket.cpp',
    'stun_socket_filter.cpp',
    'test_nr_socket.cpp',
    'transportflow.cpp',
    'transportlayer.cpp',
    'transportlayerdtls.cpp',
    'transportlayerice.cpp',
    'transportlayerlog.cpp',
    'transportlayerloopback.cpp',
]

mtransport_cppsrcs = [
    '/media/mtransport/%s' % s for s in sorted(mtransport_lcppsrcs)
]

LOCAL_INCLUDES += [
    '/media/mtransport/',
    '/media/mtransport/third_party/',
    '/media/mtransport/third_party/nICEr/src/crypto',
    '/media/mtransport/third_party/nICEr/src/ice',
    '/media/mtransport/third_party/nICEr/src/net',
    '/media/mtransport/third_party/nICEr/src/stun',
    '/media/mtransport/third_party/nICEr/src/util',
    '/media/mtransport/third_party/nrappkit/src/event',
    '/media/mtransport/third_party/nrappkit/src/log',
    '/media/mtransport/third_party/nrappkit/src/plugin',
    '/media/mtransport/third_party/nrappkit/src/port/generic/include',
    '/media/mtransport/third_party/nrappkit/src/registry',
    '/media/mtransport/third_party/nrappkit/src/share',
    '/media/mtransport/third_party/nrappkit/src/stats',
    '/media/mtransport/third_party/nrappkit/src/util/libekr',
]

if CONFIG['OS_TARGET'] in ['Darwin', 'DragonFly', 'FreeBSD', 'NetBSD', 'OpenBSD']:
    if CONFIG['OS_TARGET'] == 'Darwin':
        DEFINES['DARWIN'] = True
    else:
        DEFINES['BSD'] = True
    LOCAL_INCLUDES += [
        '/media/mtransport/third_party/nrappkit/src/port/darwin/include',
    ]
elif CONFIG['OS_TARGET'] == 'Linux':
    DEFINES['LINUX'] = True
    LOCAL_INCLUDES += [
        '/media/mtransport/third_party/nrappkit/src/port/linux/include',
    ]
elif CONFIG['OS_TARGET'] == 'Android':
    DEFINES['LINUX'] = True
    DEFINES['ANDROID'] = True
    LOCAL_INCLUDES += [
        '/media/mtransport/third_party/nrappkit/src/port/android/include',
    ]
elif CONFIG['OS_TARGET'] == 'WINNT':
    DEFINES['WIN'] = True
    # for stun.h
    DEFINES['WIN32'] = True
    LOCAL_INCLUDES += [
        '/media/mtransport/third_party/nrappkit/src/port/win32/include',
    ]

for var in ('HAVE_STRDUP', 'NR_SOCKET_IS_VOID_PTR'):
    DEFINES[var] = True

DEFINES['R_DEFINED_INT2'] = 'int16_t'
DEFINES['R_DEFINED_UINT2'] = 'uint16_t'
DEFINES['R_DEFINED_INT4'] = 'int32_t'
DEFINES['R_DEFINED_UINT4'] = 'uint32_t'
DEFINES['R_DEFINED_INT8'] = 'int64_t'
DEFINES['R_DEFINED_UINT8'] = 'uint64_t'

if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
    CXXFLAGS += ['-Wno-error=shadow']