mirror of
https://github.com/systemd/systemd
synced 2026-03-19 19:44:48 +01:00
Compare commits
No commits in common. "ad64e3e8d649949a33be6daae6e9821e694b37c2" and "e9bbb6ef0402e050efc7d7b4e6d9424599d2a803" have entirely different histories.
ad64e3e8d6
...
e9bbb6ef04
53
NEWS
53
NEWS
@ -125,12 +125,6 @@ CHANGES WITH 249 in spe:
|
||||
gained a new parameter --uuid that prints the UUID for each generated
|
||||
uevent.
|
||||
|
||||
* sd-device also gained new APIs sd_device_new_from_ifname() and
|
||||
sd_device_new_from_ifindex() for allocating an sd-device object for
|
||||
the specified network interface. The former accepts an interface name
|
||||
(either a primary or an alternative name), the latter an interface
|
||||
index.
|
||||
|
||||
* The native Journal protocol has been documented. Clients may talk
|
||||
this as alternative to the classic BSD syslog protocol for locally
|
||||
delivering log records to the Journal. The protocol has been stable
|
||||
@ -469,42 +463,33 @@ CHANGES WITH 249 in spe:
|
||||
* The WakeOnLan= setting in .link files now accepts a list of flags
|
||||
instead of a single one, to configure multiple wake-on-LAN policies.
|
||||
|
||||
* User-space defined tracepoints (USDT) have been added to udev at
|
||||
strategic locations. This is useful for tracing udev behaviour and
|
||||
performance with bpftrace and similar tools.
|
||||
|
||||
* systemd-journald-upload gained a new NetworkTimeoutSec= option for
|
||||
setting a network timeout time.
|
||||
|
||||
Contributions from: Aakash Singh, adrian5, Alexander Sverdlin,
|
||||
alexlzhu, Allen Webb, Alvin Šipraga, Alyssa Ross, Anita Zhang, asavah,
|
||||
Balint Reczey, Bertrand Jacquin, borna-blazevic, caoxia2008cxx,
|
||||
Carlo Teubner, Christian Göttsche, Christian Hesse, Daniel Schaefer,
|
||||
Dan Streetman, David Santamaría Rogado, David Tardon, Deepak Rawat,
|
||||
Carlo Teubner, Christian Göttsche, Christian Hesse, Dan Streetman,
|
||||
David Santamaría Rogado, David Tardon, Deepak Rawat,
|
||||
Dimitri John Ledkov, ei-ke, Emilio Herrera, Emil Renner Berthing,
|
||||
Flos Lonicerae, Franck Bui, Francois Gervais, Frantisek Sumsal,
|
||||
Gibeom Gwon, gitm0, Hans de Goede, Harsh Barsaiyan, Henri Chain,
|
||||
Igor Zhbanov, imayoda, Jakub Warczarek, James Buren, Jan Janssen,
|
||||
Jan Synacek, Jason Francis, Jayanth Ananthapadmanaban,
|
||||
Jérôme Carretero, jiangchuangang, Joerg Behrmann,
|
||||
Jóhann B. Guðmundsson, Jörg Deckert, Jörg Thalheim, Julia Kartseva,
|
||||
Kai-Heng Feng, Khem Raj, KoyamaSohei, Lennart Poettering,
|
||||
LetzteInstanz, Luca Adrian L, Luca Boccassi, Lucas Magasweran,
|
||||
Mantas Mikulėnas, Marco Antonio Mauro, Mark Wielaard, Masahiro Matsuya,
|
||||
Matt Johnston, Michael Catanzaro, Michal Koutný, Michal Sekletár,
|
||||
Mike Kazantsev, Milan, Miroslav Suchý, Morten Linderud, nerdopolis,
|
||||
nl6720, Noah Meyerhans, Oleg Popov, Olle Lundberg, Ondrej Kozina,
|
||||
Perry.Yuan, Peter Hutterer, Peter Kjellerstedt, Peter Morrow,
|
||||
Phaedrus Leeds, Roman Beranek, Roshan Shariff, Ryan Hendrickson,
|
||||
Samuel BF, scootergrisen, Sebastian Blunt, Seong-ho Cho, Sergey Bugaev,
|
||||
Sevan Janiyan, Sibo Dong, simmon, Simon Watts, Srinidhi Kaushik,
|
||||
Štěpán Němec, Steve Bonds, Susant Sahani, sverdlin, syyhao1994,
|
||||
Takashi Sakamoto, Topi Miettinen, tramsay, Uwe Kleine-König,
|
||||
Viktor Mihajlovski, Vincent Dechenaux, Vito Caputo,
|
||||
William A. Kennington III, Yangyang Shen, Yegor Alexeyev, Yi Gao,
|
||||
Yu Watanabe, Zbigniew Jędrzejewski-Szmek, zsien, наб
|
||||
Jan Synacek, Jason Francis, Jérôme Carretero, jiangchuangang,
|
||||
Joerg Behrmann, Jóhann B. Guðmundsson, Jörg Deckert, Jörg Thalheim,
|
||||
Julia Kartseva, Kai-Heng Feng, Khem Raj, KoyamaSohei,
|
||||
Lennart Poettering, LetzteInstanz, Luca Adrian L, Luca Boccassi,
|
||||
Lucas Magasweran, Mantas Mikulėnas, Marco Antonio Mauro, Mark Wielaard,
|
||||
Masahiro Matsuya, Michael Catanzaro, Mike Kazantsev, Milan,
|
||||
Miroslav Suchý, Morten Linderud, Noah Meyerhans, Oleg Popov,
|
||||
Olle Lundberg, Ondrej Kozina, Perry.Yuan, Peter Hutterer,
|
||||
Peter Kjellerstedt, Peter Morrow, Phaedrus Leeds, Roman Beranek,
|
||||
Roshan Shariff, Ryan Hendrickson, Samuel BF, scootergrisen,
|
||||
Sebastian Blunt, Seong-ho Cho, Sergey Bugaev, Sevan Janiyan, Sibo Dong,
|
||||
simmon, Simon Watts, Srinidhi Kaushik, Štěpán Němec, Steve Bonds,
|
||||
Susant Sahani, sverdlin, syyhao1994, Takashi Sakamoto, Topi Miettinen,
|
||||
tramsay, Uwe Kleine-König, Viktor Mihajlovski, Vincent Dechenaux,
|
||||
Vito Caputo, William A. Kennington III, Yangyang Shen, Yegor Alexeyev,
|
||||
Yi Gao, Yu Watanabe, Zbigniew Jędrzejewski-Szmek, zsien, наб
|
||||
|
||||
— Berlin, 2021-06-15
|
||||
— Berlin, 2021-06-XX
|
||||
|
||||
CHANGES WITH 248:
|
||||
|
||||
|
||||
@ -36830,9 +36830,6 @@ OUI:00BD27*
|
||||
OUI:00BD3A*
|
||||
ID_OUI_FROM_DATABASE=Nokia Corporation
|
||||
|
||||
OUI:00BD3E*
|
||||
ID_OUI_FROM_DATABASE=Vizio, Inc
|
||||
|
||||
OUI:00BD82*
|
||||
ID_OUI_FROM_DATABASE=Shenzhen YOUHUA Technology Co., Ltd
|
||||
|
||||
@ -37688,9 +37685,6 @@ OUI:00CD90*
|
||||
OUI:00CDFE*
|
||||
ID_OUI_FROM_DATABASE=Apple, Inc.
|
||||
|
||||
OUI:00CE30*
|
||||
ID_OUI_FROM_DATABASE=Express LUCK Industrial Ltd.
|
||||
|
||||
OUI:00CF1C*
|
||||
ID_OUI_FROM_DATABASE=Communication Machinery Corporation
|
||||
|
||||
@ -40722,7 +40716,7 @@ OUI:080041*
|
||||
ID_OUI_FROM_DATABASE=RACAL-MILGO INFORMATION SYS..
|
||||
|
||||
OUI:080042*
|
||||
ID_OUI_FROM_DATABASE=MACNICA, Inc.
|
||||
ID_OUI_FROM_DATABASE=JAPAN MACNICS CORP.
|
||||
|
||||
OUI:080043*
|
||||
ID_OUI_FROM_DATABASE=PIXEL COMPUTER INC.
|
||||
@ -43781,9 +43775,6 @@ OUI:141877*
|
||||
OUI:1418C3*
|
||||
ID_OUI_FROM_DATABASE=Intel Corporate
|
||||
|
||||
OUI:141973*
|
||||
ID_OUI_FROM_DATABASE=Beijing Yunyi Times Technology Co.,Ltd
|
||||
|
||||
OUI:141A51*
|
||||
ID_OUI_FROM_DATABASE=Treetech Sistemas Digitais
|
||||
|
||||
@ -45467,9 +45458,6 @@ OUI:18E1CA*
|
||||
OUI:18E1DE*
|
||||
ID_OUI_FROM_DATABASE=Chengdu ChipIntelli Technology Co., Ltd
|
||||
|
||||
OUI:18E215*
|
||||
ID_OUI_FROM_DATABASE=Nokia
|
||||
|
||||
OUI:18E288*
|
||||
ID_OUI_FROM_DATABASE=STT Condigi
|
||||
|
||||
@ -48911,9 +48899,6 @@ OUI:2834A2*
|
||||
OUI:283545*
|
||||
ID_OUI_FROM_DATABASE=SHENZHEN CHUANGWEI-RGB ELECTRONICS CO.,LTD
|
||||
|
||||
OUI:2836132*
|
||||
ID_OUI_FROM_DATABASE=Shenzhen HQVT TECHNOLOGY Co.,LTD
|
||||
|
||||
OUI:2836380*
|
||||
ID_OUI_FROM_DATABASE=Knowles Electronics LLC
|
||||
|
||||
@ -53132,9 +53117,6 @@ OUI:3859F9*
|
||||
OUI:385AA8*
|
||||
ID_OUI_FROM_DATABASE=Beijing Zhongdun Security Technology Development Co.
|
||||
|
||||
OUI:385C76*
|
||||
ID_OUI_FROM_DATABASE=PLANTRONICS, INC.
|
||||
|
||||
OUI:385F66*
|
||||
ID_OUI_FROM_DATABASE=Cisco SPVTG
|
||||
|
||||
@ -55430,9 +55412,6 @@ OUI:408D5C*
|
||||
OUI:408F9D*
|
||||
ID_OUI_FROM_DATABASE=Juniper Networks
|
||||
|
||||
OUI:409151*
|
||||
ID_OUI_FROM_DATABASE=Espressif Inc.
|
||||
|
||||
OUI:409505*
|
||||
ID_OUI_FROM_DATABASE=ACOINFO TECHNOLOGY CO.,LTD
|
||||
|
||||
@ -56171,9 +56150,6 @@ OUI:4447CC*
|
||||
OUI:444891*
|
||||
ID_OUI_FROM_DATABASE=HDMI Licensing, LLC
|
||||
|
||||
OUI:4448B9*
|
||||
ID_OUI_FROM_DATABASE=MitraStar Technology Corp.
|
||||
|
||||
OUI:4448C1*
|
||||
ID_OUI_FROM_DATABASE=Hewlett Packard Enterprise
|
||||
|
||||
@ -60236,9 +60212,6 @@ OUI:546C0E*
|
||||
OUI:546D52*
|
||||
ID_OUI_FROM_DATABASE=TOPVIEW OPTRONICS CORP.
|
||||
|
||||
OUI:546F71*
|
||||
ID_OUI_FROM_DATABASE=uAvionix Corporation
|
||||
|
||||
OUI:5471DD*
|
||||
ID_OUI_FROM_DATABASE=Huawei Device Co., Ltd.
|
||||
|
||||
@ -60701,9 +60674,6 @@ OUI:54EDA3*
|
||||
OUI:54EE75*
|
||||
ID_OUI_FROM_DATABASE=Wistron InfoComm(Kunshan)Co.,Ltd.
|
||||
|
||||
OUI:54EF33*
|
||||
ID_OUI_FROM_DATABASE=SHENZHEN BILIAN ELECTRONIC CO.,LTD
|
||||
|
||||
OUI:54EF44*
|
||||
ID_OUI_FROM_DATABASE=Lumi United Technology Co., Ltd
|
||||
|
||||
@ -62033,9 +62003,6 @@ OUI:5C80B6*
|
||||
OUI:5C81A7*
|
||||
ID_OUI_FROM_DATABASE=Network Devices Pty Ltd
|
||||
|
||||
OUI:5C8382*
|
||||
ID_OUI_FROM_DATABASE=Nokia
|
||||
|
||||
OUI:5C838F*
|
||||
ID_OUI_FROM_DATABASE=Cisco Systems, Inc
|
||||
|
||||
@ -63065,9 +63032,6 @@ OUI:608E08*
|
||||
OUI:608F5C*
|
||||
ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
|
||||
|
||||
OUI:608FA4*
|
||||
ID_OUI_FROM_DATABASE=Nokia Solutions and Networks GmbH & Co. KG
|
||||
|
||||
OUI:609084*
|
||||
ID_OUI_FROM_DATABASE=DSSD Inc
|
||||
|
||||
@ -63758,9 +63722,6 @@ OUI:64317E*
|
||||
OUI:6432A8*
|
||||
ID_OUI_FROM_DATABASE=Intel Corporate
|
||||
|
||||
OUI:6433B50*
|
||||
ID_OUI_FROM_DATABASE=Duomondi International Development Co., Ltd.
|
||||
|
||||
OUI:6433B51*
|
||||
ID_OUI_FROM_DATABASE=Huaqin Telecom Technology Co.,Ltd.
|
||||
|
||||
@ -63770,39 +63731,21 @@ OUI:6433B52*
|
||||
OUI:6433B53*
|
||||
ID_OUI_FROM_DATABASE=Wingtech Mobile Communications Co.,Ltd
|
||||
|
||||
OUI:6433B54*
|
||||
ID_OUI_FROM_DATABASE=Eagle Eye Networks, Inc
|
||||
|
||||
OUI:6433B55*
|
||||
ID_OUI_FROM_DATABASE=Revo Smart Technologies co.,limited
|
||||
|
||||
OUI:6433B56*
|
||||
ID_OUI_FROM_DATABASE=MICROIT SRL
|
||||
|
||||
OUI:6433B57*
|
||||
ID_OUI_FROM_DATABASE=ABB Electrification Smart Power (ELSP)
|
||||
|
||||
OUI:6433B58*
|
||||
ID_OUI_FROM_DATABASE=LACO Technologies
|
||||
|
||||
OUI:6433B59*
|
||||
ID_OUI_FROM_DATABASE=Annapurna labs
|
||||
|
||||
OUI:6433B5A*
|
||||
ID_OUI_FROM_DATABASE=Hometek Eletronics Co., Ltd
|
||||
|
||||
OUI:6433B5B*
|
||||
ID_OUI_FROM_DATABASE=electroCore Inc.
|
||||
|
||||
OUI:6433B5C*
|
||||
ID_OUI_FROM_DATABASE=Geksacon
|
||||
|
||||
OUI:6433B5D*
|
||||
ID_OUI_FROM_DATABASE=IIYAMA CORPORATION
|
||||
|
||||
OUI:6433B5E*
|
||||
ID_OUI_FROM_DATABASE=University of Texas at Austin
|
||||
|
||||
OUI:6433DB*
|
||||
ID_OUI_FROM_DATABASE=Texas Instruments
|
||||
|
||||
@ -65825,9 +65768,6 @@ OUI:6C8FB5*
|
||||
OUI:6C90B1*
|
||||
ID_OUI_FROM_DATABASE=SanLogic Inc
|
||||
|
||||
OUI:6C9106*
|
||||
ID_OUI_FROM_DATABASE=Private
|
||||
|
||||
OUI:6C92BF*
|
||||
ID_OUI_FROM_DATABASE=Inspur Electronic Information Industry Co.,Ltd.
|
||||
|
||||
@ -79697,9 +79637,6 @@ OUI:743170*
|
||||
OUI:743256*
|
||||
ID_OUI_FROM_DATABASE=NT-ware Systemprg GmbH
|
||||
|
||||
OUI:7432C2*
|
||||
ID_OUI_FROM_DATABASE=KYOLIS
|
||||
|
||||
OUI:743400*
|
||||
ID_OUI_FROM_DATABASE=MTG Co., Ltd.
|
||||
|
||||
@ -79865,9 +79802,6 @@ OUI:745C4B*
|
||||
OUI:745C9F*
|
||||
ID_OUI_FROM_DATABASE=TCT mobile ltd
|
||||
|
||||
OUI:745CFA*
|
||||
ID_OUI_FROM_DATABASE=Shenzhen Shunrui Gaojie Technology Co., Ltd.
|
||||
|
||||
OUI:745D43*
|
||||
ID_OUI_FROM_DATABASE=BSH Hausgeraete GmbH
|
||||
|
||||
@ -80862,7 +80796,7 @@ OUI:78521A*
|
||||
ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
|
||||
|
||||
OUI:78524A*
|
||||
ID_OUI_FROM_DATABASE=Optonic GmbH
|
||||
ID_OUI_FROM_DATABASE=Ensenso GmbH
|
||||
|
||||
OUI:785262*
|
||||
ID_OUI_FROM_DATABASE=Shenzhen Hojy Software Co., Ltd.
|
||||
@ -80972,9 +80906,6 @@ OUI:78719C*
|
||||
OUI:78725D*
|
||||
ID_OUI_FROM_DATABASE=Cisco Systems, Inc
|
||||
|
||||
OUI:7876D9*
|
||||
ID_OUI_FROM_DATABASE=EXARA Group
|
||||
|
||||
OUI:787A6F*
|
||||
ID_OUI_FROM_DATABASE=Juice Technology AG
|
||||
|
||||
@ -82484,9 +82415,6 @@ OUI:7CBF88*
|
||||
OUI:7CBFB1*
|
||||
ID_OUI_FROM_DATABASE=ARRIS Group, Inc.
|
||||
|
||||
OUI:7CC177*
|
||||
ID_OUI_FROM_DATABASE=INGRAM MICRO SERVICES
|
||||
|
||||
OUI:7CC255*
|
||||
ID_OUI_FROM_DATABASE=Super Micro Computer, Inc.
|
||||
|
||||
@ -85943,9 +85871,6 @@ OUI:8C1F640E0*
|
||||
OUI:8C1F64101*
|
||||
ID_OUI_FROM_DATABASE=ASW-ATI Srl
|
||||
|
||||
OUI:8C1F64128*
|
||||
ID_OUI_FROM_DATABASE=YULISTA INTEGRATED SOLUTION
|
||||
|
||||
OUI:8C1F64135*
|
||||
ID_OUI_FROM_DATABASE=Yuval Fichman
|
||||
|
||||
@ -85958,15 +85883,9 @@ OUI:8C1F64151*
|
||||
OUI:8C1F64166*
|
||||
ID_OUI_FROM_DATABASE=Hikari Alphax Inc.
|
||||
|
||||
OUI:8C1F64193*
|
||||
ID_OUI_FROM_DATABASE=Sicon srl
|
||||
|
||||
OUI:8C1F6419C*
|
||||
ID_OUI_FROM_DATABASE=Aton srl
|
||||
|
||||
OUI:8C1F641E3*
|
||||
ID_OUI_FROM_DATABASE=WBNet
|
||||
|
||||
OUI:8C1F64204*
|
||||
ID_OUI_FROM_DATABASE=castcore
|
||||
|
||||
@ -86000,15 +85919,9 @@ OUI:8C1F642A5*
|
||||
OUI:8C1F642C8*
|
||||
ID_OUI_FROM_DATABASE=BRS Sistemas Eletrônicos
|
||||
|
||||
OUI:8C1F642E8*
|
||||
ID_OUI_FROM_DATABASE=Sonora Network Solutions
|
||||
|
||||
OUI:8C1F642EF*
|
||||
ID_OUI_FROM_DATABASE=Invisense AB
|
||||
|
||||
OUI:8C1F642F5*
|
||||
ID_OUI_FROM_DATABASE=Florida R&D Associates LLC
|
||||
|
||||
OUI:8C1F64304*
|
||||
ID_OUI_FROM_DATABASE=Jemac Sweden AB
|
||||
|
||||
@ -86024,9 +85937,6 @@ OUI:8C1F64391*
|
||||
OUI:8C1F643A4*
|
||||
ID_OUI_FROM_DATABASE=QLM Technology Ltd
|
||||
|
||||
OUI:8C1F643B5*
|
||||
ID_OUI_FROM_DATABASE=SVMS
|
||||
|
||||
OUI:8C1F643C4*
|
||||
ID_OUI_FROM_DATABASE=NavSys Technology Inc.
|
||||
|
||||
@ -86081,9 +85991,6 @@ OUI:8C1F6472C*
|
||||
OUI:8C1F6473D*
|
||||
ID_OUI_FROM_DATABASE=NewAgeMicro
|
||||
|
||||
OUI:8C1F6473F*
|
||||
ID_OUI_FROM_DATABASE=UBISCALE
|
||||
|
||||
OUI:8C1F64768*
|
||||
ID_OUI_FROM_DATABASE=mapna group
|
||||
|
||||
@ -86111,15 +86018,9 @@ OUI:8C1F64856*
|
||||
OUI:8C1F64878*
|
||||
ID_OUI_FROM_DATABASE=Green Access Ltd
|
||||
|
||||
OUI:8C1F648C2*
|
||||
ID_OUI_FROM_DATABASE=Cirrus Systems, Inc.
|
||||
|
||||
OUI:8C1F64903*
|
||||
ID_OUI_FROM_DATABASE=Portrait Displays, Inc.
|
||||
|
||||
OUI:8C1F6490E*
|
||||
ID_OUI_FROM_DATABASE=Xacti Corporation
|
||||
|
||||
OUI:8C1F64918*
|
||||
ID_OUI_FROM_DATABASE=Abbott Diagnostics Technologies AS
|
||||
|
||||
@ -86159,9 +86060,6 @@ OUI:8C1F64AA4*
|
||||
OUI:8C1F64AAB*
|
||||
ID_OUI_FROM_DATABASE=BlueSword Intelligent Technology Co., Ltd.
|
||||
|
||||
OUI:8C1F64AB5*
|
||||
ID_OUI_FROM_DATABASE=JUSTMORPH PTE. LTD.
|
||||
|
||||
OUI:8C1F64AE1*
|
||||
ID_OUI_FROM_DATABASE=YUYAMA MFG Co.,Ltd
|
||||
|
||||
@ -86186,9 +86084,6 @@ OUI:8C1F64BC0*
|
||||
OUI:8C1F64C03*
|
||||
ID_OUI_FROM_DATABASE=Abiman Engineering
|
||||
|
||||
OUI:8C1F64C1F*
|
||||
ID_OUI_FROM_DATABASE=Esys Srl
|
||||
|
||||
OUI:8C1F64C2F*
|
||||
ID_OUI_FROM_DATABASE=Power Electronics Espana, S.L.
|
||||
|
||||
@ -86207,12 +86102,6 @@ OUI:8C1F64CF3*
|
||||
OUI:8C1F64D29*
|
||||
ID_OUI_FROM_DATABASE=Secure Bits
|
||||
|
||||
OUI:8C1F64D3C*
|
||||
ID_OUI_FROM_DATABASE=KIB Energo LLC
|
||||
|
||||
OUI:8C1F64D4A*
|
||||
ID_OUI_FROM_DATABASE=Caproc Oy
|
||||
|
||||
OUI:8C1F64D7E*
|
||||
ID_OUI_FROM_DATABASE=Thales Belgium
|
||||
|
||||
@ -86228,15 +86117,9 @@ OUI:8C1F64E5C*
|
||||
OUI:8C1F64EAC*
|
||||
ID_OUI_FROM_DATABASE=Miracle Healthcare, Inc.
|
||||
|
||||
OUI:8C1F64EE8*
|
||||
ID_OUI_FROM_DATABASE=Global Organ Group B.V.
|
||||
|
||||
OUI:8C1F64F41*
|
||||
ID_OUI_FROM_DATABASE=AUTOMATIZACION Y CONECTIVIDAD SA DE CV
|
||||
|
||||
OUI:8C1F64F86*
|
||||
ID_OUI_FROM_DATABASE=INFOSTECH Co., Ltd.
|
||||
|
||||
OUI:8C1F64FD1*
|
||||
ID_OUI_FROM_DATABASE=Edgeware AB
|
||||
|
||||
@ -86393,9 +86276,6 @@ OUI:8C4962*
|
||||
OUI:8C4AEE*
|
||||
ID_OUI_FROM_DATABASE=GIGA TMS INC
|
||||
|
||||
OUI:8C4B14*
|
||||
ID_OUI_FROM_DATABASE=Espressif Inc.
|
||||
|
||||
OUI:8C4B59*
|
||||
ID_OUI_FROM_DATABASE=3D Imaging & Simulations Corp
|
||||
|
||||
@ -88613,9 +88493,6 @@ OUI:94A1A2*
|
||||
OUI:94A3CA*
|
||||
ID_OUI_FROM_DATABASE=KonnectONE, LLC
|
||||
|
||||
OUI:94A408*
|
||||
ID_OUI_FROM_DATABASE=Shenzhen Trolink Technology CO, LTD
|
||||
|
||||
OUI:94A40C*
|
||||
ID_OUI_FROM_DATABASE=Diehl Metering GmbH
|
||||
|
||||
@ -93194,9 +93071,6 @@ OUI:A4DEC9*
|
||||
OUI:A4E0E6*
|
||||
ID_OUI_FROM_DATABASE=FILIZOLA S.A. PESAGEM E AUTOMACAO
|
||||
|
||||
OUI:A4E11A*
|
||||
ID_OUI_FROM_DATABASE=Juniper Networks
|
||||
|
||||
OUI:A4E31B*
|
||||
ID_OUI_FROM_DATABASE=Nokia
|
||||
|
||||
@ -95927,9 +95801,6 @@ OUI:B0E892*
|
||||
OUI:B0E97E*
|
||||
ID_OUI_FROM_DATABASE=Advanced Micro Peripherals
|
||||
|
||||
OUI:B0E9FE*
|
||||
ID_OUI_FROM_DATABASE=Woan Technology (Shenzhen) Co., Ltd.
|
||||
|
||||
OUI:B0EABC*
|
||||
ID_OUI_FROM_DATABASE=ASKEY COMPUTER CORP
|
||||
|
||||
@ -100085,9 +99956,6 @@ OUI:C46DF1*
|
||||
OUI:C46E1F*
|
||||
ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD.
|
||||
|
||||
OUI:C46E33*
|
||||
ID_OUI_FROM_DATABASE=Zhong Ge Smart Technology Co., Ltd.
|
||||
|
||||
OUI:C46E7B*
|
||||
ID_OUI_FROM_DATABASE=SHENZHEN RF-LINK TECHNOLOGY CO.,LTD.
|
||||
|
||||
@ -101201,9 +101069,6 @@ OUI:C894BB*
|
||||
OUI:C894D2*
|
||||
ID_OUI_FROM_DATABASE=Jiangsu Datang Electronic Products Co., Ltd
|
||||
|
||||
OUI:C89665*
|
||||
ID_OUI_FROM_DATABASE=Microsoft Corporation
|
||||
|
||||
OUI:C8979F*
|
||||
ID_OUI_FROM_DATABASE=Nokia Corporation
|
||||
|
||||
@ -104603,9 +104468,6 @@ OUI:D4E33F*
|
||||
OUI:D4E6B7*
|
||||
ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd
|
||||
|
||||
OUI:D4E853*
|
||||
ID_OUI_FROM_DATABASE=Hangzhou Hikvision Digital Technology Co.,Ltd.
|
||||
|
||||
OUI:D4E880*
|
||||
ID_OUI_FROM_DATABASE=Cisco Systems, Inc
|
||||
|
||||
|
||||
@ -246,9 +246,6 @@ acpi:PIXA*:
|
||||
acpi:PNSO*:
|
||||
ID_VENDOR_FROM_DATABASE=Pensando Systems, Inc.
|
||||
|
||||
acpi:PURI*:
|
||||
ID_VENDOR_FROM_DATABASE=Purism SPC
|
||||
|
||||
acpi:QCOM*:
|
||||
ID_VENDOR_FROM_DATABASE=Qualcomm Inc
|
||||
|
||||
@ -2004,9 +2001,6 @@ acpi:DLK*:
|
||||
acpi:DLL*:
|
||||
ID_VENDOR_FROM_DATABASE=Dell Inc
|
||||
|
||||
acpi:DLM*:
|
||||
ID_VENDOR_FROM_DATABASE=DLOGIC Ltd.
|
||||
|
||||
acpi:DLO*:
|
||||
ID_VENDOR_FROM_DATABASE=Shenzhen Dlodlo Technologies Co., Ltd.
|
||||
|
||||
@ -2394,9 +2388,6 @@ acpi:EMK*:
|
||||
acpi:EMO*:
|
||||
ID_VENDOR_FROM_DATABASE=ELMO COMPANY, LIMITED
|
||||
|
||||
acpi:EMR*:
|
||||
ID_VENDOR_FROM_DATABASE=ICC Intelligent Platforms GmbH
|
||||
|
||||
acpi:EMU*:
|
||||
ID_VENDOR_FROM_DATABASE=Emulex Corporation
|
||||
|
||||
@ -2775,9 +2766,6 @@ acpi:FTW*:
|
||||
acpi:FUJ*:
|
||||
ID_VENDOR_FROM_DATABASE=Fujitsu Ltd
|
||||
|
||||
acpi:FUL*:
|
||||
ID_VENDOR_FROM_DATABASE=Fun Technology Innovation INC.
|
||||
|
||||
acpi:FUN*:
|
||||
ID_VENDOR_FROM_DATABASE=sisel muhendislik
|
||||
|
||||
@ -3534,9 +3522,6 @@ acpi:INZ*:
|
||||
acpi:IOA*:
|
||||
ID_VENDOR_FROM_DATABASE=CRE Technology Corporation
|
||||
|
||||
acpi:IOC*:
|
||||
ID_VENDOR_FROM_DATABASE=Guangxi Century Innovation Display Electronics Co., Ltd
|
||||
|
||||
acpi:IOD*:
|
||||
ID_VENDOR_FROM_DATABASE=I-O Data Device Inc
|
||||
|
||||
@ -4020,9 +4005,6 @@ acpi:LCM*:
|
||||
acpi:LCN*:
|
||||
ID_VENDOR_FROM_DATABASE=LEXICON
|
||||
|
||||
acpi:LCP*:
|
||||
ID_VENDOR_FROM_DATABASE=Silent Power Electronics GmbH
|
||||
|
||||
acpi:LCS*:
|
||||
ID_VENDOR_FROM_DATABASE=Longshine Electronics Company
|
||||
|
||||
@ -4899,9 +4881,6 @@ acpi:NGC*:
|
||||
acpi:NGS*:
|
||||
ID_VENDOR_FROM_DATABASE=A D S Exports
|
||||
|
||||
acpi:NHC*:
|
||||
ID_VENDOR_FROM_DATABASE=New H3C Technology Co., Ltd.
|
||||
|
||||
acpi:NHT*:
|
||||
ID_VENDOR_FROM_DATABASE=Vinci Labs
|
||||
|
||||
@ -6012,9 +5991,6 @@ acpi:SCD*:
|
||||
acpi:SCE*:
|
||||
ID_VENDOR_FROM_DATABASE=Sun Corporation
|
||||
|
||||
acpi:SCG*:
|
||||
ID_VENDOR_FROM_DATABASE=Seco S.p.A.
|
||||
|
||||
acpi:SCH*:
|
||||
ID_VENDOR_FROM_DATABASE=Schlumberger Cards
|
||||
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
--- 20-acpi-vendor.hwdb.base 2021-06-15 21:57:03.178869619 +0200
|
||||
+++ 20-acpi-vendor.hwdb 2021-06-15 21:57:03.185869634 +0200
|
||||
--- 20-acpi-vendor.hwdb.base 2021-06-09 11:42:38.243878904 +0200
|
||||
+++ 20-acpi-vendor.hwdb 2021-06-09 11:42:38.251878816 +0200
|
||||
@@ -3,6 +3,8 @@
|
||||
# Data imported from:
|
||||
# https://uefi.org/uefi-pnp-export
|
||||
@ -19,7 +19,7 @@
|
||||
acpi:AMDI*:
|
||||
ID_VENDOR_FROM_DATABASE=AMD
|
||||
|
||||
@@ -319,6 +318,9 @@
|
||||
@@ -316,6 +315,9 @@
|
||||
acpi:AAA*:
|
||||
ID_VENDOR_FROM_DATABASE=Avolites Ltd
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
acpi:AAE*:
|
||||
ID_VENDOR_FROM_DATABASE=Anatek Electronics Inc.
|
||||
|
||||
@@ -346,6 +348,9 @@
|
||||
@@ -343,6 +345,9 @@
|
||||
acpi:ABO*:
|
||||
ID_VENDOR_FROM_DATABASE=D-Link Systems Inc
|
||||
|
||||
@ -39,7 +39,7 @@
|
||||
acpi:ABS*:
|
||||
ID_VENDOR_FROM_DATABASE=Abaco Systems, Inc.
|
||||
|
||||
@@ -391,7 +396,7 @@
|
||||
@@ -388,7 +393,7 @@
|
||||
acpi:ACO*:
|
||||
ID_VENDOR_FROM_DATABASE=Allion Computer Inc.
|
||||
|
||||
@ -48,7 +48,7 @@
|
||||
ID_VENDOR_FROM_DATABASE=Aspen Tech Inc
|
||||
|
||||
acpi:ACR*:
|
||||
@@ -664,6 +669,9 @@
|
||||
@@ -661,6 +666,9 @@
|
||||
acpi:AMT*:
|
||||
ID_VENDOR_FROM_DATABASE=AMT International Industry
|
||||
|
||||
@ -58,7 +58,7 @@
|
||||
acpi:AMX*:
|
||||
ID_VENDOR_FROM_DATABASE=AMX LLC
|
||||
|
||||
@@ -712,6 +720,9 @@
|
||||
@@ -709,6 +717,9 @@
|
||||
acpi:AOA*:
|
||||
ID_VENDOR_FROM_DATABASE=AOpen Inc.
|
||||
|
||||
@ -68,7 +68,7 @@
|
||||
acpi:AOE*:
|
||||
ID_VENDOR_FROM_DATABASE=Advanced Optics Electronics, Inc.
|
||||
|
||||
@@ -721,6 +732,9 @@
|
||||
@@ -718,6 +729,9 @@
|
||||
acpi:AOT*:
|
||||
ID_VENDOR_FROM_DATABASE=Alcatel
|
||||
|
||||
@ -78,7 +78,7 @@
|
||||
acpi:APC*:
|
||||
ID_VENDOR_FROM_DATABASE=American Power Conversion
|
||||
|
||||
@@ -896,7 +910,7 @@
|
||||
@@ -893,7 +907,7 @@
|
||||
ID_VENDOR_FROM_DATABASE=ALPS ALPINE CO., LTD.
|
||||
|
||||
acpi:AUO*:
|
||||
@ -87,7 +87,7 @@
|
||||
|
||||
acpi:AUR*:
|
||||
ID_VENDOR_FROM_DATABASE=Aureal Semiconductor
|
||||
@@ -976,6 +990,9 @@
|
||||
@@ -973,6 +987,9 @@
|
||||
acpi:AXE*:
|
||||
ID_VENDOR_FROM_DATABASE=Axell Corporation
|
||||
|
||||
@ -97,7 +97,7 @@
|
||||
acpi:AXI*:
|
||||
ID_VENDOR_FROM_DATABASE=American Magnetics
|
||||
|
||||
@@ -1126,6 +1143,9 @@
|
||||
@@ -1123,6 +1140,9 @@
|
||||
acpi:BML*:
|
||||
ID_VENDOR_FROM_DATABASE=BIOMED Lab
|
||||
|
||||
@ -107,7 +107,7 @@
|
||||
acpi:BMS*:
|
||||
ID_VENDOR_FROM_DATABASE=BIOMEDISYS
|
||||
|
||||
@@ -1138,6 +1158,9 @@
|
||||
@@ -1135,6 +1155,9 @@
|
||||
acpi:BNO*:
|
||||
ID_VENDOR_FROM_DATABASE=Bang & Olufsen
|
||||
|
||||
@ -117,7 +117,7 @@
|
||||
acpi:BNS*:
|
||||
ID_VENDOR_FROM_DATABASE=Boulder Nonlinear Systems
|
||||
|
||||
@@ -1381,6 +1404,9 @@
|
||||
@@ -1378,6 +1401,9 @@
|
||||
acpi:CHA*:
|
||||
ID_VENDOR_FROM_DATABASE=Chase Research PLC
|
||||
|
||||
@ -127,7 +127,7 @@
|
||||
acpi:CHD*:
|
||||
ID_VENDOR_FROM_DATABASE=ChangHong Electric Co.,Ltd
|
||||
|
||||
@@ -1543,6 +1569,9 @@
|
||||
@@ -1540,6 +1566,9 @@
|
||||
acpi:COD*:
|
||||
ID_VENDOR_FROM_DATABASE=CODAN Pty. Ltd.
|
||||
|
||||
@ -137,7 +137,7 @@
|
||||
acpi:COI*:
|
||||
ID_VENDOR_FROM_DATABASE=Codec Inc.
|
||||
|
||||
@@ -1952,7 +1981,7 @@
|
||||
@@ -1949,7 +1978,7 @@
|
||||
ID_VENDOR_FROM_DATABASE=Dragon Information Technology
|
||||
|
||||
acpi:DJE*:
|
||||
@ -146,7 +146,7 @@
|
||||
|
||||
acpi:DJP*:
|
||||
ID_VENDOR_FROM_DATABASE=Maygay Machines, Ltd
|
||||
@@ -2290,6 +2319,9 @@
|
||||
@@ -2284,6 +2313,9 @@
|
||||
acpi:EIN*:
|
||||
ID_VENDOR_FROM_DATABASE=Elegant Invention
|
||||
|
||||
@ -156,7 +156,7 @@
|
||||
acpi:EKA*:
|
||||
ID_VENDOR_FROM_DATABASE=MagTek Inc.
|
||||
|
||||
@@ -2554,6 +2586,9 @@
|
||||
@@ -2545,6 +2577,9 @@
|
||||
acpi:FCG*:
|
||||
ID_VENDOR_FROM_DATABASE=First International Computer Ltd
|
||||
|
||||
@ -166,7 +166,7 @@
|
||||
acpi:FCS*:
|
||||
ID_VENDOR_FROM_DATABASE=Focus Enhancements, Inc.
|
||||
|
||||
@@ -2930,7 +2965,7 @@
|
||||
@@ -2918,7 +2953,7 @@
|
||||
ID_VENDOR_FROM_DATABASE=General Standards Corporation
|
||||
|
||||
acpi:GSM*:
|
||||
@ -175,7 +175,7 @@
|
||||
|
||||
acpi:GSN*:
|
||||
ID_VENDOR_FROM_DATABASE=Grandstream Networks, Inc.
|
||||
@@ -3031,6 +3066,9 @@
|
||||
@@ -3019,6 +3054,9 @@
|
||||
acpi:HEC*:
|
||||
ID_VENDOR_FROM_DATABASE=Hisense Electric Co., Ltd.
|
||||
|
||||
@ -185,7 +185,7 @@
|
||||
acpi:HEL*:
|
||||
ID_VENDOR_FROM_DATABASE=Hitachi Micro Systems Europe Ltd
|
||||
|
||||
@@ -3163,6 +3201,9 @@
|
||||
@@ -3151,6 +3189,9 @@
|
||||
acpi:HSD*:
|
||||
ID_VENDOR_FROM_DATABASE=HannStar Display Corp
|
||||
|
||||
@ -195,7 +195,7 @@
|
||||
acpi:HSM*:
|
||||
ID_VENDOR_FROM_DATABASE=AT&T Microelectronics
|
||||
|
||||
@@ -3286,6 +3327,9 @@
|
||||
@@ -3274,6 +3315,9 @@
|
||||
acpi:ICI*:
|
||||
ID_VENDOR_FROM_DATABASE=Infotek Communication Inc
|
||||
|
||||
@ -205,7 +205,7 @@
|
||||
acpi:ICM*:
|
||||
ID_VENDOR_FROM_DATABASE=Intracom SA
|
||||
|
||||
@@ -3382,6 +3426,9 @@
|
||||
@@ -3370,6 +3414,9 @@
|
||||
acpi:IKE*:
|
||||
ID_VENDOR_FROM_DATABASE=Ikegami Tsushinki Co. Ltd.
|
||||
|
||||
@ -215,7 +215,7 @@
|
||||
acpi:IKS*:
|
||||
ID_VENDOR_FROM_DATABASE=Ikos Systems Inc
|
||||
|
||||
@@ -3427,6 +3474,9 @@
|
||||
@@ -3415,6 +3462,9 @@
|
||||
acpi:IMT*:
|
||||
ID_VENDOR_FROM_DATABASE=Inmax Technology Corporation
|
||||
|
||||
@ -225,7 +225,7 @@
|
||||
acpi:INA*:
|
||||
ID_VENDOR_FROM_DATABASE=Inventec Corporation
|
||||
|
||||
@@ -3940,6 +3990,9 @@
|
||||
@@ -3925,6 +3975,9 @@
|
||||
acpi:LAN*:
|
||||
ID_VENDOR_FROM_DATABASE=Sodeman Lancom Inc
|
||||
|
||||
@ -235,7 +235,7 @@
|
||||
acpi:LAS*:
|
||||
ID_VENDOR_FROM_DATABASE=LASAT Comm. A/S
|
||||
|
||||
@@ -3988,6 +4041,9 @@
|
||||
@@ -3970,6 +4023,9 @@
|
||||
acpi:LED*:
|
||||
ID_VENDOR_FROM_DATABASE=Long Engineering Design Inc
|
||||
|
||||
@ -245,7 +245,7 @@
|
||||
acpi:LEG*:
|
||||
ID_VENDOR_FROM_DATABASE=Legerity, Inc
|
||||
|
||||
@@ -4003,6 +4059,9 @@
|
||||
@@ -3985,6 +4041,9 @@
|
||||
acpi:LGC*:
|
||||
ID_VENDOR_FROM_DATABASE=Logic Ltd
|
||||
|
||||
@ -255,7 +255,7 @@
|
||||
acpi:LGI*:
|
||||
ID_VENDOR_FROM_DATABASE=Logitech Inc
|
||||
|
||||
@@ -4057,6 +4116,9 @@
|
||||
@@ -4039,6 +4098,9 @@
|
||||
acpi:LND*:
|
||||
ID_VENDOR_FROM_DATABASE=Land Computer Company Ltd
|
||||
|
||||
@ -265,7 +265,7 @@
|
||||
acpi:LNK*:
|
||||
ID_VENDOR_FROM_DATABASE=Link Tech Inc
|
||||
|
||||
@@ -4091,7 +4153,7 @@
|
||||
@@ -4073,7 +4135,7 @@
|
||||
ID_VENDOR_FROM_DATABASE=Design Technology
|
||||
|
||||
acpi:LPL*:
|
||||
@ -274,7 +274,7 @@
|
||||
|
||||
acpi:LSC*:
|
||||
ID_VENDOR_FROM_DATABASE=LifeSize Communications
|
||||
@@ -4267,6 +4329,9 @@
|
||||
@@ -4249,6 +4311,9 @@
|
||||
acpi:MCX*:
|
||||
ID_VENDOR_FROM_DATABASE=Millson Custom Solutions Inc.
|
||||
|
||||
@ -284,7 +284,7 @@
|
||||
acpi:MDA*:
|
||||
ID_VENDOR_FROM_DATABASE=Media4 Inc
|
||||
|
||||
@@ -4507,6 +4572,9 @@
|
||||
@@ -4489,6 +4554,9 @@
|
||||
acpi:MOM*:
|
||||
ID_VENDOR_FROM_DATABASE=Momentum Data Systems
|
||||
|
||||
@ -294,7 +294,7 @@
|
||||
acpi:MOS*:
|
||||
ID_VENDOR_FROM_DATABASE=Moses Corporation
|
||||
|
||||
@@ -4735,6 +4803,9 @@
|
||||
@@ -4717,6 +4785,9 @@
|
||||
acpi:NAL*:
|
||||
ID_VENDOR_FROM_DATABASE=Network Alchemy
|
||||
|
||||
@ -304,7 +304,7 @@
|
||||
acpi:NAT*:
|
||||
ID_VENDOR_FROM_DATABASE=NaturalPoint Inc.
|
||||
|
||||
@@ -5248,6 +5319,9 @@
|
||||
@@ -5227,6 +5298,9 @@
|
||||
acpi:PCX*:
|
||||
ID_VENDOR_FROM_DATABASE=PC Xperten
|
||||
|
||||
@ -314,7 +314,7 @@
|
||||
acpi:PDM*:
|
||||
ID_VENDOR_FROM_DATABASE=Psion Dacom Plc.
|
||||
|
||||
@@ -5311,9 +5385,6 @@
|
||||
@@ -5290,9 +5364,6 @@
|
||||
acpi:PHE*:
|
||||
ID_VENDOR_FROM_DATABASE=Philips Medical Systems Boeblingen GmbH
|
||||
|
||||
@ -324,7 +324,7 @@
|
||||
acpi:PHL*:
|
||||
ID_VENDOR_FROM_DATABASE=Philips Consumer Electronics Company
|
||||
|
||||
@@ -5401,9 +5472,6 @@
|
||||
@@ -5380,9 +5451,6 @@
|
||||
acpi:PNL*:
|
||||
ID_VENDOR_FROM_DATABASE=Panelview, Inc.
|
||||
|
||||
@ -334,7 +334,7 @@
|
||||
acpi:PNR*:
|
||||
ID_VENDOR_FROM_DATABASE=Planar Systems, Inc.
|
||||
|
||||
@@ -5539,15 +5607,9 @@
|
||||
@@ -5518,15 +5586,9 @@
|
||||
acpi:PTS*:
|
||||
ID_VENDOR_FROM_DATABASE=Plain Tree Systems Inc
|
||||
|
||||
@ -350,7 +350,7 @@
|
||||
acpi:PVG*:
|
||||
ID_VENDOR_FROM_DATABASE=Proview Global Co., Ltd
|
||||
|
||||
@@ -5863,9 +5925,6 @@
|
||||
@@ -5842,9 +5904,6 @@
|
||||
acpi:RTI*:
|
||||
ID_VENDOR_FROM_DATABASE=Rancho Tech Inc
|
||||
|
||||
@ -360,7 +360,7 @@
|
||||
acpi:RTL*:
|
||||
ID_VENDOR_FROM_DATABASE=Realtek Semiconductor Company Ltd
|
||||
|
||||
@@ -6034,9 +6093,6 @@
|
||||
@@ -6010,9 +6069,6 @@
|
||||
acpi:SEE*:
|
||||
ID_VENDOR_FROM_DATABASE=SeeColor Corporation
|
||||
|
||||
@ -370,7 +370,7 @@
|
||||
acpi:SEI*:
|
||||
ID_VENDOR_FROM_DATABASE=Seitz & Associates Inc
|
||||
|
||||
@@ -6499,6 +6555,9 @@
|
||||
@@ -6475,6 +6531,9 @@
|
||||
acpi:SVD*:
|
||||
ID_VENDOR_FROM_DATABASE=SVD Computer
|
||||
|
||||
@ -380,7 +380,7 @@
|
||||
acpi:SVI*:
|
||||
ID_VENDOR_FROM_DATABASE=Sun Microsystems
|
||||
|
||||
@@ -6583,6 +6642,9 @@
|
||||
@@ -6559,6 +6618,9 @@
|
||||
acpi:SZM*:
|
||||
ID_VENDOR_FROM_DATABASE=Shenzhen MTC Co., Ltd
|
||||
|
||||
@ -390,7 +390,7 @@
|
||||
acpi:TAA*:
|
||||
ID_VENDOR_FROM_DATABASE=Tandberg
|
||||
|
||||
@@ -6673,6 +6735,9 @@
|
||||
@@ -6649,6 +6711,9 @@
|
||||
acpi:TDG*:
|
||||
ID_VENDOR_FROM_DATABASE=Six15 Technologies
|
||||
|
||||
@ -400,7 +400,7 @@
|
||||
acpi:TDM*:
|
||||
ID_VENDOR_FROM_DATABASE=Tandem Computer Europe Inc
|
||||
|
||||
@@ -6715,6 +6780,9 @@
|
||||
@@ -6691,6 +6756,9 @@
|
||||
acpi:TEV*:
|
||||
ID_VENDOR_FROM_DATABASE=Televés, S.A.
|
||||
|
||||
@ -410,7 +410,7 @@
|
||||
acpi:TEZ*:
|
||||
ID_VENDOR_FROM_DATABASE=Tech Source Inc.
|
||||
|
||||
@@ -6838,9 +6906,6 @@
|
||||
@@ -6814,9 +6882,6 @@
|
||||
acpi:TNC*:
|
||||
ID_VENDOR_FROM_DATABASE=TNC Industrial Company Ltd
|
||||
|
||||
@ -420,7 +420,7 @@
|
||||
acpi:TNM*:
|
||||
ID_VENDOR_FROM_DATABASE=TECNIMAGEN SA
|
||||
|
||||
@@ -7147,14 +7212,14 @@
|
||||
@@ -7123,14 +7188,14 @@
|
||||
acpi:UNC*:
|
||||
ID_VENDOR_FROM_DATABASE=Unisys Corporation
|
||||
|
||||
@ -441,7 +441,7 @@
|
||||
|
||||
acpi:UNI*:
|
||||
ID_VENDOR_FROM_DATABASE=Uniform Industry Corp.
|
||||
@@ -7189,6 +7254,9 @@
|
||||
@@ -7165,6 +7230,9 @@
|
||||
acpi:USA*:
|
||||
ID_VENDOR_FROM_DATABASE=Utimaco Safeware AG
|
||||
|
||||
@ -451,7 +451,7 @@
|
||||
acpi:USD*:
|
||||
ID_VENDOR_FROM_DATABASE=U.S. Digital Corporation
|
||||
|
||||
@@ -7438,9 +7506,6 @@
|
||||
@@ -7414,9 +7482,6 @@
|
||||
acpi:WAL*:
|
||||
ID_VENDOR_FROM_DATABASE=Wave Access
|
||||
|
||||
@ -461,7 +461,7 @@
|
||||
acpi:WAV*:
|
||||
ID_VENDOR_FROM_DATABASE=Wavephore
|
||||
|
||||
@@ -7565,7 +7630,7 @@
|
||||
@@ -7541,7 +7606,7 @@
|
||||
ID_VENDOR_FROM_DATABASE=WyreStorm Technologies LLC
|
||||
|
||||
acpi:WYS*:
|
||||
@ -470,7 +470,7 @@
|
||||
|
||||
acpi:WYT*:
|
||||
ID_VENDOR_FROM_DATABASE=Wooyoung Image & Information Co.,Ltd.
|
||||
@@ -7579,9 +7644,6 @@
|
||||
@@ -7555,9 +7620,6 @@
|
||||
acpi:XDM*:
|
||||
ID_VENDOR_FROM_DATABASE=XDM Ltd.
|
||||
|
||||
@ -480,7 +480,7 @@
|
||||
acpi:XES*:
|
||||
ID_VENDOR_FROM_DATABASE=Extreme Engineering Solutions, Inc.
|
||||
|
||||
@@ -7612,9 +7674,6 @@
|
||||
@@ -7588,9 +7650,6 @@
|
||||
acpi:XNT*:
|
||||
ID_VENDOR_FROM_DATABASE=XN Technologies, Inc.
|
||||
|
||||
@ -490,7 +490,7 @@
|
||||
acpi:XQU*:
|
||||
ID_VENDOR_FROM_DATABASE=SHANGHAI SVA-DAV ELECTRONICS CO., LTD
|
||||
|
||||
@@ -7681,6 +7740,9 @@
|
||||
@@ -7657,6 +7716,9 @@
|
||||
acpi:ZBX*:
|
||||
ID_VENDOR_FROM_DATABASE=Zebax Technologies
|
||||
|
||||
|
||||
@ -107,7 +107,6 @@
|
||||
<tr class="odd"><td>Pensando Systems, Inc.</td><td>PNSO</td><td>03/24/2021</td> </tr>
|
||||
<tr class="even"><td>Dynabook Inc.</td><td>DNBK</td><td>06/01/2021</td> </tr>
|
||||
<tr class="odd"><td>Dioo Microcircuits Co., Ltd. Jiangsu</td><td>DIOO</td><td>06/04/2021</td> </tr>
|
||||
<tr class="even"><td>Purism SPC</td><td>PURI</td><td>06/10/2021</td> </tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</body>
|
||||
|
||||
@ -36305,24 +36305,6 @@ E0B9E5 (base 16) Technicolor Delivery Technologies Belgium NV
|
||||
Torino 10121
|
||||
IT
|
||||
|
||||
8C-4B-14 (hex) Espressif Inc.
|
||||
8C4B14 (base 16) Espressif Inc.
|
||||
Room 204, Building 2, 690 Bibo Rd, Pudong New Area
|
||||
Shanghai Shanghai 201203
|
||||
CN
|
||||
|
||||
D4-E8-53 (hex) Hangzhou Hikvision Digital Technology Co.,Ltd.
|
||||
D4E853 (base 16) Hangzhou Hikvision Digital Technology Co.,Ltd.
|
||||
No.555 Qianmo Road
|
||||
Hangzhou Zhejiang 310052
|
||||
CN
|
||||
|
||||
18-E2-15 (hex) Nokia
|
||||
18E215 (base 16) Nokia
|
||||
600 March Road
|
||||
Kanata Ontario K2K 2E6
|
||||
CA
|
||||
|
||||
9C-FF-C2 (hex) AVI Systems GmbH
|
||||
9CFFC2 (base 16) AVI Systems GmbH
|
||||
Dr. Franz Wilhelmstraße 2A
|
||||
@ -72179,48 +72161,12 @@ E0A258 (base 16) Wanbang Digital Energy Co.,Ltd
|
||||
Gwangju Gwangsan-gu 506-731
|
||||
KR
|
||||
|
||||
74-5C-FA (hex) Shenzhen Shunrui Gaojie Technology Co., Ltd.
|
||||
745CFA (base 16) Shenzhen Shunrui Gaojie Technology Co., Ltd.
|
||||
502,Building A,No.18,Gongye 2nd Road,Dakan Industrial Zone,Dakan community,Xili street,Nanshan District
|
||||
Shenzhen Guangdong 518055
|
||||
CN
|
||||
|
||||
94-A4-08 (hex) Shenzhen Trolink Technology CO, LTD
|
||||
94A408 (base 16) Shenzhen Trolink Technology CO, LTD
|
||||
201 B building 4 shijie, Chashu industry 505 block, Baoan airport Sanwei community, Hangcheng street Baoan area.
|
||||
Shenzhen GuangDong 518000
|
||||
CN
|
||||
|
||||
D0-F8-65 (hex) ITEL MOBILE LIMITED
|
||||
D0F865 (base 16) ITEL MOBILE LIMITED
|
||||
RM B3 & B4 BLOCK B, KO FAI INDUSTRIAL BUILDING NO.7 KO FAI ROAD, YAU TONG, KLN, H.K
|
||||
Hong Kong KOWLOON 999077
|
||||
HK
|
||||
|
||||
38-5C-76 (hex) PLANTRONICS, INC.
|
||||
385C76 (base 16) PLANTRONICS, INC.
|
||||
345 ENCINAL STREET
|
||||
SANTA CRUZ CA 95060
|
||||
US
|
||||
|
||||
7C-C1-77 (hex) INGRAM MICRO SERVICES
|
||||
7CC177 (base 16) INGRAM MICRO SERVICES
|
||||
100 CHEMIN DE BAILLOT
|
||||
MONTAUBAN 82000
|
||||
FR
|
||||
|
||||
78-76-D9 (hex) EXARA Group
|
||||
7876D9 (base 16) EXARA Group
|
||||
Andropova pr. 18 1
|
||||
Moscow 115432
|
||||
RU
|
||||
|
||||
60-8F-A4 (hex) Nokia Solutions and Networks GmbH & Co. KG
|
||||
608FA4 (base 16) Nokia Solutions and Networks GmbH & Co. KG
|
||||
Werinherstrasse 91
|
||||
München Bavaria D-81541
|
||||
DE
|
||||
|
||||
84-80-94 (hex) Meter, Inc.
|
||||
848094 (base 16) Meter, Inc.
|
||||
148 Townsend St
|
||||
@ -74459,6 +74405,12 @@ D07FA0 (base 16) Samsung Electronics Co.,Ltd
|
||||
WEST CHESTER PA 19380
|
||||
US
|
||||
|
||||
78-52-4A (hex) Ensenso GmbH
|
||||
78524A (base 16) Ensenso GmbH
|
||||
Gundelfingerstr. 2
|
||||
Freiburg 79108
|
||||
DE
|
||||
|
||||
E4-FC-82 (hex) Juniper Networks
|
||||
E4FC82 (base 16) Juniper Networks
|
||||
1133 Innovation Way
|
||||
@ -108341,42 +108293,6 @@ EC937D (base 16) Technicolor CH USA Inc.
|
||||
Edegem - Belgium B-2650
|
||||
BE
|
||||
|
||||
C4-6E-33 (hex) Zhong Ge Smart Technology Co., Ltd.
|
||||
C46E33 (base 16) Zhong Ge Smart Technology Co., Ltd.
|
||||
Zhong Ge Smart Technology Co., Ltd
|
||||
Shanghai 201199
|
||||
CN
|
||||
|
||||
00-CE-30 (hex) Express LUCK Industrial Ltd.
|
||||
00CE30 (base 16) Express LUCK Industrial Ltd.
|
||||
No. 88, Baotongnan Road, Xikeng, Yuanshan Street, Longgang District
|
||||
Shenzhen Guangdong 518100
|
||||
CN
|
||||
|
||||
74-32-C2 (hex) KYOLIS
|
||||
7432C2 (base 16) KYOLIS
|
||||
2 RUE DE LA RENAISSANCE
|
||||
ANTONY 92160
|
||||
FR
|
||||
|
||||
5C-83-82 (hex) Nokia
|
||||
5C8382 (base 16) Nokia
|
||||
600 March Road
|
||||
Kanata Ontario K2K 2E6
|
||||
CA
|
||||
|
||||
28-36-13 (hex) IEEE Registration Authority
|
||||
283613 (base 16) IEEE Registration Authority
|
||||
445 Hoes Lane
|
||||
Piscataway NJ 08554
|
||||
US
|
||||
|
||||
78-52-4A (hex) Optonic GmbH
|
||||
78524A (base 16) Optonic GmbH
|
||||
Zollhallenstr. 11
|
||||
Freiburg 79106
|
||||
DE
|
||||
|
||||
F8-D0-27 (hex) Seiko Epson Corporation
|
||||
F8D027 (base 16) Seiko Epson Corporation
|
||||
2070 Kotobuki Koaka
|
||||
@ -144398,6 +144314,12 @@ A4B1E9 (base 16) Technicolor Delivery Technologies Belgium NV
|
||||
Edegem - Belgium B-2650
|
||||
BE
|
||||
|
||||
0C-E5-A3 (hex) SharkNinja
|
||||
0CE5A3 (base 16) SharkNinja
|
||||
85 Cude Ln
|
||||
Madison TN 37115
|
||||
US
|
||||
|
||||
30-56-96 (hex) Infinix mobility limited
|
||||
305696 (base 16) Infinix mobility limited
|
||||
RMS 05-15, 13A/F SOUTH TOWER WORLD FINANCE CTR HARBOUR CITY 17 CANTON RD TST KLN HONG KONG
|
||||
@ -144410,39 +144332,6 @@ A4B1E9 (base 16) Technicolor Delivery Technologies Belgium NV
|
||||
Chongqing China 401120
|
||||
CN
|
||||
|
||||
B0-E9-FE (hex) Woan Technology (Shenzhen) Co., Ltd.
|
||||
B0E9FE (base 16) Woan Technology (Shenzhen) Co., Ltd.
|
||||
1-2F, Building B4, Yintian Industrial Zone, Yantian Community, Xixiang Street, Bao'an District, Shenzhen, Guangdong, P.R.China
|
||||
Shenzhen Guangdong 518102
|
||||
CN
|
||||
|
||||
00-BD-3E (hex) Vizio, Inc
|
||||
00BD3E (base 16) Vizio, Inc
|
||||
39 Tesla
|
||||
Irvine CA 92618
|
||||
US
|
||||
|
||||
C8-96-65 (hex) Microsoft Corporation
|
||||
C89665 (base 16) Microsoft Corporation
|
||||
One Microsoft Way
|
||||
REDMOND WA 98052
|
||||
US
|
||||
|
||||
0C-E5-A3 (hex) SharkNinja
|
||||
0CE5A3 (base 16) SharkNinja
|
||||
85 Cude Ln
|
||||
Madison TN 37115
|
||||
US
|
||||
|
||||
6C-91-06 (hex) Private
|
||||
6C9106 (base 16) Private
|
||||
|
||||
40-91-51 (hex) Espressif Inc.
|
||||
409151 (base 16) Espressif Inc.
|
||||
Room 204, Building 2, 690 Bibo Rd, Pudong New Area
|
||||
Shanghai Shanghai 201203
|
||||
CN
|
||||
|
||||
7C-8A-E1 (hex) COMPAL INFORMATION (KUNSHAN) CO., LTD.
|
||||
7C8AE1 (base 16) COMPAL INFORMATION (KUNSHAN) CO., LTD.
|
||||
NO. 25, THE 3RD Street KUNSHAN EXPORT PROCESSING ZONE
|
||||
@ -175595,6 +175484,12 @@ EC6C9F (base 16) Chengdu Volans Technology CO.,LTD
|
||||
UNITED KINGDOM
|
||||
GB
|
||||
|
||||
08-00-42 (hex) JAPAN MACNICS CORP.
|
||||
080042 (base 16) JAPAN MACNICS CORP.
|
||||
|
||||
|
||||
JP
|
||||
|
||||
08-00-66 (hex) AGFA CORPORATION
|
||||
080066 (base 16) AGFA CORPORATION
|
||||
200 BALLARDVALE STREET
|
||||
@ -180356,44 +180251,8 @@ A031DB (base 16) HUAWEI TECHNOLOGIES CO.,LTD
|
||||
Shinagawa-ku 141-0032
|
||||
JP
|
||||
|
||||
08-00-42 (hex) MACNICA, Inc.
|
||||
080042 (base 16) MACNICA, Inc.
|
||||
1-6-3 Shin-Yokohama
|
||||
Kohoku-ku Yokohama 222-8561
|
||||
JP
|
||||
|
||||
54-6F-71 (hex) uAvionix Corporation
|
||||
546F71 (base 16) uAvionix Corporation
|
||||
300 Pine Needle Lane
|
||||
Bigfork MT 59911
|
||||
US
|
||||
|
||||
54-EF-33 (hex) SHENZHEN BILIAN ELECTRONIC CO.,LTD
|
||||
54EF33 (base 16) SHENZHEN BILIAN ELECTRONIC CO.,LTD
|
||||
NO.268? Fuqian Rd, Jutang community, Guanlan Town, Longhua New district
|
||||
shenzhen guangdong 518000
|
||||
CN
|
||||
|
||||
14-19-73 (hex) Beijing Yunyi Times Technology Co.,Ltd
|
||||
141973 (base 16) Beijing Yunyi Times Technology Co.,Ltd
|
||||
Room 4046, Building 1, Yard 10, Beiqijia Hongfu, Changping District
|
||||
Beijing 102209
|
||||
CN
|
||||
|
||||
5C-75-C6 (hex) China Mobile Group Device Co.,Ltd.
|
||||
5C75C6 (base 16) China Mobile Group Device Co.,Ltd.
|
||||
32 Xuanwumen West Street,Xicheng District
|
||||
Beijing 100053
|
||||
CN
|
||||
|
||||
44-48-B9 (hex) MitraStar Technology Corp.
|
||||
4448B9 (base 16) MitraStar Technology Corp.
|
||||
No. 6, Innovation Road II,
|
||||
Hsinchu 300
|
||||
TW
|
||||
|
||||
A4-E1-1A (hex) Juniper Networks
|
||||
A4E11A (base 16) Juniper Networks
|
||||
1133 Innovation Way
|
||||
Sunnyvale CA 94089
|
||||
US
|
||||
|
||||
@ -1580,6 +1580,12 @@ E00000-EFFFFF (base 16) Domotz Ltd
|
||||
Gilching 82205
|
||||
DE
|
||||
|
||||
04-71-4B (hex) uAvionix Corporation
|
||||
100000-1FFFFF (base 16) uAvionix Corporation
|
||||
380 Portage Ave.
|
||||
Palo Alto CA 94306
|
||||
US
|
||||
|
||||
04-71-4B (hex) Energport Inc
|
||||
800000-8FFFFF (base 16) Energport Inc
|
||||
48660 Kato Road
|
||||
@ -4424,18 +4430,18 @@ C8-F5-D6 (hex) EVOTOR LLC
|
||||
Moscow 119021
|
||||
RU
|
||||
|
||||
C0-FB-F9 (hex) IVT corporation
|
||||
600000-6FFFFF (base 16) IVT corporation
|
||||
5/F, Zhongguancun Fazhan Building, No 12, Shangdi Xinxi Road, Haidian District, Beijing, 100085, P.R. CHINA
|
||||
Beijing 100085
|
||||
CN
|
||||
|
||||
C0-FB-F9 (hex) Dongguan Chuan OptoElectronics Limited
|
||||
200000-2FFFFF (base 16) Dongguan Chuan OptoElectronics Limited
|
||||
No.43 Songshui Road,Songmushan Village, Dalang Town
|
||||
Dongguan Guangdong 523795
|
||||
CN
|
||||
|
||||
C0-FB-F9 (hex) IVT corporation
|
||||
600000-6FFFFF (base 16) IVT corporation
|
||||
5/F, Zhongguancun Fazhan Building, No 12, Shangdi Xinxi Road, Haidian District, Beijing, 100085, P.R. CHINA
|
||||
Beijing 100085
|
||||
CN
|
||||
|
||||
18-74-E2 (hex) HANGZHOU ZHOUJU ELECTRONIC TECHNOLOGICAL CO.,LTD
|
||||
500000-5FFFFF (base 16) HANGZHOU ZHOUJU ELECTRONIC TECHNOLOGICAL CO.,LTD
|
||||
Floor 6,A Building, Xianxing Road NO.32,Xianlin Town,Yuhang District
|
||||
@ -4448,12 +4454,6 @@ B00000-BFFFFF (base 16) Shenzhen Jooan Technology Co., Ltd
|
||||
Shenzhen Guangdong 518000
|
||||
CN
|
||||
|
||||
18-74-E2 (hex) Beijing Jrunion Technology Co., Ltd.
|
||||
600000-6FFFFF (base 16) Beijing Jrunion Technology Co., Ltd.
|
||||
Room 01, 2nd Floor, Building 8, Yuquanhuigu, No. 3, Minzhuang Road, Haidian District
|
||||
Beijing Beijing 100195
|
||||
CN
|
||||
|
||||
18-74-E2 (hex) SHENZHEN AORO COMMUNICATION EQUIPMENT CO., LTD
|
||||
900000-9FFFFF (base 16) SHENZHEN AORO COMMUNICATION EQUIPMENT CO., LTD
|
||||
ROOM 302, 3RD FLOOR BUILDING A9, NO.6 YUANCHUANGYUAN,FUHUA ROAD, JUTANG COMMUNITY, FUCHENG STREET, LONGHUA DISTRICT
|
||||
@ -4466,6 +4466,12 @@ B00000-BFFFFF (base 16) Shenzhen Jooan Technology Co., Ltd
|
||||
Shenzhen Guangdong?China 518040
|
||||
CN
|
||||
|
||||
18-74-E2 (hex) Beijing Jrunion Technology Co., Ltd.
|
||||
600000-6FFFFF (base 16) Beijing Jrunion Technology Co., Ltd.
|
||||
Room 01, 2nd Floor, Building 8, Yuquanhuigu, No. 3, Minzhuang Road, Haidian District
|
||||
Beijing Beijing 100195
|
||||
CN
|
||||
|
||||
FC-CD-2F (hex) QCTEK CO.,LTD.
|
||||
500000-5FFFFF (base 16) QCTEK CO.,LTD.
|
||||
6F-1., No.496, Bannan Rd., Zhonghe Dist.,
|
||||
@ -4484,6 +4490,12 @@ E8-78-29 (hex) JVISMall CO.,LTD
|
||||
Seoul 04058
|
||||
KR
|
||||
|
||||
78-13-05 (hex) Shanghai Siminics Optoelectronic Technology Co., Ltd
|
||||
D00000-DFFFFF (base 16) Shanghai Siminics Optoelectronic Technology Co., Ltd
|
||||
Room 9, Building 15, Huatai Center Jinyun Rd
|
||||
Shanghai 201803
|
||||
CN
|
||||
|
||||
E8-78-29 (hex) Annapurna labs
|
||||
400000-4FFFFF (base 16) Annapurna labs
|
||||
Matam Scientific Industries Center, Building 8.2
|
||||
@ -4502,11 +4514,11 @@ C00000-CFFFFF (base 16) Brigates Microelectronics Co., Ltd.
|
||||
Kunshan Jiangsu 215300
|
||||
CN
|
||||
|
||||
78-13-05 (hex) Shanghai Siminics Optoelectronic Technology Co., Ltd
|
||||
D00000-DFFFFF (base 16) Shanghai Siminics Optoelectronic Technology Co., Ltd
|
||||
Room 9, Building 15, Huatai Center Jinyun Rd
|
||||
Shanghai 201803
|
||||
CN
|
||||
98-6D-35 (hex) Advanced Diagnostics LTD
|
||||
900000-9FFFFF (base 16) Advanced Diagnostics LTD
|
||||
Diagnostics House, Eastboro Fields, Hemdale
|
||||
Nuneaton Warwickshire CV116GL
|
||||
GB
|
||||
|
||||
A8-5B-36 (hex) Shenzhen Dandelion Intelligent Cloud Technology Development Co., LTD
|
||||
300000-3FFFFF (base 16) Shenzhen Dandelion Intelligent Cloud Technology Development Co., LTD
|
||||
@ -4514,34 +4526,16 @@ A8-5B-36 (hex) Shenzhen Dandelion Intelligent Cloud Technology Development Co
|
||||
Shenzhen Guangdong 518100
|
||||
CN
|
||||
|
||||
98-6D-35 (hex) Advanced Diagnostics LTD
|
||||
900000-9FFFFF (base 16) Advanced Diagnostics LTD
|
||||
Diagnostics House, Eastboro Fields, Hemdale
|
||||
Nuneaton Warwickshire CV116GL
|
||||
GB
|
||||
|
||||
78-13-05 (hex) microtec Sicherheitstechnik GmbH
|
||||
300000-3FFFFF (base 16) microtec Sicherheitstechnik GmbH
|
||||
Auf der Langwies 20
|
||||
Hünstetten 65510
|
||||
DE
|
||||
|
||||
A8-5B-36 (hex) ATER Technologies Co Ltd
|
||||
C00000-CFFFFF (base 16) ATER Technologies Co Ltd
|
||||
Floor 5,Building 1,HongYe Industry Park,Baoan district
|
||||
Shenzhen Guangdong 518100
|
||||
CN
|
||||
|
||||
A8-5B-36 (hex) Loomanet Inc.
|
||||
200000-2FFFFF (base 16) Loomanet Inc.
|
||||
900 Lafayette St. Suite 704
|
||||
Santa Clara CA 95050
|
||||
US
|
||||
|
||||
F0-2A-2B (hex) Comexio GmbH
|
||||
C00000-CFFFFF (base 16) Comexio GmbH
|
||||
Eisenberger Straße 56a
|
||||
Kerzenheim 67304
|
||||
78-13-05 (hex) microtec Sicherheitstechnik GmbH
|
||||
300000-3FFFFF (base 16) microtec Sicherheitstechnik GmbH
|
||||
Auf der Langwies 20
|
||||
Hünstetten 65510
|
||||
DE
|
||||
|
||||
A8-5B-36 (hex) JUGANU LTD
|
||||
@ -4556,23 +4550,17 @@ F0-2A-2B (hex) Frigotel SRL
|
||||
San Donà di Piave 30027
|
||||
IT
|
||||
|
||||
44-A9-2C (hex) ZHEJIANG HISING TECHNOLOGY CO.,LTD
|
||||
000000-0FFFFF (base 16) ZHEJIANG HISING TECHNOLOGY CO.,LTD
|
||||
Room 201 and 202,Building 5,328 Pingjiang Road,Yuecheng District,Shaoxing
|
||||
Shaoxing Zhejiang 312000
|
||||
CN
|
||||
A8-5B-36 (hex) Loomanet Inc.
|
||||
200000-2FFFFF (base 16) Loomanet Inc.
|
||||
900 Lafayette St. Suite 704
|
||||
Santa Clara CA 95050
|
||||
US
|
||||
|
||||
44-A9-2C (hex) Anhui Zhongxin Electronic Technology Co., Ltd.
|
||||
200000-2FFFFF (base 16) Anhui Zhongxin Electronic Technology Co., Ltd.
|
||||
South Head, No.11, Building 2, Huayuan Commercial Building,6km, Changqing Township, Yuhui District, Bengbu City,Anhui Province
|
||||
Bengbu Anhui 233010
|
||||
CN
|
||||
|
||||
44-A9-2C (hex) Ningbo joyson new energy automotive technology Co.,Ltd
|
||||
600000-6FFFFF (base 16) Ningbo joyson new energy automotive technology Co.,Ltd
|
||||
No.1266 Juxian Road, Hi-Tech Park
|
||||
Ningbo Zhejiang 315000
|
||||
CN
|
||||
F0-2A-2B (hex) Comexio GmbH
|
||||
C00000-CFFFFF (base 16) Comexio GmbH
|
||||
Eisenberger Straße 56a
|
||||
Kerzenheim 67304
|
||||
DE
|
||||
|
||||
44-A9-2C (hex) Amethystum Storage Technology Co., Ltd
|
||||
B00000-BFFFFF (base 16) Amethystum Storage Technology Co., Ltd
|
||||
@ -4586,6 +4574,24 @@ B00000-BFFFFF (base 16) Amethystum Storage Technology Co., Ltd
|
||||
Rheine 48429
|
||||
DE
|
||||
|
||||
44-A9-2C (hex) Anhui Zhongxin Electronic Technology Co., Ltd.
|
||||
200000-2FFFFF (base 16) Anhui Zhongxin Electronic Technology Co., Ltd.
|
||||
South Head, No.11, Building 2, Huayuan Commercial Building,6km, Changqing Township, Yuhui District, Bengbu City,Anhui Province
|
||||
Bengbu Anhui 233010
|
||||
CN
|
||||
|
||||
44-A9-2C (hex) ZHEJIANG HISING TECHNOLOGY CO.,LTD
|
||||
000000-0FFFFF (base 16) ZHEJIANG HISING TECHNOLOGY CO.,LTD
|
||||
Room 201 and 202,Building 5,328 Pingjiang Road,Yuecheng District,Shaoxing
|
||||
Shaoxing Zhejiang 312000
|
||||
CN
|
||||
|
||||
44-A9-2C (hex) Ningbo joyson new energy automotive technology Co.,Ltd
|
||||
600000-6FFFFF (base 16) Ningbo joyson new energy automotive technology Co.,Ltd
|
||||
No.1266 Juxian Road, Hi-Tech Park
|
||||
Ningbo Zhejiang 315000
|
||||
CN
|
||||
|
||||
58-48-49 (hex) X-speed lnformation Technology Co.,Ltd
|
||||
200000-2FFFFF (base 16) X-speed lnformation Technology Co.,Ltd
|
||||
th Floor,Building 2,Xinyu Electronic Industrial Park,No.69, Zhaishan,Houshan Village, High-tech Zone,Fuzhou,Fujian ,China
|
||||
@ -4598,18 +4604,6 @@ B00000-BFFFFF (base 16) Amethystum Storage Technology Co., Ltd
|
||||
Walnut CA 91789
|
||||
US
|
||||
|
||||
64-33-B5 (hex) Geksacon
|
||||
C00000-CFFFFF (base 16) Geksacon
|
||||
revolutionary street
|
||||
Ufa Republic of Bashkortostan 450005
|
||||
RU
|
||||
|
||||
04-71-4B (hex) uAvionix Corporation
|
||||
100000-1FFFFF (base 16) uAvionix Corporation
|
||||
300 Pine Needle Lane
|
||||
Bigfork MT 59911
|
||||
US
|
||||
|
||||
4C-4B-F9 (hex) Shenzhen dingsheng technology co., LTD
|
||||
400000-4FFFFF (base 16) Shenzhen dingsheng technology co., LTD
|
||||
Floor 3, building 5, kaijeda industrial zone, no.97, huaxing road, langkou community, dalang street, longhua district
|
||||
@ -8720,6 +8714,12 @@ D0-9F-D9 (hex) Raymax Technology Ltd.
|
||||
Hangzhou China 310012
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) Queclink Wireless Solutions Co., Ltd.
|
||||
800000-8FFFFF (base 16) Queclink Wireless Solutions Co., Ltd.
|
||||
No.30, Lane 500, Xinlong Road, Minhang District
|
||||
Shanghai 201101
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) Fujian Newland Auto-ID Tech. Co,.Ltd.
|
||||
C00000-CFFFFF (base 16) Fujian Newland Auto-ID Tech. Co,.Ltd.
|
||||
Newland Science & Technology Park, No.1 Rujiang West Rd,Mawei,Fuzhou, P.R.China
|
||||
@ -8732,12 +8732,6 @@ D0-9F-D9 (hex) Lemei Intelligent IOT (Shenzhen) Co., Ltd
|
||||
Shenzhen Guangdong 518000
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) Queclink Wireless Solutions Co., Ltd.
|
||||
800000-8FFFFF (base 16) Queclink Wireless Solutions Co., Ltd.
|
||||
No.30, Lane 500, Xinlong Road, Minhang District
|
||||
Shanghai 201101
|
||||
CN
|
||||
|
||||
18-74-E2 (hex) Kano Computing Limited
|
||||
800000-8FFFFF (base 16) Kano Computing Limited
|
||||
Unit 12.1 - 12.2, 11-29 Fashion Street
|
||||
@ -8750,6 +8744,12 @@ D0-9F-D9 (hex) Queclink Wireless Solutions Co., Ltd.
|
||||
Columbia MO 65201
|
||||
US
|
||||
|
||||
A8-5B-36 (hex) Luoxian (Guandong) Technology Co., Ltd
|
||||
400000-4FFFFF (base 16) Luoxian (Guandong) Technology Co., Ltd
|
||||
4th floor,building 4,European Industrial Park,60 Longbao West Road,Zhangcha Town
|
||||
FoShan Guandong 528051
|
||||
CN
|
||||
|
||||
A8-5B-36 (hex) TAIDEN INDUSTRIAL CO.,LTD
|
||||
A00000-AFFFFF (base 16) TAIDEN INDUSTRIAL CO.,LTD
|
||||
6/F, Block B, Future Plaza, 6060 Qiaoxiang Rd, Nanshan District
|
||||
@ -8762,12 +8762,6 @@ F0-2A-2B (hex) ZiGong Pengcheng Technology Co.,Ltd
|
||||
ZiGong SiChuan 643221
|
||||
CN
|
||||
|
||||
A8-5B-36 (hex) Luoxian (Guandong) Technology Co., Ltd
|
||||
400000-4FFFFF (base 16) Luoxian (Guandong) Technology Co., Ltd
|
||||
4th floor,building 4,European Industrial Park,60 Longbao West Road,Zhangcha Town
|
||||
FoShan Guandong 528051
|
||||
CN
|
||||
|
||||
A8-5B-36 (hex) Avista Edge
|
||||
900000-9FFFFF (base 16) Avista Edge
|
||||
12 N Sheridan St
|
||||
@ -8792,29 +8786,17 @@ F0-2A-2B (hex) Tobi Tribe Inc.
|
||||
Shenzhen 518126
|
||||
CN
|
||||
|
||||
58-48-49 (hex) Shandong Aotai Electric Co., LTD.
|
||||
700000-7FFFFF (base 16) Shandong Aotai Electric Co., LTD.
|
||||
282 Bole Avenue, High-tech Development Zone Shandong P.R. China
|
||||
Jinan Shandong 250101
|
||||
CN
|
||||
|
||||
58-48-49 (hex) Daatrics LTD
|
||||
B00000-BFFFFF (base 16) Daatrics LTD
|
||||
4th Floor, 86-90 Paul Street
|
||||
LONDON EC2A 4NE
|
||||
GB
|
||||
|
||||
64-33-B5 (hex) Duomondi International Development Co., Ltd.
|
||||
000000-0FFFFF (base 16) Duomondi International Development Co., Ltd.
|
||||
Unit D 19/F Roxy Industry Center 59-66 Tai Lin Pai
|
||||
Kwai Chung NT 999077
|
||||
HK
|
||||
|
||||
64-33-B5 (hex) University of Texas at Austin
|
||||
E00000-EFFFFF (base 16) University of Texas at Austin
|
||||
1 University Station C3800
|
||||
Austin TX 78713-7407
|
||||
US
|
||||
58-48-49 (hex) Shandong Aotai Electric Co., LTD.
|
||||
700000-7FFFFF (base 16) Shandong Aotai Electric Co., LTD.
|
||||
282 Bole Avenue, High-tech Development Zone Shandong P.R. China
|
||||
Jinan Shandong 250101
|
||||
CN
|
||||
|
||||
20-85-93 (hex) UNILUMIN GROUP CO.,LTD
|
||||
300000-3FFFFF (base 16) UNILUMIN GROUP CO.,LTD
|
||||
@ -13091,12 +13073,6 @@ C0-FB-F9 (hex) SHENZHEN HEQIANG ELECTRONICS LIMITED
|
||||
SHENZHEN GUANGDONG 518129
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) elecgator bvba
|
||||
100000-1FFFFF (base 16) elecgator bvba
|
||||
Heerbaan, 308
|
||||
Beringen Limburg 3582
|
||||
BE
|
||||
|
||||
D0-9F-D9 (hex) Carbon Mobile GmbH
|
||||
500000-5FFFFF (base 16) Carbon Mobile GmbH
|
||||
Winterfeldtstr. 21
|
||||
@ -13109,6 +13085,12 @@ D0-9F-D9 (hex) ENTTEC Pty Ltd.
|
||||
ringwood vic 3134
|
||||
AU
|
||||
|
||||
D0-9F-D9 (hex) elecgator bvba
|
||||
100000-1FFFFF (base 16) elecgator bvba
|
||||
Heerbaan, 308
|
||||
Beringen Limburg 3582
|
||||
BE
|
||||
|
||||
D0-9F-D9 (hex) Minibems Ltd
|
||||
E00000-EFFFFF (base 16) Minibems Ltd
|
||||
Oxford Point, 19 Oxford Road
|
||||
@ -13145,17 +13127,11 @@ E8-78-29 (hex) AXING AG
|
||||
Ramsen 8262
|
||||
CH
|
||||
|
||||
78-13-05 (hex) Leonardo SpA - Montevarchi
|
||||
A00000-AFFFFF (base 16) Leonardo SpA - Montevarchi
|
||||
via DELLA LAMA, 13
|
||||
Montevarchi AREZZO 52025
|
||||
IT
|
||||
|
||||
78-13-05 (hex) InnoSenT
|
||||
000000-0FFFFF (base 16) InnoSenT
|
||||
Am Roedertor 30
|
||||
Donnersdorf Bavaria 97499
|
||||
DE
|
||||
78-13-05 (hex) Jiangxi Winsky Intelligence Technology Co., Ltd
|
||||
400000-4FFFFF (base 16) Jiangxi Winsky Intelligence Technology Co., Ltd
|
||||
Zhihang road Wutong Ave. Hight tech area Jingdezhen City Jiangxi province PRC.
|
||||
Jingdezhen Jiangxi 333000
|
||||
CN
|
||||
|
||||
78-13-05 (hex) Global Media Streaming LLC
|
||||
100000-1FFFFF (base 16) Global Media Streaming LLC
|
||||
@ -13169,11 +13145,17 @@ A00000-AFFFFF (base 16) Leonardo SpA - Montevarchi
|
||||
Pskov 180017
|
||||
RU
|
||||
|
||||
78-13-05 (hex) Jiangxi Winsky Intelligence Technology Co., Ltd
|
||||
400000-4FFFFF (base 16) Jiangxi Winsky Intelligence Technology Co., Ltd
|
||||
Zhihang road Wutong Ave. Hight tech area Jingdezhen City Jiangxi province PRC.
|
||||
Jingdezhen Jiangxi 333000
|
||||
CN
|
||||
78-13-05 (hex) Leonardo SpA - Montevarchi
|
||||
A00000-AFFFFF (base 16) Leonardo SpA - Montevarchi
|
||||
via DELLA LAMA, 13
|
||||
Montevarchi AREZZO 52025
|
||||
IT
|
||||
|
||||
78-13-05 (hex) InnoSenT
|
||||
000000-0FFFFF (base 16) InnoSenT
|
||||
Am Roedertor 30
|
||||
Donnersdorf Bavaria 97499
|
||||
DE
|
||||
|
||||
A8-5B-36 (hex) ShangHai SnowLake Technology Co.,LTD.
|
||||
800000-8FFFFF (base 16) ShangHai SnowLake Technology Co.,LTD.
|
||||
@ -13181,24 +13163,12 @@ A8-5B-36 (hex) ShangHai SnowLake Technology Co.,LTD.
|
||||
SHANGHAI SHANGHAI 200050
|
||||
CN
|
||||
|
||||
F0-2A-2B (hex) Navigil Ltd
|
||||
A00000-AFFFFF (base 16) Navigil Ltd
|
||||
Karaportti 5
|
||||
Espoo Uusimaa 02610
|
||||
FI
|
||||
|
||||
A8-5B-36 (hex) Lampyris Plant LLC
|
||||
B00000-BFFFFF (base 16) Lampyris Plant LLC
|
||||
st.Arbuzova, 12, office. 201
|
||||
Novosibirsk 630117
|
||||
RU
|
||||
|
||||
F0-2A-2B (hex) Agile Sports Technologies, dba Hudl
|
||||
500000-5FFFFF (base 16) Agile Sports Technologies, dba Hudl
|
||||
600 P St, Suite 400
|
||||
Lincoln NE 68508
|
||||
US
|
||||
|
||||
F0-2A-2B (hex) Shanghai Armour Technology Co., Ltd.
|
||||
200000-2FFFFF (base 16) Shanghai Armour Technology Co., Ltd.
|
||||
Room 411, building 10, 471 Guiping Road, Xuhui District
|
||||
@ -13211,12 +13181,24 @@ B00000-BFFFFF (base 16) EL.MO. spa
|
||||
Campodarsego Padua I35011
|
||||
IT
|
||||
|
||||
F0-2A-2B (hex) Agile Sports Technologies, dba Hudl
|
||||
500000-5FFFFF (base 16) Agile Sports Technologies, dba Hudl
|
||||
600 P St, Suite 400
|
||||
Lincoln NE 68508
|
||||
US
|
||||
|
||||
F0-2A-2B (hex) Onclave Networks
|
||||
400000-4FFFFF (base 16) Onclave Networks
|
||||
7950 Jones Branch Drive #805
|
||||
McLean VA 22102
|
||||
US
|
||||
|
||||
F0-2A-2B (hex) Navigil Ltd
|
||||
A00000-AFFFFF (base 16) Navigil Ltd
|
||||
Karaportti 5
|
||||
Espoo Uusimaa 02610
|
||||
FI
|
||||
|
||||
F0-2A-2B (hex) Definitely Win Corp.,Ltd.
|
||||
D00000-DFFFFF (base 16) Definitely Win Corp.,Ltd.
|
||||
2F., No. 48, Da'an St., Xizhi Dist.,
|
||||
@ -13253,12 +13235,6 @@ C00000-CFFFFF (base 16) Cubitech
|
||||
Shenzhen 518000
|
||||
CN
|
||||
|
||||
58-48-49 (hex) Hubei Shudi Communication Technology Co., Ltd
|
||||
500000-5FFFFF (base 16) Hubei Shudi Communication Technology Co., Ltd
|
||||
11 Lane 2, shuichan street, Huangmei County
|
||||
Huanggang Hubei 435500
|
||||
CN
|
||||
|
||||
44-A9-2C (hex) Annapurna labs
|
||||
E00000-EFFFFF (base 16) Annapurna labs
|
||||
Matam Scientific Industries Center, Building 8.2
|
||||
@ -13271,18 +13247,18 @@ E00000-EFFFFF (base 16) Annapurna labs
|
||||
Littleton CO 80127
|
||||
US
|
||||
|
||||
58-48-49 (hex) Hubei Shudi Communication Technology Co., Ltd
|
||||
500000-5FFFFF (base 16) Hubei Shudi Communication Technology Co., Ltd
|
||||
11 Lane 2, shuichan street, Huangmei County
|
||||
Huanggang Hubei 435500
|
||||
CN
|
||||
|
||||
58-48-49 (hex) Viper Design LLC
|
||||
300000-3FFFFF (base 16) Viper Design LLC
|
||||
154 Cude Ln
|
||||
Madison TN 37115
|
||||
US
|
||||
|
||||
58-48-49 (hex) SKAARHOJ ApS
|
||||
100000-1FFFFF (base 16) SKAARHOJ ApS
|
||||
Rosenkaeret 11C
|
||||
Soeborg 2860
|
||||
DK
|
||||
|
||||
64-33-B5 (hex) Hometek Eletronics Co., Ltd
|
||||
A00000-AFFFFF (base 16) Hometek Eletronics Co., Ltd
|
||||
7F-2 No. 16,Lane 609, Section 5 Chung Hsin Rd. Sanchong District. New Taipei City Taiwan R.O.C.
|
||||
@ -13301,11 +13277,11 @@ E00000-EFFFFF (base 16) Avadesign Technology Co. Ltd.
|
||||
Beijing 100000
|
||||
CN
|
||||
|
||||
64-33-B5 (hex) Huaqin Telecom Technology Co.,Ltd.
|
||||
100000-1FFFFF (base 16) Huaqin Telecom Technology Co.,Ltd.
|
||||
Building 1,No.399, Keyuan Road, Pudong, Shanghai China
|
||||
Shanghai 200120
|
||||
CN
|
||||
58-48-49 (hex) SKAARHOJ ApS
|
||||
100000-1FFFFF (base 16) SKAARHOJ ApS
|
||||
Rosenkaeret 11C
|
||||
Soeborg 2860
|
||||
DK
|
||||
|
||||
64-33-B5 (hex) Wingtech Mobile Communications Co.,Ltd
|
||||
300000-3FFFFF (base 16) Wingtech Mobile Communications Co.,Ltd
|
||||
@ -13313,11 +13289,11 @@ E00000-EFFFFF (base 16) Avadesign Technology Co. Ltd.
|
||||
Jiaxing Zhejiang 314001
|
||||
CN
|
||||
|
||||
64-33-B5 (hex) IIYAMA CORPORATION
|
||||
D00000-DFFFFF (base 16) IIYAMA CORPORATION
|
||||
Wijkermeerstraat 8
|
||||
Hoofddorp 2131HA
|
||||
NL
|
||||
64-33-B5 (hex) Huaqin Telecom Technology Co.,Ltd.
|
||||
100000-1FFFFF (base 16) Huaqin Telecom Technology Co.,Ltd.
|
||||
Building 1,No.399, Keyuan Road, Pudong, Shanghai China
|
||||
Shanghai 200120
|
||||
CN
|
||||
|
||||
4C-4B-F9 (hex) Shandong Linkotech Electronic Co., Ltd.
|
||||
600000-6FFFFF (base 16) Shandong Linkotech Electronic Co., Ltd.
|
||||
@ -17495,6 +17471,12 @@ D00000-DFFFFF (base 16) Origins Technology Limited
|
||||
Beijing 100027
|
||||
CN
|
||||
|
||||
C8-F5-D6 (hex) Shanghai Mo xiang Network Technology CO.,Ltd
|
||||
900000-9FFFFF (base 16) Shanghai Mo xiang Network Technology CO.,Ltd
|
||||
Room#418-421, ShaHeXiLi, 2-2 XiLi North Road, LiCheng Community, Xili Street, NanShan District
|
||||
Shenzhen Guangdong 518071
|
||||
CN
|
||||
|
||||
C8-F5-D6 (hex) United Barcode Systems
|
||||
B00000-BFFFFF (base 16) United Barcode Systems
|
||||
Av. Progres 56, Pol. Ind. els Garrofers
|
||||
@ -17507,12 +17489,6 @@ C00000-CFFFFF (base 16) Eltako GmbH
|
||||
Fellbach BW 70736
|
||||
DE
|
||||
|
||||
C8-F5-D6 (hex) Shanghai Mo xiang Network Technology CO.,Ltd
|
||||
900000-9FFFFF (base 16) Shanghai Mo xiang Network Technology CO.,Ltd
|
||||
Room#418-421, ShaHeXiLi, 2-2 XiLi North Road, LiCheng Community, Xili Street, NanShan District
|
||||
Shenzhen Guangdong 518071
|
||||
CN
|
||||
|
||||
C0-FB-F9 (hex) SHENZHEN ELSKY TECHNOLOGY CO., LTD
|
||||
C00000-CFFFFF (base 16) SHENZHEN ELSKY TECHNOLOGY CO., LTD
|
||||
1F BUILDING 2# ASIA INDUSTIAL PARK BANTIAN STREET LONGGANG DISTRICT
|
||||
@ -17525,6 +17501,12 @@ D00000-DFFFFF (base 16) Dropbeats Technology Co., Ltd.
|
||||
Shanghai Shanghai 201203
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) Elevoc Technology Co., Ltd.
|
||||
600000-6FFFFF (base 16) Elevoc Technology Co., Ltd.
|
||||
5/F,Unit B,Block12,ShenZhenwan Science and Technology Ecological Garden,Nanshan Dist.
|
||||
Shenzhen Guangdong 518000
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) Eurolan Ltd
|
||||
A00000-AFFFFF (base 16) Eurolan Ltd
|
||||
jk. Drujba 1, ul. 5028, do bl. 15
|
||||
@ -17537,11 +17519,11 @@ E0-5A-9F (hex) Fujian Newland Auto-ID Tech. Co,.Ltd.
|
||||
Fuzhou Fujian 350015
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) Elevoc Technology Co., Ltd.
|
||||
600000-6FFFFF (base 16) Elevoc Technology Co., Ltd.
|
||||
5/F,Unit B,Block12,ShenZhenwan Science and Technology Ecological Garden,Nanshan Dist.
|
||||
Shenzhen Guangdong 518000
|
||||
CN
|
||||
18-74-E2 (hex) NextGen RF Design, Inc.
|
||||
C00000-CFFFFF (base 16) NextGen RF Design, Inc.
|
||||
2130 Howard Dr W
|
||||
North Mankato MN 56003
|
||||
US
|
||||
|
||||
18-74-E2 (hex) Sartorius Lab Instruments GmbH & Co. KG
|
||||
100000-1FFFFF (base 16) Sartorius Lab Instruments GmbH & Co. KG
|
||||
@ -17549,24 +17531,12 @@ D0-9F-D9 (hex) Elevoc Technology Co., Ltd.
|
||||
Goettingen 37079
|
||||
DE
|
||||
|
||||
18-74-E2 (hex) NextGen RF Design, Inc.
|
||||
C00000-CFFFFF (base 16) NextGen RF Design, Inc.
|
||||
2130 Howard Dr W
|
||||
North Mankato MN 56003
|
||||
US
|
||||
|
||||
18-74-E2 (hex) Linux Automation GmbH
|
||||
A00000-AFFFFF (base 16) Linux Automation GmbH
|
||||
Steuerwalder Str 21
|
||||
Hildesheim 31137
|
||||
DE
|
||||
|
||||
E8-78-29 (hex) METZ CONNECT GmbH
|
||||
A00000-AFFFFF (base 16) METZ CONNECT GmbH
|
||||
Im Tal 2
|
||||
Blumberg 78176
|
||||
DE
|
||||
|
||||
E8-78-29 (hex) Bernd Walter Computer Technology
|
||||
D00000-DFFFFF (base 16) Bernd Walter Computer Technology
|
||||
Fontanestr. 18
|
||||
@ -17579,24 +17549,30 @@ D00000-DFFFFF (base 16) Samriddi Automations Pvt. Ltd.
|
||||
Noida up 201307
|
||||
IN
|
||||
|
||||
E8-78-29 (hex) METZ CONNECT GmbH
|
||||
A00000-AFFFFF (base 16) METZ CONNECT GmbH
|
||||
Im Tal 2
|
||||
Blumberg 78176
|
||||
DE
|
||||
|
||||
E8-78-29 (hex) Shenzhen Jointelli Technologies Co.,Ltd
|
||||
100000-1FFFFF (base 16) Shenzhen Jointelli Technologies Co.,Ltd
|
||||
Room A4-1203, Building A, Kexing Science Park, No. 15, Keyuan Road,Keyuan Community,Yuehai Street,Nanshan District
|
||||
Shenzhen Guangdong 518000
|
||||
CN
|
||||
|
||||
78-13-05 (hex) Shenzhen AV-Display Co.,Ltd
|
||||
800000-8FFFFF (base 16) Shenzhen AV-Display Co.,Ltd
|
||||
No.39,He Ao Jin Yuan Road, Yuanshan Subdistrict, Longgang District ,Shenzhen, China
|
||||
SHENZHEN 518000
|
||||
CN
|
||||
|
||||
E8-78-29 (hex) Solos Technology Limited
|
||||
E00000-EFFFFF (base 16) Solos Technology Limited
|
||||
Unit 211, 2/F., Photonics Centre, No 2 Science Park East Avenue, Shatin
|
||||
Hong Kong Hong Kong 999077
|
||||
HK
|
||||
|
||||
78-13-05 (hex) Shenzhen AV-Display Co.,Ltd
|
||||
800000-8FFFFF (base 16) Shenzhen AV-Display Co.,Ltd
|
||||
No.39,He Ao Jin Yuan Road, Yuanshan Subdistrict, Longgang District ,Shenzhen, China
|
||||
SHENZHEN 518000
|
||||
CN
|
||||
|
||||
78-13-05 (hex) Bithouse Oy
|
||||
B00000-BFFFFF (base 16) Bithouse Oy
|
||||
Hepolamminkatu 32
|
||||
@ -17609,18 +17585,18 @@ B00000-BFFFFF (base 16) Bithouse Oy
|
||||
Nanjing Jiangsu 211800
|
||||
CN
|
||||
|
||||
A8-5B-36 (hex) DAP B.V.
|
||||
600000-6FFFFF (base 16) DAP B.V.
|
||||
Tussendiepen 4a
|
||||
Drachten 9206 AD
|
||||
NL
|
||||
|
||||
A8-5B-36 (hex) Bluesoo Tech (HongKong) Co.,Limited
|
||||
000000-0FFFFF (base 16) Bluesoo Tech (HongKong) Co.,Limited
|
||||
Room 05, 28 / F, good view business centre, 2-16 Garden Street, Mong Kok, Kowloon, Hongkong.
|
||||
HongKong 999077
|
||||
HK
|
||||
|
||||
A8-5B-36 (hex) DAP B.V.
|
||||
600000-6FFFFF (base 16) DAP B.V.
|
||||
Tussendiepen 4a
|
||||
Drachten 9206 AD
|
||||
NL
|
||||
|
||||
A8-5B-36 (hex) Louis Vuitton Malletier
|
||||
700000-7FFFFF (base 16) Louis Vuitton Malletier
|
||||
2 rue du Pont Neuf
|
||||
@ -17687,12 +17663,6 @@ C00000-CFFFFF (base 16) Haag-Streit AG
|
||||
Hong Kong 999077
|
||||
CN
|
||||
|
||||
28-36-13 (hex) Shenzhen HQVT TECHNOLOGY Co.,LTD
|
||||
200000-2FFFFF (base 16) Shenzhen HQVT TECHNOLOGY Co.,LTD
|
||||
3/F,Building 8 ,Taihua Wutong Island,Xixiang,Bao'an District
|
||||
China Guang Dong 518000
|
||||
CN
|
||||
|
||||
20-85-93 (hex) Great Lite International
|
||||
700000-7FFFFF (base 16) Great Lite International
|
||||
11F., No.207-2, Sec. 3, Beixin Rd., Xindian Dist.,
|
||||
@ -21992,6 +21962,12 @@ C8-F5-D6 (hex) MEIRYO TECHNICA CORPORATION
|
||||
Owariasahi-city Aichi 488-0052
|
||||
JP
|
||||
|
||||
C0-FB-F9 (hex) Minato Advanced Technologies inc
|
||||
400000-4FFFFF (base 16) Minato Advanced Technologies inc
|
||||
4105, Minami Yamata-cho, Tsuzuki-ku,
|
||||
YOKOHAMA Kanagawa 224-0026
|
||||
JP
|
||||
|
||||
C0-FB-F9 (hex) LongSung Technology (Shanghai) Co.,Ltd.
|
||||
700000-7FFFFF (base 16) LongSung Technology (Shanghai) Co.,Ltd.
|
||||
Room 606, Block B, Bldg. 1, No. 3000 Longdong Avenue., Zhangjiang Hi-Tech Park, Pudong District
|
||||
@ -22010,12 +21986,6 @@ C8-F5-D6 (hex) BBPOS International Limited
|
||||
Hong Kong China 00000
|
||||
HK
|
||||
|
||||
C0-FB-F9 (hex) Minato Advanced Technologies inc
|
||||
400000-4FFFFF (base 16) Minato Advanced Technologies inc
|
||||
4105, Minami Yamata-cho, Tsuzuki-ku,
|
||||
YOKOHAMA Kanagawa 224-0026
|
||||
JP
|
||||
|
||||
88-C9-B3 (hex) Fortive Setra-ICG(Tianjin)Co.,Ltd
|
||||
300000-3FFFFF (base 16) Fortive Setra-ICG(Tianjin)Co.,Ltd
|
||||
28 weiwu Road,Micro-electronics Industrial Park,Xiqing District Tianjin,P,R,China
|
||||
@ -22034,6 +22004,12 @@ C0-FB-F9 (hex) zxsolution
|
||||
shenzhen 518000
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) Westar Display Technologies
|
||||
200000-2FFFFF (base 16) Westar Display Technologies
|
||||
4 Research Park Dr
|
||||
St Charles MO 63304
|
||||
US
|
||||
|
||||
18-74-E2 (hex) Sansec Technology Co.,Ltd
|
||||
700000-7FFFFF (base 16) Sansec Technology Co.,Ltd
|
||||
Bejing Chaoyang District Guangshun North Street Hostpital No.16 No.2 building 14 room 1406
|
||||
@ -22046,12 +22022,6 @@ B00000-BFFFFF (base 16) Cablewireless Laboratory Co., Ltd
|
||||
Beijing 100029
|
||||
CN
|
||||
|
||||
D0-9F-D9 (hex) Westar Display Technologies
|
||||
200000-2FFFFF (base 16) Westar Display Technologies
|
||||
4 Research Park Dr
|
||||
St Charles MO 63304
|
||||
US
|
||||
|
||||
18-74-E2 (hex) CT Company
|
||||
300000-3FFFFF (base 16) CT Company
|
||||
Godovikova , 9, Moscow
|
||||
@ -22070,6 +22040,9 @@ E8-78-29 (hex) Ryu Tech. LTD
|
||||
Taipei Taiwan,R.O.C 235
|
||||
TW
|
||||
|
||||
E8-78-29 (hex) Private
|
||||
B00000-BFFFFF (base 16) Private
|
||||
|
||||
E8-78-29 (hex) Galcon
|
||||
200000-2FFFFF (base 16) Galcon
|
||||
Kfar Blum israel
|
||||
@ -22091,9 +22064,6 @@ C00000-CFFFFF (base 16) FairPhone B.V.
|
||||
Amsterdam 1013 CP
|
||||
NL
|
||||
|
||||
E8-78-29 (hex) Private
|
||||
B00000-BFFFFF (base 16) Private
|
||||
|
||||
B4-4B-D6 (hex) Shenzhen Cudy Technology Co., Ltd.
|
||||
200000-2FFFFF (base 16) Shenzhen Cudy Technology Co., Ltd.
|
||||
Room A606, Gaoxinqi Industrial Park, Baoan 67 Dist
|
||||
@ -22130,11 +22100,11 @@ F0-2A-2B (hex) Tenways Engineering Service Ltd
|
||||
Edgware Middlesex HA8 8XA
|
||||
GB
|
||||
|
||||
44-A9-2C (hex) uimcom
|
||||
100000-1FFFFF (base 16) uimcom
|
||||
Yingying building, 99 Tuanjie Road, Pukou District, Nanjing
|
||||
nanjing 211800
|
||||
CN
|
||||
44-A9-2C (hex) NetX Networks a.s.
|
||||
400000-4FFFFF (base 16) NetX Networks a.s.
|
||||
Palackeho trida 811/112
|
||||
Brno Czech Republic 62100
|
||||
CZ
|
||||
|
||||
F0-2A-2B (hex) Shenzhen CUCO Technology Co., Ltd
|
||||
E00000-EFFFFF (base 16) Shenzhen CUCO Technology Co., Ltd
|
||||
@ -22142,11 +22112,11 @@ E00000-EFFFFF (base 16) Shenzhen CUCO Technology Co., Ltd
|
||||
Shenzhen Guangdong 418000
|
||||
CN
|
||||
|
||||
44-A9-2C (hex) NetX Networks a.s.
|
||||
400000-4FFFFF (base 16) NetX Networks a.s.
|
||||
Palackeho trida 811/112
|
||||
Brno Czech Republic 62100
|
||||
CZ
|
||||
44-A9-2C (hex) uimcom
|
||||
100000-1FFFFF (base 16) uimcom
|
||||
Yingying building, 99 Tuanjie Road, Pukou District, Nanjing
|
||||
nanjing 211800
|
||||
CN
|
||||
|
||||
44-A9-2C (hex) Efficient Building Automation Corp.
|
||||
700000-7FFFFF (base 16) Efficient Building Automation Corp.
|
||||
@ -22166,32 +22136,14 @@ A00000-AFFFFF (base 16) Waoo
|
||||
Auckland 1150
|
||||
NZ
|
||||
|
||||
64-33-B5 (hex) LACO Technologies
|
||||
800000-8FFFFF (base 16) LACO Technologies
|
||||
3085 W Directors Row
|
||||
Salt Lake City UT 84104
|
||||
US
|
||||
|
||||
64-33-B5 (hex) electroCore Inc.
|
||||
B00000-BFFFFF (base 16) electroCore Inc.
|
||||
205 Forge Way
|
||||
Rockaway NJ 07866
|
||||
US
|
||||
|
||||
64-33-B5 (hex) Eagle Eye Networks, Inc
|
||||
400000-4FFFFF (base 16) Eagle Eye Networks, Inc
|
||||
4611 Bee Cave Rd Suite 200
|
||||
austin TX 78746
|
||||
64-33-B5 (hex) LACO Technologies
|
||||
800000-8FFFFF (base 16) LACO Technologies
|
||||
3085 W Directors Row
|
||||
Salt Lake City UT 84104
|
||||
US
|
||||
|
||||
64-33-B5 (hex) MICROIT SRL
|
||||
600000-6FFFFF (base 16) MICROIT SRL
|
||||
Via Galileo Galilei 1
|
||||
Medolla MODENA 41036
|
||||
IT
|
||||
|
||||
64-33-B5 (hex) Annapurna labs
|
||||
900000-9FFFFF (base 16) Annapurna labs
|
||||
Matam Scientific Industries Center, Building 8.2
|
||||
Mail box 15123 Haifa 3508409
|
||||
IL
|
||||
|
||||
@ -5255,24 +5255,6 @@ CE3000-CE3FFF (base 16) Pixel Design & Manufacturing Sdn. Bhd.
|
||||
Tehran 0512258788
|
||||
IR
|
||||
|
||||
8C-1F-64 (hex) Esys Srl
|
||||
C1F000-C1FFFF (base 16) Esys Srl
|
||||
via Spagna 240/242
|
||||
Rende Calabria 87036
|
||||
IT
|
||||
|
||||
8C-1F-64 (hex) Sicon srl
|
||||
193000-193FFF (base 16) Sicon srl
|
||||
Via Sila 1/3
|
||||
Isola Vicentina Vicenza 36033
|
||||
IT
|
||||
|
||||
8C-1F-64 (hex) YULISTA INTEGRATED SOLUTION
|
||||
128000-128FFF (base 16) YULISTA INTEGRATED SOLUTION
|
||||
7600 ADVANCED GATEWAY
|
||||
HUNTSVILLE AL 35808
|
||||
US
|
||||
|
||||
70-B3-D5 (hex) EVCO SPA
|
||||
A80000-A80FFF (base 16) EVCO SPA
|
||||
VIA FELTRE N. 81
|
||||
@ -10493,24 +10475,6 @@ AA4000-AA4FFF (base 16) HEINEN ELEKTRONIK GmbH
|
||||
Johannesburg Guateng 2170
|
||||
ZA
|
||||
|
||||
8C-1F-64 (hex) SVMS
|
||||
3B5000-3B5FFF (base 16) SVMS
|
||||
ZA de Berroueta
|
||||
Urrugne 64122
|
||||
FR
|
||||
|
||||
8C-1F-64 (hex) JUSTMORPH PTE. LTD.
|
||||
AB5000-AB5FFF (base 16) JUSTMORPH PTE. LTD.
|
||||
29A Mosque Street
|
||||
Singapore 059507
|
||||
SG
|
||||
|
||||
8C-1F-64 (hex) INFOSTECH Co., Ltd.
|
||||
F86000-F86FFF (base 16) INFOSTECH Co., Ltd.
|
||||
26, Namsan-ro 39beon-gil, Uichang-gu
|
||||
Changwon-si Gyeongsangnam-do 51368
|
||||
KR
|
||||
|
||||
70-B3-D5 (hex) System West dba ICS Electronics
|
||||
E06000-E06FFF (base 16) System West dba ICS Electronics
|
||||
7034 Commerce Circle Suite A
|
||||
@ -15674,12 +15638,6 @@ DC9000-DC9FFF (base 16) Peter Huber Kaeltemaschinenbau AG
|
||||
Duangzhou 511400
|
||||
CN
|
||||
|
||||
8C-1F-64 (hex) Xacti Corporation
|
||||
90E000-90EFFF (base 16) Xacti Corporation
|
||||
Tower East 28F,Umeda Sky Building,1-1-88,Oyodonaka,Kita-ku
|
||||
Osaka Osaka 531-6048
|
||||
JP
|
||||
|
||||
70-B3-D5 (hex) YUYAMA MFG Co.,Ltd
|
||||
BBB000-BBBFFF (base 16) YUYAMA MFG Co.,Ltd
|
||||
3-3-1
|
||||
@ -21026,36 +20984,6 @@ AE1000-AE1FFF (base 16) YUYAMA MFG Co.,Ltd
|
||||
Broomfield CO 80021
|
||||
US
|
||||
|
||||
8C-1F-64 (hex) Cirrus Systems, Inc.
|
||||
8C2000-8C2FFF (base 16) Cirrus Systems, Inc.
|
||||
200 West Road
|
||||
Portsmouth NH 03801
|
||||
US
|
||||
|
||||
8C-1F-64 (hex) Florida R&D Associates LLC
|
||||
2F5000-2F5FFF (base 16) Florida R&D Associates LLC
|
||||
76 Spring Vista Drive
|
||||
DeBary FL 32713
|
||||
US
|
||||
|
||||
8C-1F-64 (hex) Sonora Network Solutions
|
||||
2E8000-2E8FFF (base 16) Sonora Network Solutions
|
||||
8 The Green Suite A
|
||||
Dover DE 19901
|
||||
US
|
||||
|
||||
8C-1F-64 (hex) Global Organ Group B.V.
|
||||
EE8000-EE8FFF (base 16) Global Organ Group B.V.
|
||||
Keplerlaan 2
|
||||
EDE The Netherlands 6716BS
|
||||
NL
|
||||
|
||||
8C-1F-64 (hex) UBISCALE
|
||||
73F000-73FFFF (base 16) UBISCALE
|
||||
1 Avenue de Bellefontaine
|
||||
Cesson-Sevigne 35510
|
||||
FR
|
||||
|
||||
70-B3-D5 (hex) DISMUNTEL SAL
|
||||
92C000-92CFFF (base 16) DISMUNTEL SAL
|
||||
Pol ind cotes
|
||||
@ -26192,26 +26120,8 @@ A4E000-A4EFFF (base 16) Syscom Instruments SA
|
||||
Sainte-Croix 1450
|
||||
CH
|
||||
|
||||
8C-1F-64 (hex) Caproc Oy
|
||||
D4A000-D4AFFF (base 16) Caproc Oy
|
||||
Vintilänkatu 20
|
||||
Lahti 15680
|
||||
FI
|
||||
|
||||
8C-1F-64 (hex) KIB Energo LLC
|
||||
D3C000-D3CFFF (base 16) KIB Energo LLC
|
||||
Moskovskoe ave. 9
|
||||
Saint-Petersburg 196158
|
||||
RU
|
||||
|
||||
8C-1F-64 (hex) Nonet Inc
|
||||
2A5000-2A5FFF (base 16) Nonet Inc
|
||||
Daan Dist, Xinhai Road Section 1, No. 79, 5F
|
||||
Taipei Taipei 10647
|
||||
TW
|
||||
|
||||
8C-1F-64 (hex) WBNet
|
||||
1E3000-1E3FFF (base 16) WBNet
|
||||
Drielse Wetering 17
|
||||
Kerkdriel Gelderland 5331RK
|
||||
NL
|
||||
|
||||
@ -2477,13 +2477,6 @@
|
||||
<tr class="odd"><td>Shenzhen KTC Technology Group</td><td>SKG</td><td>06/01/2021</td> </tr>
|
||||
<tr class="even"><td>Truly Semiconductors Ltd.</td><td>TLY</td><td>06/01/2021</td> </tr>
|
||||
<tr class="odd"><td>Hitevision Group</td><td>HHT</td><td>03/08/2021</td> </tr>
|
||||
<tr class="even"><td>DLOGIC Ltd.</td><td>DLM</td><td>06/10/2021</td> </tr>
|
||||
<tr class="odd"><td>Fun Technology Innovation INC.</td><td>FUL</td><td>06/10/2021</td> </tr>
|
||||
<tr class="even"><td>Guangxi Century Innovation Display Electronics Co., Ltd</td><td>IOC</td><td>06/10/2021</td> </tr>
|
||||
<tr class="odd"><td>ICC Intelligent Platforms GmbH</td><td>EMR</td><td>06/10/2021</td> </tr>
|
||||
<tr class="even"><td>New H3C Technology Co., Ltd.</td><td>NHC</td><td>06/10/2021</td> </tr>
|
||||
<tr class="odd"><td>Seco S.p.A.</td><td>SCG</td><td>06/10/2021</td> </tr>
|
||||
<tr class="even"><td>Silent Power Electronics GmbH</td><td>LCP</td><td>06/10/2021</td> </tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</body>
|
||||
|
||||
@ -2527,9 +2527,9 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(ss) BPFProgram = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindAllow = [...];
|
||||
readonly a(iqq) SocketBindAllow = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindDeny = [...];
|
||||
readonly a(iqq) SocketBindDeny = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
readonly as Environment = ['...', ...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
@ -4331,9 +4331,9 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(ss) BPFProgram = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindAllow = [...];
|
||||
readonly a(iqq) SocketBindAllow = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindDeny = [...];
|
||||
readonly a(iqq) SocketBindDeny = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
readonly as Environment = ['...', ...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
@ -6054,9 +6054,9 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(ss) BPFProgram = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindAllow = [...];
|
||||
readonly a(iqq) SocketBindAllow = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindDeny = [...];
|
||||
readonly a(iqq) SocketBindDeny = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
readonly as Environment = ['...', ...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
@ -7744,9 +7744,9 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(ss) BPFProgram = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindAllow = [...];
|
||||
readonly a(iqq) SocketBindAllow = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindDeny = [...];
|
||||
readonly a(iqq) SocketBindDeny = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
readonly as Environment = ['...', ...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
@ -9259,9 +9259,9 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(ss) BPFProgram = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindAllow = [...];
|
||||
readonly a(iqq) SocketBindAllow = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindDeny = [...];
|
||||
readonly a(iqq) SocketBindDeny = [...];
|
||||
};
|
||||
interface org.freedesktop.DBus.Peer { ... };
|
||||
interface org.freedesktop.DBus.Introspectable { ... };
|
||||
@ -9722,9 +9722,9 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(ss) BPFProgram = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindAllow = [...];
|
||||
readonly a(iqq) SocketBindAllow = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly a(iiqq) SocketBindDeny = [...];
|
||||
readonly a(iqq) SocketBindDeny = [...];
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
readonly s KillMode = '...';
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||
|
||||
@ -125,7 +125,6 @@ manpages = [
|
||||
'SD_ID128_FORMAT_VAL',
|
||||
'SD_ID128_MAKE',
|
||||
'SD_ID128_MAKE_STR',
|
||||
'SD_ID128_MAKE_UUID_STR',
|
||||
'SD_ID128_NULL',
|
||||
'SD_ID128_UUID_FORMAT_STR',
|
||||
'sd_id128_equal',
|
||||
|
||||
@ -24,7 +24,6 @@
|
||||
<refname>SD_ID128_FORMAT_VAL</refname>
|
||||
<refname>SD_ID128_MAKE</refname>
|
||||
<refname>SD_ID128_MAKE_STR</refname>
|
||||
<refname>SD_ID128_MAKE_UUID_STR</refname>
|
||||
<refname>SD_ID128_NULL</refname>
|
||||
<refname>SD_ID128_UUID_FORMAT_STR</refname>
|
||||
<refname>sd_id128_equal</refname>
|
||||
@ -122,12 +121,10 @@ int main(int argc, char **argv) {
|
||||
return 0;
|
||||
}</programlisting>
|
||||
|
||||
<para><constant>SD_ID128_UUID_FORMAT_STR</constant> and <function>SD_ID128_MAKE_UUID_STR()</function>
|
||||
are similar to
|
||||
<constant>SD_ID128_FORMAT_STR</constant> and <function>SD_ID128_MAKE_STR()</function>,
|
||||
but include separating hyphens to conform to the
|
||||
"<ulink url="https://en.wikipedia.org/wiki/Universally_unique_identifier#Format">canonical representation</ulink>".
|
||||
They format the string based on <ulink
|
||||
<para><constant>SD_ID128_UUID_FORMAT_STR</constant> is similar to
|
||||
<constant>SD_ID128_FORMAT_STR</constant> but includes separating hyphens to conform to the "<ulink
|
||||
url="https://en.wikipedia.org/wiki/Universally_unique_identifier#Format">canonical
|
||||
representation</ulink>". This formats the string based on <ulink
|
||||
url="https://tools.ietf.org/html/rfc4122">RFC4122</ulink> Variant 1 rules, i.e. converting from Big
|
||||
Endian byte order. This matches behaviour of most other Linux userspace infrastructure. It's probably
|
||||
best to avoid UUIDs of other variants, in order to avoid unnecessary ambiguities. All 128-bit IDs
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
|
||||
project('systemd', 'c',
|
||||
version : '249',
|
||||
version : '248',
|
||||
license : 'LGPLv2+',
|
||||
default_options: [
|
||||
'c_std=gnu99',
|
||||
@ -13,8 +13,8 @@ project('systemd', 'c',
|
||||
meson_version : '>= 0.46',
|
||||
)
|
||||
|
||||
libsystemd_version = '0.32.0'
|
||||
libudev_version = '1.7.2'
|
||||
libsystemd_version = '0.31.0'
|
||||
libudev_version = '1.7.1'
|
||||
|
||||
conf = configuration_data()
|
||||
conf.set_quoted('PROJECT_URL', 'https://www.freedesktop.org/wiki/Software/systemd')
|
||||
|
||||
@ -30,22 +30,48 @@
|
||||
#define EFI_N_RETRIES_TOTAL 25
|
||||
#define EFI_RETRY_DELAY (50 * USEC_PER_MSEC)
|
||||
|
||||
char* efi_variable_path(sd_id128_t vendor, const char *name) {
|
||||
char *p;
|
||||
|
||||
if (asprintf(&p,
|
||||
"/sys/firmware/efi/efivars/%s-" SD_ID128_UUID_FORMAT_STR,
|
||||
name, SD_ID128_FORMAT_VAL(vendor)) < 0)
|
||||
return NULL;
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
static char* efi_variable_cache_path(sd_id128_t vendor, const char *name) {
|
||||
char *p;
|
||||
|
||||
if (asprintf(&p,
|
||||
"/run/systemd/efivars/%s-" SD_ID128_UUID_FORMAT_STR,
|
||||
name, SD_ID128_FORMAT_VAL(vendor)) < 0)
|
||||
return NULL;
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
int efi_get_variable(
|
||||
const char *variable,
|
||||
sd_id128_t vendor,
|
||||
const char *name,
|
||||
uint32_t *ret_attribute,
|
||||
void **ret_value,
|
||||
size_t *ret_size) {
|
||||
|
||||
_cleanup_close_ int fd = -1;
|
||||
_cleanup_free_ char *p = NULL;
|
||||
_cleanup_free_ void *buf = NULL;
|
||||
struct stat st;
|
||||
usec_t begin = 0; /* Unnecessary initialization to appease gcc */
|
||||
uint32_t a;
|
||||
ssize_t n;
|
||||
|
||||
assert(variable);
|
||||
assert(name);
|
||||
|
||||
const char *p = strjoina("/sys/firmware/efi/efivars/", variable);
|
||||
p = efi_variable_path(vendor, name);
|
||||
if (!p)
|
||||
return -ENOMEM;
|
||||
|
||||
if (!ret_value && !ret_size && !ret_attribute) {
|
||||
/* If caller is not interested in anything, just check if the variable exists and is
|
||||
@ -110,8 +136,7 @@ int efi_get_variable(
|
||||
return log_debug_errno(errno, "Failed to read value of EFI variable %s: %m", p);
|
||||
assert(n <= st.st_size - 4);
|
||||
|
||||
/* Always NUL-terminate (3 bytes, to properly protect UTF-16, even if truncated in the middle
|
||||
* of a character) */
|
||||
/* Always NUL terminate (3 bytes, to properly protect UTF-16, even if truncated in the middle of a character) */
|
||||
((char*) buf)[n] = 0;
|
||||
((char*) buf)[n + 1] = 0;
|
||||
((char*) buf)[n + 2] = 0;
|
||||
@ -125,8 +150,8 @@ int efi_get_variable(
|
||||
|
||||
end = now(CLOCK_MONOTONIC);
|
||||
if (end > begin + EFI_RETRY_DELAY)
|
||||
log_debug("Detected slow EFI variable read access on %s: %s",
|
||||
variable, format_timespan(ts, sizeof(ts), end - begin, 1));
|
||||
log_debug("Detected slow EFI variable read access on " SD_ID128_FORMAT_STR "-%s: %s",
|
||||
SD_ID128_FORMAT_VAL(vendor), name, format_timespan(ts, sizeof(ts), end - begin, 1));
|
||||
}
|
||||
|
||||
/* Note that efivarfs interestingly doesn't require ftruncate() to update an existing EFI variable
|
||||
@ -144,13 +169,13 @@ int efi_get_variable(
|
||||
return 0;
|
||||
}
|
||||
|
||||
int efi_get_variable_string(const char *variable, char **p) {
|
||||
int efi_get_variable_string(sd_id128_t vendor, const char *name, char **p) {
|
||||
_cleanup_free_ void *s = NULL;
|
||||
size_t ss = 0;
|
||||
int r;
|
||||
char *x;
|
||||
|
||||
r = efi_get_variable(variable, NULL, &s, &ss);
|
||||
r = efi_get_variable(vendor, name, NULL, &s, &ss);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@ -162,20 +187,28 @@ int efi_get_variable_string(const char *variable, char **p) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int efi_set_variable(const char *variable, const void *value, size_t size) {
|
||||
int efi_set_variable(
|
||||
sd_id128_t vendor,
|
||||
const char *name,
|
||||
const void *value,
|
||||
size_t size) {
|
||||
|
||||
struct var {
|
||||
uint32_t attr;
|
||||
char buf[];
|
||||
} _packed_ * _cleanup_free_ buf = NULL;
|
||||
_cleanup_free_ char *p = NULL;
|
||||
_cleanup_close_ int fd = -1;
|
||||
bool saved_flags_valid = false;
|
||||
unsigned saved_flags;
|
||||
int r;
|
||||
|
||||
assert(variable);
|
||||
assert(name);
|
||||
assert(value || size == 0);
|
||||
|
||||
const char *p = strjoina("/sys/firmware/efi/efivars/", variable);
|
||||
p = efi_variable_path(vendor, name);
|
||||
if (!p)
|
||||
return -ENOMEM;
|
||||
|
||||
/* Newer efivarfs protects variables that are not in an allow list with FS_IMMUTABLE_FL by default,
|
||||
* to protect them for accidental removal and modification. We are not changing these variables
|
||||
@ -241,14 +274,14 @@ finish:
|
||||
return r;
|
||||
}
|
||||
|
||||
int efi_set_variable_string(const char *variable, const char *value) {
|
||||
int efi_set_variable_string(sd_id128_t vendor, const char *name, const char *v) {
|
||||
_cleanup_free_ char16_t *u16 = NULL;
|
||||
|
||||
u16 = utf8_to_utf16(value, strlen(value));
|
||||
u16 = utf8_to_utf16(v, strlen(v));
|
||||
if (!u16)
|
||||
return -ENOMEM;
|
||||
|
||||
return efi_set_variable(variable, u16, (char16_strlen(u16) + 1) * sizeof(char16_t));
|
||||
return efi_set_variable(vendor, name, u16, (char16_strlen(u16) + 1) * sizeof(char16_t));
|
||||
}
|
||||
|
||||
bool is_efi_boot(void) {
|
||||
@ -267,7 +300,7 @@ bool is_efi_boot(void) {
|
||||
return cache;
|
||||
}
|
||||
|
||||
static int read_flag(const char *variable) {
|
||||
static int read_flag(const char *varname) {
|
||||
_cleanup_free_ void *v = NULL;
|
||||
uint8_t b;
|
||||
size_t s;
|
||||
@ -276,7 +309,7 @@ static int read_flag(const char *variable) {
|
||||
if (!is_efi_boot()) /* If this is not an EFI boot, assume the queried flags are zero */
|
||||
return 0;
|
||||
|
||||
r = efi_get_variable(variable, NULL, &v, &s);
|
||||
r = efi_get_variable(EFI_VENDOR_GLOBAL, varname, NULL, &v, &s);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@ -291,7 +324,7 @@ bool is_efi_secure_boot(void) {
|
||||
static int cache = -1;
|
||||
|
||||
if (cache < 0)
|
||||
cache = read_flag(EFI_GLOBAL_VARIABLE(SecureBoot));
|
||||
cache = read_flag("SecureBoot");
|
||||
|
||||
return cache > 0;
|
||||
}
|
||||
@ -300,12 +333,13 @@ bool is_efi_secure_boot_setup_mode(void) {
|
||||
static int cache = -1;
|
||||
|
||||
if (cache < 0)
|
||||
cache = read_flag(EFI_GLOBAL_VARIABLE(SetupMode));
|
||||
cache = read_flag("SetupMode");
|
||||
|
||||
return cache > 0;
|
||||
}
|
||||
|
||||
static int read_efi_options_variable(char **line) {
|
||||
int cache_efi_options_variable(void) {
|
||||
_cleanup_free_ char *line = NULL, *cachepath = NULL;
|
||||
int r;
|
||||
|
||||
/* In SecureBoot mode this is probably not what you want. As your cmdline is cryptographically signed
|
||||
@ -316,39 +350,39 @@ static int read_efi_options_variable(char **line) {
|
||||
* (NB: For testing purposes, we still check the $SYSTEMD_EFI_OPTIONS env var before accessing this
|
||||
* cache, even when in SecureBoot mode.) */
|
||||
if (is_efi_secure_boot()) {
|
||||
_cleanup_free_ char *k = NULL;
|
||||
|
||||
k = efi_variable_path(EFI_VENDOR_SYSTEMD, "SystemdOptions");
|
||||
if (!k)
|
||||
return -ENOMEM;
|
||||
|
||||
/* Let's be helpful with the returned error and check if the variable exists at all. If it
|
||||
* does, let's return a recognizable error (EPERM), and if not ENODATA. */
|
||||
|
||||
if (access(EFIVAR_PATH(EFI_SYSTEMD_VARIABLE(SystemdOptions)), F_OK) < 0)
|
||||
if (access(k, F_OK) < 0)
|
||||
return errno == ENOENT ? -ENODATA : -errno;
|
||||
|
||||
return -EPERM;
|
||||
}
|
||||
|
||||
r = efi_get_variable_string(EFI_SYSTEMD_VARIABLE(SystemdOptions), line);
|
||||
r = efi_get_variable_string(EFI_VENDOR_SYSTEMD, "SystemdOptions", &line);
|
||||
if (r == -ENOENT)
|
||||
return -ENODATA;
|
||||
return r;
|
||||
}
|
||||
|
||||
int cache_efi_options_variable(void) {
|
||||
_cleanup_free_ char *line = NULL;
|
||||
int r;
|
||||
|
||||
r = read_efi_options_variable(&line);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
return write_string_file(EFIVAR_CACHE_PATH(EFI_SYSTEMD_VARIABLE(SystemdOptions)), line,
|
||||
WRITE_STRING_FILE_ATOMIC|WRITE_STRING_FILE_CREATE|WRITE_STRING_FILE_MKDIR_0755);
|
||||
cachepath = efi_variable_cache_path(EFI_VENDOR_SYSTEMD, "SystemdOptions");
|
||||
if (!cachepath)
|
||||
return -ENOMEM;
|
||||
|
||||
return write_string_file(cachepath, line, WRITE_STRING_FILE_ATOMIC|WRITE_STRING_FILE_CREATE|WRITE_STRING_FILE_MKDIR_0755);
|
||||
}
|
||||
|
||||
int systemd_efi_options_variable(char **line) {
|
||||
const char *e;
|
||||
_cleanup_free_ char *cachepath = NULL;
|
||||
int r;
|
||||
|
||||
/* Returns the contents of the variable for current boot from the cache. */
|
||||
|
||||
assert(line);
|
||||
|
||||
/* For testing purposes it is sometimes useful to be able to override this */
|
||||
@ -364,37 +398,11 @@ int systemd_efi_options_variable(char **line) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
r = read_one_line_file(EFIVAR_CACHE_PATH(EFI_SYSTEMD_VARIABLE(SystemdOptions)), line);
|
||||
if (r == -ENOENT)
|
||||
return -ENODATA;
|
||||
return r;
|
||||
}
|
||||
cachepath = efi_variable_cache_path(EFI_VENDOR_SYSTEMD, "SystemdOptions");
|
||||
if (!cachepath)
|
||||
return -ENOMEM;
|
||||
|
||||
static inline int compare_stat_mtime(const struct stat *a, const struct stat *b) {
|
||||
return CMP(timespec_load(&a->st_mtim), timespec_load(&b->st_mtim));
|
||||
}
|
||||
|
||||
int systemd_efi_options_efivarfs_if_newer(char **line) {
|
||||
struct stat a = {}, b;
|
||||
int r;
|
||||
|
||||
if (stat(EFIVAR_PATH(EFI_SYSTEMD_VARIABLE(SystemdOptions)), &a) < 0 && errno != ENOENT)
|
||||
return log_debug_errno(errno, "Failed to stat EFI variable SystemdOptions: %m");
|
||||
|
||||
if (stat(EFIVAR_CACHE_PATH(EFI_SYSTEMD_VARIABLE(SystemdOptions)), &b) < 0) {
|
||||
if (errno != -ENOENT)
|
||||
log_debug_errno(errno, "Failed to stat "EFIVAR_CACHE_PATH(EFI_SYSTEMD_VARIABLE(SystemdOptions))": %m");
|
||||
} else if (compare_stat_mtime(&a, &b) > 0)
|
||||
log_debug("Variable SystemdOptions in evifarfs is newer than in cache.");
|
||||
else {
|
||||
log_debug("Variable SystemdOptions in cache is up to date.");
|
||||
*line = NULL;
|
||||
return 0;
|
||||
}
|
||||
|
||||
r = read_efi_options_variable(line);
|
||||
if (r < 0)
|
||||
log_warning_errno(r, "Failed to read SystemdOptions EFI variable: %m");
|
||||
r = read_one_line_file(cachepath, line);
|
||||
if (r == -ENOENT)
|
||||
return -ENODATA;
|
||||
return r;
|
||||
|
||||
@ -13,38 +13,19 @@
|
||||
#include "time-util.h"
|
||||
|
||||
#define EFI_VENDOR_LOADER SD_ID128_MAKE(4a,67,b0,82,0a,4c,41,cf,b6,c7,44,0b,29,bb,8c,4f)
|
||||
#define EFI_VENDOR_LOADER_STR SD_ID128_MAKE_UUID_STR(4a,67,b0,82,0a,4c,41,cf,b6,c7,44,0b,29,bb,8c,4f)
|
||||
#define EFI_VENDOR_GLOBAL SD_ID128_MAKE(8b,e4,df,61,93,ca,11,d2,aa,0d,00,e0,98,03,2b,8c)
|
||||
#define EFI_VENDOR_GLOBAL_STR SD_ID128_MAKE_UUID_STR(8b,e4,df,61,93,ca,11,d2,aa,0d,00,e0,98,03,2b,8c)
|
||||
#define EFI_VENDOR_SYSTEMD SD_ID128_MAKE(8c,f2,64,4b,4b,0b,42,8f,93,87,6d,87,60,50,dc,67)
|
||||
#define EFI_VENDOR_SYSTEMD_STR SD_ID128_MAKE_UUID_STR(8c,f2,64,4b,4b,0b,42,8f,93,87,6d,87,60,50,dc,67)
|
||||
#define EFI_VARIABLE_NON_VOLATILE 0x0000000000000001
|
||||
#define EFI_VARIABLE_BOOTSERVICE_ACCESS 0x0000000000000002
|
||||
#define EFI_VARIABLE_RUNTIME_ACCESS 0x0000000000000004
|
||||
|
||||
/* Note that the <lowercaseuuid>-<varname> naming scheme is an efivarfs convention, i.e. part of the Linux
|
||||
* API file system implementation for EFI. EFI itself processes UIDS in binary form.
|
||||
*/
|
||||
|
||||
#define EFI_VENDOR_VARIABLE_STR(vendor, name) name "-" vendor
|
||||
|
||||
#define EFI_GLOBAL_VARIABLE_STR(name) EFI_VENDOR_VARIABLE_STR(EFI_VENDOR_GLOBAL_STR, name)
|
||||
#define EFI_LOADER_VARIABLE_STR(name) EFI_VENDOR_VARIABLE_STR(EFI_VENDOR_LOADER_STR, name)
|
||||
#define EFI_SYSTEMD_VARIABLE_STR(name) EFI_VENDOR_VARIABLE_STR(EFI_VENDOR_SYSTEMD_STR, name)
|
||||
|
||||
#define EFI_GLOBAL_VARIABLE(name) EFI_GLOBAL_VARIABLE_STR(STRINGIFY(name))
|
||||
#define EFI_LOADER_VARIABLE(name) EFI_LOADER_VARIABLE_STR(STRINGIFY(name))
|
||||
#define EFI_SYSTEMD_VARIABLE(name) EFI_SYSTEMD_VARIABLE_STR(STRINGIFY(name))
|
||||
|
||||
#define EFIVAR_PATH(variable) "/sys/firmware/efi/efivars/" variable
|
||||
#define EFIVAR_CACHE_PATH(variable) "/run/systemd/efivars/" variable
|
||||
|
||||
#if ENABLE_EFI
|
||||
|
||||
int efi_get_variable(const char *variable, uint32_t *attribute, void **value, size_t *size);
|
||||
int efi_get_variable_string(const char *variable, char **p);
|
||||
int efi_set_variable(const char *variable, const void *value, size_t size);
|
||||
int efi_set_variable_string(const char *variable, const char *p);
|
||||
char* efi_variable_path(sd_id128_t vendor, const char *name);
|
||||
int efi_get_variable(sd_id128_t vendor, const char *name, uint32_t *attribute, void **value, size_t *size);
|
||||
int efi_get_variable_string(sd_id128_t vendor, const char *name, char **p);
|
||||
int efi_set_variable(sd_id128_t vendor, const char *name, const void *value, size_t size);
|
||||
int efi_set_variable_string(sd_id128_t vendor, const char *name, const char *p);
|
||||
|
||||
bool is_efi_boot(void);
|
||||
bool is_efi_secure_boot(void);
|
||||
@ -52,23 +33,26 @@ bool is_efi_secure_boot_setup_mode(void);
|
||||
|
||||
int cache_efi_options_variable(void);
|
||||
int systemd_efi_options_variable(char **line);
|
||||
int systemd_efi_options_efivarfs_if_newer(char **line);
|
||||
|
||||
#else
|
||||
|
||||
static inline int efi_get_variable(const char *variable, uint32_t *attribute, void **value, size_t *size) {
|
||||
static inline char* efi_variable_path(sd_id128_t vendor, const char *name) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static inline int efi_get_variable(sd_id128_t vendor, const char *name, uint32_t *attribute, void **value, size_t *size) {
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
static inline int efi_get_variable_string(const char *variable, char **p) {
|
||||
static inline int efi_get_variable_string(sd_id128_t vendor, const char *name, char **p) {
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
static inline int efi_set_variable(const char *variable, const void *value, size_t size) {
|
||||
static inline int efi_set_variable(sd_id128_t vendor, const char *name, const void *value, size_t size) {
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
static inline int efi_set_variable_string(const char *variable, const char *p) {
|
||||
static inline int efi_set_variable_string(sd_id128_t vendor, const char *name, const char *p) {
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
@ -92,7 +76,4 @@ static inline int systemd_efi_options_variable(char **line) {
|
||||
return -ENODATA;
|
||||
}
|
||||
|
||||
static inline int systemd_efi_options_efivarfs_if_newer(char **line) {
|
||||
return -ENODATA;
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -47,7 +47,7 @@ int main(int argc, char *argv[]) {
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
if (access(EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderBootCountPath)), F_OK) < 0) {
|
||||
if (access("/sys/firmware/efi/efivars/LoaderBootCountPath-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f", F_OK) < 0) {
|
||||
|
||||
if (errno == ENOENT) {
|
||||
log_debug_errno(errno, "Skipping generator, not booted with boot counting in effect.");
|
||||
|
||||
@ -212,7 +212,7 @@ static int acquire_boot_count_path(
|
||||
uint64_t left, done;
|
||||
int r;
|
||||
|
||||
r = efi_get_variable_string(EFI_LOADER_VARIABLE(LoaderBootCountPath), &path);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderBootCountPath", &path);
|
||||
if (r == -ENOENT)
|
||||
return -EUNATCH; /* in this case, let the caller print a message */
|
||||
if (r < 0)
|
||||
|
||||
@ -288,7 +288,7 @@ static int print_efi_option(uint16_t id, bool in_order) {
|
||||
|
||||
static int status_variables(void) {
|
||||
_cleanup_free_ uint16_t *options = NULL, *order = NULL;
|
||||
int n_options, n_order;
|
||||
int n_options, n_order, i;
|
||||
|
||||
n_options = efi_get_boot_options(&options);
|
||||
if (n_options == -ENOENT)
|
||||
@ -306,12 +306,14 @@ static int status_variables(void) {
|
||||
|
||||
/* print entries in BootOrder first */
|
||||
printf("Boot Loaders Listed in EFI Variables:\n");
|
||||
for (int i = 0; i < n_order; i++)
|
||||
for (i = 0; i < n_order; i++)
|
||||
print_efi_option(order[i], true);
|
||||
|
||||
/* print remaining entries */
|
||||
for (int i = 0; i < n_options; i++) {
|
||||
for (int j = 0; j < n_order; j++)
|
||||
for (i = 0; i < n_options; i++) {
|
||||
int j;
|
||||
|
||||
for (j = 0; j < n_order; j++)
|
||||
if (options[i] == order[j])
|
||||
goto next_option;
|
||||
|
||||
@ -724,7 +726,7 @@ static int find_slot(sd_id128_t uuid, const char *path, uint16_t *id) {
|
||||
static int insert_into_order(uint16_t slot, bool first) {
|
||||
_cleanup_free_ uint16_t *order = NULL;
|
||||
uint16_t *t;
|
||||
int n;
|
||||
int n, i;
|
||||
|
||||
n = efi_get_boot_order(&order);
|
||||
if (n <= 0)
|
||||
@ -736,7 +738,7 @@ static int insert_into_order(uint16_t slot, bool first) {
|
||||
return 0;
|
||||
|
||||
/* are we already in the boot order? */
|
||||
for (int i = 0; i < n; i++) {
|
||||
for (i = 0; i < n; i++) {
|
||||
if (order[i] != slot)
|
||||
continue;
|
||||
|
||||
@ -768,13 +770,13 @@ static int insert_into_order(uint16_t slot, bool first) {
|
||||
|
||||
static int remove_from_order(uint16_t slot) {
|
||||
_cleanup_free_ uint16_t *order = NULL;
|
||||
int n;
|
||||
int n, i;
|
||||
|
||||
n = efi_get_boot_order(&order);
|
||||
if (n <= 0)
|
||||
return n;
|
||||
|
||||
for (int i = 0; i < n; i++) {
|
||||
for (i = 0; i < n; i++) {
|
||||
if (order[i] != slot)
|
||||
continue;
|
||||
|
||||
@ -977,29 +979,29 @@ static int remove_variables(sd_id128_t uuid, const char *path, bool in_order) {
|
||||
}
|
||||
|
||||
static int remove_loader_variables(void) {
|
||||
const char *variable;
|
||||
const char *p;
|
||||
int r = 0;
|
||||
|
||||
/* Remove all persistent loader variables we define */
|
||||
|
||||
FOREACH_STRING(variable,
|
||||
EFI_LOADER_VARIABLE(LoaderConfigTimeout),
|
||||
EFI_LOADER_VARIABLE(LoaderConfigTimeoutOneShot),
|
||||
EFI_LOADER_VARIABLE(LoaderEntryDefault),
|
||||
EFI_LOADER_VARIABLE(LoaderEntryOneShot),
|
||||
EFI_LOADER_VARIABLE(LoaderSystemToken)){
|
||||
FOREACH_STRING(p,
|
||||
"LoaderConfigTimeout",
|
||||
"LoaderConfigTimeoutOneShot",
|
||||
"LoaderEntryDefault",
|
||||
"LoaderEntryOneShot",
|
||||
"LoaderSystemToken") {
|
||||
|
||||
int q;
|
||||
|
||||
q = efi_set_variable(variable, NULL, 0);
|
||||
q = efi_set_variable(EFI_VENDOR_LOADER, p, NULL, 0);
|
||||
if (q == -ENOENT)
|
||||
continue;
|
||||
if (q < 0) {
|
||||
log_warning_errno(q, "Failed to remove EFI variable %s: %m", variable);
|
||||
log_warning_errno(q, "Failed to remove %s variable: %m", p);
|
||||
if (r >= 0)
|
||||
r = q;
|
||||
} else
|
||||
log_info("Removed EFI variable %s.", variable);
|
||||
log_info("Removed EFI variable %s.", p);
|
||||
}
|
||||
|
||||
return r;
|
||||
@ -1222,12 +1224,12 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void read_efi_var(const char *variable, char **ret) {
|
||||
static void read_loader_efi_var(const char *name, char **var) {
|
||||
int r;
|
||||
|
||||
r = efi_get_variable_string(variable, ret);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, name, var);
|
||||
if (r < 0 && r != -ENOENT)
|
||||
log_warning_errno(r, "Failed to read EFI variable %s: %m", variable);
|
||||
log_warning_errno(r, "Failed to read EFI variable %s: %m", name);
|
||||
}
|
||||
|
||||
static void print_yes_no_line(bool first, bool good, const char *name) {
|
||||
@ -1293,13 +1295,13 @@ static int verb_status(int argc, char *argv[], void *userdata) {
|
||||
_cleanup_free_ char *fw_type = NULL, *fw_info = NULL, *loader = NULL, *loader_path = NULL, *stub = NULL;
|
||||
sd_id128_t loader_part_uuid = SD_ID128_NULL;
|
||||
uint64_t loader_features = 0;
|
||||
int have;
|
||||
size_t i;
|
||||
|
||||
read_efi_var(EFI_LOADER_VARIABLE(LoaderFirmwareType), &fw_type);
|
||||
read_efi_var(EFI_LOADER_VARIABLE(LoaderFirmwareInfo), &fw_info);
|
||||
read_efi_var(EFI_LOADER_VARIABLE(LoaderInfo), &loader);
|
||||
read_efi_var(EFI_LOADER_VARIABLE(StubInfo), &stub);
|
||||
read_efi_var(EFI_LOADER_VARIABLE(LoaderImageIdentifier), &loader_path);
|
||||
read_loader_efi_var("LoaderFirmwareType", &fw_type);
|
||||
read_loader_efi_var("LoaderFirmwareInfo", &fw_info);
|
||||
read_loader_efi_var("LoaderInfo", &loader);
|
||||
read_loader_efi_var("StubInfo", &stub);
|
||||
read_loader_efi_var("LoaderImageIdentifier", &loader_path);
|
||||
(void) efi_loader_get_features(&loader_features);
|
||||
|
||||
if (loader_path)
|
||||
@ -1331,7 +1333,7 @@ static int verb_status(int argc, char *argv[], void *userdata) {
|
||||
printf("Current Boot Loader:\n");
|
||||
printf(" Product: %s%s%s\n", ansi_highlight(), strna(loader), ansi_normal());
|
||||
|
||||
for (size_t i = 0; i < ELEMENTSOF(flags); i++)
|
||||
for (i = 0; i < ELEMENTSOF(flags); i++)
|
||||
print_yes_no_line(i == 0, FLAGS_SET(loader_features, flags[i].flag), flags[i].name);
|
||||
|
||||
sd_id128_t bootloader_esp_uuid;
|
||||
@ -1352,10 +1354,8 @@ static int verb_status(int argc, char *argv[], void *userdata) {
|
||||
printf("\n");
|
||||
|
||||
printf("Random Seed:\n");
|
||||
have = access(EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderRandomSeed)), F_OK) >= 0;
|
||||
printf(" Passed to OS: %s\n", yes_no(have));
|
||||
have = access(EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderSystemToken)), F_OK) >= 0;
|
||||
printf(" System Token: %s\n", have ? "set" : "not set");
|
||||
printf(" Passed to OS: %s\n", yes_no(access("/sys/firmware/efi/efivars/LoaderRandomSeed-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f", F_OK) >= 0));
|
||||
printf(" System Token: %s\n", access("/sys/firmware/efi/efivars/LoaderSystemToken-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f", F_OK) >= 0 ? "set" : "not set");
|
||||
|
||||
if (arg_esp_path) {
|
||||
_cleanup_free_ char *p = NULL;
|
||||
@ -1364,8 +1364,7 @@ static int verb_status(int argc, char *argv[], void *userdata) {
|
||||
if (!p)
|
||||
return log_oom();
|
||||
|
||||
have = access(p, F_OK) >= 0;
|
||||
printf(" Exists: %s\n", yes_no(have));
|
||||
printf(" Exists: %s\n", yes_no(access(p, F_OK) >= 0));
|
||||
}
|
||||
|
||||
printf("\n");
|
||||
@ -1429,11 +1428,13 @@ static int verb_list(int argc, char *argv[], void *userdata) {
|
||||
if (config.n_entries == 0)
|
||||
log_info("No boot loader entries found.");
|
||||
else {
|
||||
size_t n;
|
||||
|
||||
(void) pager_open(arg_pager_flags);
|
||||
|
||||
printf("Boot Loader Entries:\n");
|
||||
|
||||
for (size_t n = 0; n < config.n_entries; n++) {
|
||||
for (n = 0; n < config.n_entries; n++) {
|
||||
r = boot_entry_show(config.entries + n, n == (size_t) config.default_entry);
|
||||
if (r < 0)
|
||||
return r;
|
||||
@ -1538,7 +1539,7 @@ static int install_random_seed(const char *esp) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
r = efi_get_variable(EFI_LOADER_VARIABLE(LoaderSystemToken), NULL, NULL, &token_size);
|
||||
r = efi_get_variable(EFI_VENDOR_LOADER, "LoaderSystemToken", NULL, NULL, &token_size);
|
||||
if (r == -ENODATA)
|
||||
log_debug_errno(r, "LoaderSystemToken EFI variable is invalid (too short?), replacing.");
|
||||
else if (r < 0) {
|
||||
@ -1562,7 +1563,7 @@ static int install_random_seed(const char *esp) {
|
||||
* and possibly get identification information or too much insight into the kernel's entropy pool
|
||||
* state. */
|
||||
RUN_WITH_UMASK(0077) {
|
||||
r = efi_set_variable(EFI_LOADER_VARIABLE(LoaderSystemToken), buffer, sz);
|
||||
r = efi_set_variable(EFI_VENDOR_LOADER, "LoaderSystemToken", buffer, sz);
|
||||
if (r < 0) {
|
||||
if (!arg_graceful)
|
||||
return log_error_errno(r, "Failed to write 'LoaderSystemToken' EFI variable: %m");
|
||||
@ -1763,15 +1764,15 @@ static int verb_is_installed(int argc, char *argv[], void *userdata) {
|
||||
static int parse_loader_entry_target_arg(const char *arg1, char16_t **ret_target, size_t *ret_target_size) {
|
||||
int r;
|
||||
if (streq(arg1, "@current")) {
|
||||
r = efi_get_variable(EFI_LOADER_VARIABLE(LoaderEntrySelected), NULL, (void *) ret_target, ret_target_size);
|
||||
r = efi_get_variable(EFI_VENDOR_LOADER, "LoaderEntrySelected", NULL, (void *) ret_target, ret_target_size);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to get EFI variable 'LoaderEntrySelected': %m");
|
||||
} else if (streq(arg1, "@oneshot")) {
|
||||
r = efi_get_variable(EFI_LOADER_VARIABLE(LoaderEntryOneShot), NULL, (void *) ret_target, ret_target_size);
|
||||
r = efi_get_variable(EFI_VENDOR_LOADER, "LoaderEntryOneShot", NULL, (void *) ret_target, ret_target_size);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to get EFI variable 'LoaderEntryOneShot': %m");
|
||||
} else if (streq(arg1, "@default")) {
|
||||
r = efi_get_variable(EFI_LOADER_VARIABLE(LoaderEntryDefault), NULL, (void *) ret_target, ret_target_size);
|
||||
r = efi_get_variable(EFI_VENDOR_LOADER, "LoaderEntryDefault", NULL, (void *) ret_target, ret_target_size);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to get EFI variable 'LoaderEntryDefault': %m");
|
||||
} else {
|
||||
@ -1786,13 +1787,14 @@ static int parse_loader_entry_target_arg(const char *arg1, char16_t **ret_target
|
||||
}
|
||||
|
||||
static int verb_set_default(int argc, char *argv[], void *userdata) {
|
||||
const char *name;
|
||||
int r;
|
||||
|
||||
if (!is_efi_boot())
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),
|
||||
"Not booted with UEFI.");
|
||||
|
||||
if (access(EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderInfo)), F_OK) < 0) {
|
||||
if (access("/sys/firmware/efi/efivars/LoaderInfo-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f", F_OK) < 0) {
|
||||
if (errno == ENOENT) {
|
||||
log_error_errno(errno, "Not booted with a supported boot loader.");
|
||||
return -EOPNOTSUPP;
|
||||
@ -1811,13 +1813,12 @@ static int verb_set_default(int argc, char *argv[], void *userdata) {
|
||||
"'%s' operation cannot be combined with --touch-variables=no.",
|
||||
argv[0]);
|
||||
|
||||
const char *variable = streq(argv[0], "set-default") ?
|
||||
EFI_LOADER_VARIABLE(LoaderEntryDefault) : EFI_LOADER_VARIABLE(LoaderEntryOneShot);
|
||||
name = streq(argv[0], "set-default") ? "LoaderEntryDefault" : "LoaderEntryOneShot";
|
||||
|
||||
if (isempty(argv[1])) {
|
||||
r = efi_set_variable(variable, NULL, 0);
|
||||
r = efi_set_variable(EFI_VENDOR_LOADER, name, NULL, 0);
|
||||
if (r < 0 && r != -ENOENT)
|
||||
return log_error_errno(r, "Failed to remove EFI variable '%s': %m", variable);
|
||||
return log_error_errno(r, "Failed to remove EFI variable '%s': %m", name);
|
||||
} else {
|
||||
_cleanup_free_ char16_t *target = NULL;
|
||||
size_t target_size = 0;
|
||||
@ -1825,9 +1826,9 @@ static int verb_set_default(int argc, char *argv[], void *userdata) {
|
||||
r = parse_loader_entry_target_arg(argv[1], &target, &target_size);
|
||||
if (r < 0)
|
||||
return r;
|
||||
r = efi_set_variable(variable, target, target_size);
|
||||
r = efi_set_variable(EFI_VENDOR_LOADER, name, target, target_size);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to update EFI variable '%s': %m", variable);
|
||||
return log_error_errno(r, "Failed to update EFI variable '%s': %m", name);
|
||||
}
|
||||
|
||||
return 0;
|
||||
@ -1860,27 +1861,16 @@ static int verb_systemd_efi_options(int argc, char *argv[], void *userdata) {
|
||||
int r;
|
||||
|
||||
if (argc == 1) {
|
||||
_cleanup_free_ char *line = NULL, *new = NULL;
|
||||
_cleanup_free_ char *line = NULL;
|
||||
|
||||
r = systemd_efi_options_variable(&line);
|
||||
if (r == -ENODATA)
|
||||
log_debug("No SystemdOptions EFI variable present in cache.");
|
||||
else if (r < 0)
|
||||
return log_error_errno(r, "Failed to read SystemdOptions EFI variable from cache: %m");
|
||||
else
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to query SystemdOptions EFI variable: %m");
|
||||
|
||||
puts(line);
|
||||
|
||||
r = systemd_efi_options_efivarfs_if_newer(&new);
|
||||
if (r == -ENODATA) {
|
||||
if (line)
|
||||
log_notice("Note: SystemdOptions EFI variable has been removed since boot.");
|
||||
} else if (r < 0)
|
||||
log_warning_errno(r, "Failed to check SystemdOptions EFI variable in efivarfs, ignoring: %m");
|
||||
else if (new && !streq_ptr(line, new))
|
||||
log_notice("Note: SystemdOptions EFI variable has been modified since boot. New value: %s",
|
||||
new);
|
||||
} else {
|
||||
r = efi_set_variable_string(EFI_SYSTEMD_VARIABLE(SystemdOptions), argv[1]);
|
||||
r = efi_set_variable_string(EFI_VENDOR_SYSTEMD, "SystemdOptions", argv[1]);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to set SystemdOptions EFI variable: %m");
|
||||
}
|
||||
|
||||
@ -104,8 +104,7 @@ struct CGroupBPFForeignProgram {
|
||||
|
||||
struct CGroupSocketBindItem {
|
||||
LIST_FIELDS(CGroupSocketBindItem, socket_bind_items);
|
||||
int32_t address_family;
|
||||
int32_t ip_protocol;
|
||||
int address_family;
|
||||
uint16_t nr_ports;
|
||||
uint16_t port_min;
|
||||
};
|
||||
|
||||
@ -389,12 +389,12 @@ static int property_get_socket_bind(
|
||||
|
||||
assert(items);
|
||||
|
||||
r = sd_bus_message_open_container(reply, 'a', "(iiqq)");
|
||||
r = sd_bus_message_open_container(reply, 'a', "(iqq)");
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
LIST_FOREACH(socket_bind_items, i, *items) {
|
||||
r = sd_bus_message_append(reply, "(iiqq)", i->address_family, i->ip_protocol, i->nr_ports, i->port_min);
|
||||
r = sd_bus_message_append(reply, "(iqq)", i->address_family, i->nr_ports, i->port_min);
|
||||
if (r < 0)
|
||||
return r;
|
||||
}
|
||||
@ -454,8 +454,8 @@ const sd_bus_vtable bus_cgroup_vtable[] = {
|
||||
SD_BUS_PROPERTY("ManagedOOMMemoryPressureLimit", "u", NULL, offsetof(CGroupContext, moom_mem_pressure_limit), 0),
|
||||
SD_BUS_PROPERTY("ManagedOOMPreference", "s", property_get_managed_oom_preference, offsetof(CGroupContext, moom_preference), 0),
|
||||
SD_BUS_PROPERTY("BPFProgram", "a(ss)", property_get_bpf_foreign_program, 0, 0),
|
||||
SD_BUS_PROPERTY("SocketBindAllow", "a(iiqq)", property_get_socket_bind, offsetof(CGroupContext, socket_bind_allow), 0),
|
||||
SD_BUS_PROPERTY("SocketBindDeny", "a(iiqq)", property_get_socket_bind, offsetof(CGroupContext, socket_bind_deny), 0),
|
||||
SD_BUS_PROPERTY("SocketBindAllow", "a(iqq)", property_get_socket_bind, offsetof(CGroupContext, socket_bind_allow), 0),
|
||||
SD_BUS_PROPERTY("SocketBindDeny", "a(iqq)", property_get_socket_bind, offsetof(CGroupContext, socket_bind_deny), 0),
|
||||
SD_BUS_VTABLE_END
|
||||
};
|
||||
|
||||
@ -1882,22 +1882,19 @@ int bus_cgroup_set_property(
|
||||
CGroupSocketBindItem **list;
|
||||
uint16_t nr_ports, port_min;
|
||||
size_t n = 0;
|
||||
int32_t family, ip_protocol;
|
||||
int family;
|
||||
|
||||
list = streq(name, "SocketBindAllow") ? &c->socket_bind_allow : &c->socket_bind_deny;
|
||||
|
||||
r = sd_bus_message_enter_container(message, 'a', "(iiqq)");
|
||||
r = sd_bus_message_enter_container(message, 'a', "(iqq)");
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
while ((r = sd_bus_message_read(message, "(iiqq)", &family, &ip_protocol, &nr_ports, &port_min)) > 0) {
|
||||
while ((r = sd_bus_message_read(message, "(iqq)", &family, &nr_ports, &port_min)) > 0) {
|
||||
|
||||
if (!IN_SET(family, AF_UNSPEC, AF_INET, AF_INET6))
|
||||
return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "%s= expects INET or INET6 family, if specified.", name);
|
||||
|
||||
if (ip_protocol != 0)
|
||||
return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "%s= expects ip protocol equals to 0, for the time being.", name);
|
||||
|
||||
if (port_min + (uint32_t) nr_ports > (1 << 16))
|
||||
return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "%s= expects maximum port value lesser than 65536.", name);
|
||||
|
||||
@ -1913,7 +1910,6 @@ int bus_cgroup_set_property(
|
||||
|
||||
*item = (CGroupSocketBindItem) {
|
||||
.address_family = family,
|
||||
.ip_protocol = ip_protocol,
|
||||
.nr_ports = nr_ports,
|
||||
.port_min = port_min
|
||||
};
|
||||
|
||||
@ -27,8 +27,8 @@ static void lock_down_efi_variables(void) {
|
||||
* identify the system or gain too much insight into what we might have credited to the entropy
|
||||
* pool. */
|
||||
FOREACH_STRING(p,
|
||||
EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderRandomSeed)),
|
||||
EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderSystemToken))) {
|
||||
"/sys/firmware/efi/efivars/LoaderRandomSeed-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f",
|
||||
"/sys/firmware/efi/efivars/LoaderSystemToken-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f") {
|
||||
|
||||
r = chattr_path(p, 0, FS_IMMUTABLE_FL, NULL);
|
||||
if (r == -ENOENT)
|
||||
@ -61,7 +61,7 @@ int efi_take_random_seed(void) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
r = efi_get_variable(EFI_LOADER_VARIABLE(LoaderRandomSeed), NULL, &value, &size);
|
||||
r = efi_get_variable(EFI_VENDOR_LOADER, "LoaderRandomSeed", NULL, &value, &size);
|
||||
if (r == -EOPNOTSUPP) {
|
||||
log_debug_errno(r, "System lacks EFI support, not initializing random seed from EFI variable.");
|
||||
return 0;
|
||||
|
||||
@ -5687,8 +5687,6 @@ int config_parse_cgroup_socket_bind(
|
||||
return log_oom();
|
||||
*item = (CGroupSocketBindItem) {
|
||||
.address_family = af,
|
||||
/* No ip protocol specified for now. */
|
||||
.ip_protocol = 0,
|
||||
.nr_ports = nr_ports,
|
||||
.port_min = port_min,
|
||||
};
|
||||
|
||||
@ -2868,12 +2868,12 @@ static int method_set_reboot_to_boot_loader_menu(
|
||||
|
||||
if (use_efi) {
|
||||
if (x == UINT64_MAX)
|
||||
r = efi_set_variable(EFI_LOADER_VARIABLE(LoaderConfigTimeoutOneShot), NULL, 0);
|
||||
r = efi_set_variable(EFI_VENDOR_LOADER, "LoaderConfigTimeoutOneShot", NULL, 0);
|
||||
else {
|
||||
char buf[DECIMAL_STR_MAX(uint64_t) + 1];
|
||||
xsprintf(buf, "%" PRIu64, DIV_ROUND_UP(x, USEC_PER_SEC)); /* second granularity */
|
||||
|
||||
r = efi_set_variable_string(EFI_LOADER_VARIABLE(LoaderConfigTimeoutOneShot), buf);
|
||||
r = efi_set_variable_string(EFI_VENDOR_LOADER, "LoaderConfigTimeoutOneShot", buf);
|
||||
}
|
||||
if (r < 0)
|
||||
return r;
|
||||
@ -3071,9 +3071,9 @@ static int method_set_reboot_to_boot_loader_entry(
|
||||
if (use_efi) {
|
||||
if (isempty(v))
|
||||
/* Delete item */
|
||||
r = efi_set_variable(EFI_LOADER_VARIABLE(LoaderEntryOneShot), NULL, 0);
|
||||
r = efi_set_variable(EFI_VENDOR_LOADER, "LoaderEntryOneShot", NULL, 0);
|
||||
else
|
||||
r = efi_set_variable_string(EFI_LOADER_VARIABLE(LoaderEntryOneShot), v);
|
||||
r = efi_set_variable_string(EFI_VENDOR_LOADER, "LoaderEntryOneShot", v);
|
||||
if (r < 0)
|
||||
return r;
|
||||
} else {
|
||||
|
||||
@ -4419,7 +4419,7 @@ static int parse_efi_variable_factory_reset(void) {
|
||||
if (!in_initrd()) /* Never honour EFI variable factory reset request outside of the initrd */
|
||||
return 0;
|
||||
|
||||
r = efi_get_variable_string(EFI_SYSTEMD_VARIABLE(FactoryReset), &value);
|
||||
r = efi_get_variable_string(EFI_VENDOR_SYSTEMD, "FactoryReset", &value);
|
||||
if (r == -ENOENT || ERRNO_IS_NOT_SUPPORTED(r))
|
||||
return 0;
|
||||
if (r < 0)
|
||||
@ -4439,7 +4439,7 @@ static int parse_efi_variable_factory_reset(void) {
|
||||
static int remove_efi_variable_factory_reset(void) {
|
||||
int r;
|
||||
|
||||
r = efi_set_variable(EFI_SYSTEMD_VARIABLE(FactoryReset), NULL, 0);
|
||||
r = efi_set_variable(EFI_VENDOR_SYSTEMD, "FactoryReset", NULL, 0);
|
||||
if (r == -ENOENT || ERRNO_IS_NOT_SUPPORTED(r))
|
||||
return 0;
|
||||
if (r < 0)
|
||||
|
||||
@ -677,14 +677,14 @@ int boot_entries_load_config(
|
||||
return log_error_errno(r, "Failed to uniquify boot entries: %m");
|
||||
|
||||
if (is_efi_boot()) {
|
||||
r = efi_get_variable_string(EFI_LOADER_VARIABLE(LoaderEntryOneShot), &config->entry_oneshot);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderEntryOneShot", &config->entry_oneshot);
|
||||
if (r < 0 && !IN_SET(r, -ENOENT, -ENODATA)) {
|
||||
log_warning_errno(r, "Failed to read EFI variable \"LoaderEntryOneShot\": %m");
|
||||
if (r == -ENOMEM)
|
||||
return r;
|
||||
}
|
||||
|
||||
r = efi_get_variable_string(EFI_LOADER_VARIABLE(LoaderEntryDefault), &config->entry_default);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderEntryDefault", &config->entry_default);
|
||||
if (r < 0 && !IN_SET(r, -ENOENT, -ENODATA)) {
|
||||
log_warning_errno(r, "Failed to read EFI variable \"LoaderEntryDefault\": %m");
|
||||
if (r == -ENOMEM)
|
||||
@ -776,7 +776,7 @@ int boot_entries_augment_from_loader(
|
||||
break;
|
||||
}
|
||||
|
||||
p = strdup(EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderEntries)));
|
||||
p = efi_variable_path(EFI_VENDOR_LOADER, "LoaderEntries");
|
||||
if (!p)
|
||||
return log_oom();
|
||||
|
||||
|
||||
@ -866,12 +866,11 @@ static int bus_append_cgroup_property(sd_bus_message *m, const char *field, cons
|
||||
if (STR_IN_SET(field, "SocketBindAllow",
|
||||
"SocketBindDeny")) {
|
||||
if (isempty(eq))
|
||||
r = sd_bus_message_append(m, "(sv)", field, "a(iiqq)", 0);
|
||||
r = sd_bus_message_append(m, "(sv)", field, "a(iqq)", 0);
|
||||
else {
|
||||
/* No ip protocol specified for now. */
|
||||
int32_t family = AF_UNSPEC, ip_protocol = 0;
|
||||
const char *address_family, *user_port;
|
||||
_cleanup_free_ char *word = NULL;
|
||||
int family = AF_UNSPEC;
|
||||
|
||||
r = extract_first_word(&eq, &word, ":", 0);
|
||||
if (r == -ENOMEM)
|
||||
@ -889,7 +888,7 @@ static int bus_append_cgroup_property(sd_bus_message *m, const char *field, cons
|
||||
|
||||
user_port = eq ? eq : word;
|
||||
if (streq(user_port, "any")) {
|
||||
r = sd_bus_message_append(m, "(sv)", field, "a(iiqq)", 1, family, ip_protocol, 0, 0);
|
||||
r = sd_bus_message_append(m, "(sv)", field, "a(iqq)", 1, family, 0, 0);
|
||||
if (r < 0)
|
||||
return bus_log_create_error(r);
|
||||
} else {
|
||||
@ -902,7 +901,7 @@ static int bus_append_cgroup_property(sd_bus_message *m, const char *field, cons
|
||||
return log_error_errno(r, "Invalid port or port range: %s", user_port);
|
||||
|
||||
r = sd_bus_message_append(
|
||||
m, "(sv)", field, "a(iiqq)", 1, family, ip_protocol, port_max - port_min + 1, port_min);
|
||||
m, "(sv)", field, "a(iqq)", 1, family, port_max - port_min + 1, port_min);
|
||||
}
|
||||
}
|
||||
if (r < 0)
|
||||
|
||||
@ -82,7 +82,7 @@ int efi_reboot_to_firmware_supported(void) {
|
||||
if (!is_efi_boot())
|
||||
goto not_supported;
|
||||
|
||||
r = efi_get_variable(EFI_GLOBAL_VARIABLE(OsIndicationsSupported), NULL, &v, &s);
|
||||
r = efi_get_variable(EFI_VENDOR_GLOBAL, "OsIndicationsSupported", NULL, &v, &s);
|
||||
if (r == -ENOENT)
|
||||
goto not_supported; /* variable doesn't exist? it's not supported then */
|
||||
if (r < 0)
|
||||
@ -105,6 +105,7 @@ not_supported:
|
||||
static int get_os_indications(uint64_t *ret) {
|
||||
static struct stat cache_stat = {};
|
||||
_cleanup_free_ void *v = NULL;
|
||||
_cleanup_free_ char *fn = NULL;
|
||||
static uint64_t cache;
|
||||
struct stat new_stat;
|
||||
size_t s;
|
||||
@ -117,8 +118,12 @@ static int get_os_indications(uint64_t *ret) {
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
fn = efi_variable_path(EFI_VENDOR_GLOBAL, "OsIndications");
|
||||
if (!fn)
|
||||
return -ENOMEM;
|
||||
|
||||
/* stat() the EFI variable, to see if the mtime changed. If it did we need to cache again. */
|
||||
if (stat(EFIVAR_PATH(EFI_GLOBAL_VARIABLE(OsIndications)), &new_stat) < 0) {
|
||||
if (stat(fn, &new_stat) < 0) {
|
||||
if (errno != ENOENT)
|
||||
return -errno;
|
||||
|
||||
@ -132,7 +137,7 @@ static int get_os_indications(uint64_t *ret) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
r = efi_get_variable(EFI_GLOBAL_VARIABLE(OsIndications), NULL, &v, &s);
|
||||
r = efi_get_variable(EFI_VENDOR_GLOBAL, "OsIndications", NULL, &v, &s);
|
||||
if (r == -ENOENT) {
|
||||
/* Some firmware implementations that do support OsIndications and report that with
|
||||
* OsIndicationsSupported will remove the OsIndications variable when it is unset. Let's
|
||||
@ -175,7 +180,7 @@ int efi_set_reboot_to_firmware(bool value) {
|
||||
|
||||
/* Avoid writing to efi vars store if we can due to firmware bugs. */
|
||||
if (b != b_new)
|
||||
return efi_set_variable(EFI_GLOBAL_VARIABLE(OsIndications), &b_new, sizeof(uint64_t));
|
||||
return efi_set_variable(EFI_VENDOR_GLOBAL, "OsIndications", &b_new, sizeof(uint64_t));
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -230,7 +235,7 @@ int efi_get_boot_option(
|
||||
char **path,
|
||||
bool *active) {
|
||||
|
||||
char variable[STRLEN(EFI_GLOBAL_VARIABLE_STR("Boot")) + 4 + 1];
|
||||
char boot_id[9];
|
||||
_cleanup_free_ uint8_t *buf = NULL;
|
||||
size_t l;
|
||||
struct boot_option *header;
|
||||
@ -242,8 +247,8 @@ int efi_get_boot_option(
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
xsprintf(variable, EFI_GLOBAL_VARIABLE_STR("Boot%04X"), id);
|
||||
r = efi_get_variable(variable, NULL, (void **)&buf, &l);
|
||||
xsprintf(boot_id, "Boot%04X", id);
|
||||
r = efi_get_variable(EFI_VENDOR_GLOBAL, boot_id, NULL, (void **)&buf, &l);
|
||||
if (r < 0)
|
||||
return r;
|
||||
if (l < offsetof(struct boot_option, title))
|
||||
@ -345,7 +350,9 @@ static void id128_to_efi_guid(sd_id128_t id, void *guid) {
|
||||
}
|
||||
|
||||
static uint16_t *tilt_slashes(uint16_t *s) {
|
||||
for (uint16_t *p = s; *p; p++)
|
||||
uint16_t *p;
|
||||
|
||||
for (p = s; *p; p++)
|
||||
if (*p == '/')
|
||||
*p = '\\';
|
||||
|
||||
@ -365,7 +372,7 @@ int efi_add_boot_option(
|
||||
_cleanup_free_ char *buf = NULL;
|
||||
struct boot_option *option;
|
||||
struct device_path *devicep;
|
||||
char variable[STRLEN(EFI_GLOBAL_VARIABLE_STR("Boot")) + 4 + 1];
|
||||
char boot_id[9];
|
||||
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
@ -417,18 +424,18 @@ int efi_add_boot_option(
|
||||
devicep->length = offsetof(struct device_path, path);
|
||||
size += devicep->length;
|
||||
|
||||
xsprintf(variable, EFI_GLOBAL_VARIABLE_STR("Boot%04X"), id);
|
||||
return efi_set_variable(variable, buf, size);
|
||||
xsprintf(boot_id, "Boot%04X", id);
|
||||
return efi_set_variable(EFI_VENDOR_GLOBAL, boot_id, buf, size);
|
||||
}
|
||||
|
||||
int efi_remove_boot_option(uint16_t id) {
|
||||
char variable[STRLEN(EFI_GLOBAL_VARIABLE_STR("Boot")) + 4 + 1];
|
||||
char boot_id[9];
|
||||
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
xsprintf(variable, EFI_GLOBAL_VARIABLE_STR("Boot%04X"), id);
|
||||
return efi_set_variable(variable, NULL, 0);
|
||||
xsprintf(boot_id, "Boot%04X", id);
|
||||
return efi_set_variable(EFI_VENDOR_GLOBAL, boot_id, NULL, 0);
|
||||
}
|
||||
|
||||
int efi_get_boot_order(uint16_t **order) {
|
||||
@ -439,7 +446,7 @@ int efi_get_boot_order(uint16_t **order) {
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
r = efi_get_variable(EFI_GLOBAL_VARIABLE(BootOrder), NULL, &buf, &l);
|
||||
r = efi_get_variable(EFI_VENDOR_GLOBAL, "BootOrder", NULL, &buf, &l);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@ -459,15 +466,15 @@ int efi_set_boot_order(uint16_t *order, size_t n) {
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return efi_set_variable(EFI_GLOBAL_VARIABLE(BootOrder), order, n * sizeof(uint16_t));
|
||||
return efi_set_variable(EFI_VENDOR_GLOBAL, "BootOrder", order, n * sizeof(uint16_t));
|
||||
}
|
||||
|
||||
static int boot_id_hex(const char s[static 4]) {
|
||||
int id = 0;
|
||||
int id = 0, i;
|
||||
|
||||
assert(s);
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
for (i = 0; i < 4; i++)
|
||||
if (s[i] >= '0' && s[i] <= '9')
|
||||
id |= (s[i] - '0') << (3 - i) * 4;
|
||||
else if (s[i] >= 'A' && s[i] <= 'F')
|
||||
@ -493,7 +500,7 @@ int efi_get_boot_options(uint16_t **options) {
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
dir = opendir(EFIVAR_PATH("."));
|
||||
dir = opendir("/sys/firmware/efi/efivars/");
|
||||
if (!dir)
|
||||
return -errno;
|
||||
|
||||
@ -506,7 +513,7 @@ int efi_get_boot_options(uint16_t **options) {
|
||||
if (strlen(de->d_name) != 45)
|
||||
continue;
|
||||
|
||||
if (strcmp(de->d_name + 8, EFI_GLOBAL_VARIABLE_STR("")) != 0) /* generate variable suffix using macro */
|
||||
if (strcmp(de->d_name + 8, "-8be4df61-93ca-11d2-aa0d-00e098032b8c") != 0)
|
||||
continue;
|
||||
|
||||
id = boot_id_hex(de->d_name + 4);
|
||||
@ -526,15 +533,15 @@ int efi_get_boot_options(uint16_t **options) {
|
||||
return count;
|
||||
}
|
||||
|
||||
static int read_usec(const char *variable, usec_t *u) {
|
||||
static int read_usec(sd_id128_t vendor, const char *name, usec_t *u) {
|
||||
_cleanup_free_ char *j = NULL;
|
||||
int r;
|
||||
uint64_t x = 0;
|
||||
|
||||
assert(variable);
|
||||
assert(name);
|
||||
assert(u);
|
||||
|
||||
r = efi_get_variable_string(variable, &j);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, name, &j);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@ -556,11 +563,11 @@ int efi_loader_get_boot_usec(usec_t *firmware, usec_t *loader) {
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
r = read_usec(EFI_LOADER_VARIABLE(LoaderTimeInitUSec), &x);
|
||||
r = read_usec(EFI_VENDOR_LOADER, "LoaderTimeInitUSec", &x);
|
||||
if (r < 0)
|
||||
return log_debug_errno(r, "Failed to read LoaderTimeInitUSec: %m");
|
||||
|
||||
r = read_usec(EFI_LOADER_VARIABLE(LoaderTimeExecUSec), &y);
|
||||
r = read_usec(EFI_VENDOR_LOADER, "LoaderTimeExecUSec", &y);
|
||||
if (r < 0)
|
||||
return log_debug_errno(r, "Failed to read LoaderTimeExecUSec: %m");
|
||||
|
||||
@ -582,7 +589,7 @@ int efi_loader_get_device_part_uuid(sd_id128_t *u) {
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
r = efi_get_variable_string(EFI_LOADER_VARIABLE(LoaderDevicePartUUID), &p);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderDevicePartUUID", &p);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@ -593,9 +600,12 @@ int efi_loader_get_device_part_uuid(sd_id128_t *u) {
|
||||
&parsed[12], &parsed[13], &parsed[14], &parsed[15]) != 16)
|
||||
return -EIO;
|
||||
|
||||
if (u)
|
||||
for (unsigned i = 0; i < ELEMENTSOF(parsed); i++)
|
||||
if (u) {
|
||||
unsigned i;
|
||||
|
||||
for (i = 0; i < ELEMENTSOF(parsed); i++)
|
||||
u->bytes[i] = parsed[i];
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -603,7 +613,7 @@ int efi_loader_get_device_part_uuid(sd_id128_t *u) {
|
||||
int efi_loader_get_entries(char ***ret) {
|
||||
_cleanup_free_ char16_t *entries = NULL;
|
||||
_cleanup_strv_free_ char **l = NULL;
|
||||
size_t size;
|
||||
size_t size, i, start;
|
||||
int r;
|
||||
|
||||
assert(ret);
|
||||
@ -611,13 +621,13 @@ int efi_loader_get_entries(char ***ret) {
|
||||
if (!is_efi_boot())
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
r = efi_get_variable(EFI_LOADER_VARIABLE(LoaderEntries), NULL, (void**) &entries, &size);
|
||||
r = efi_get_variable(EFI_VENDOR_LOADER, "LoaderEntries", NULL, (void**) &entries, &size);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
/* The variable contains a series of individually NUL terminated UTF-16 strings. */
|
||||
|
||||
for (size_t i = 0, start = 0;; i++) {
|
||||
for (i = 0, start = 0;; i++) {
|
||||
_cleanup_free_ char *decoded = NULL;
|
||||
bool end;
|
||||
|
||||
@ -663,12 +673,12 @@ int efi_loader_get_features(uint64_t *ret) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
r = efi_get_variable(EFI_LOADER_VARIABLE(LoaderFeatures), NULL, &v, &s);
|
||||
r = efi_get_variable(EFI_VENDOR_LOADER, "LoaderFeatures", NULL, &v, &s);
|
||||
if (r == -ENOENT) {
|
||||
_cleanup_free_ char *info = NULL;
|
||||
|
||||
/* The new (v240+) LoaderFeatures variable is not supported, let's see if it's systemd-boot at all */
|
||||
r = efi_get_variable_string(EFI_LOADER_VARIABLE(LoaderInfo), &info);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderInfo", &info);
|
||||
if (r < 0) {
|
||||
if (r != -ENOENT)
|
||||
return r;
|
||||
@ -703,7 +713,7 @@ int efi_loader_get_features(uint64_t *ret) {
|
||||
}
|
||||
|
||||
int efi_loader_get_config_timeout_one_shot(usec_t *ret) {
|
||||
_cleanup_free_ char *v = NULL;
|
||||
_cleanup_free_ char *v = NULL, *fn = NULL;
|
||||
static struct stat cache_stat = {};
|
||||
struct stat new_stat;
|
||||
static usec_t cache;
|
||||
@ -712,8 +722,12 @@ int efi_loader_get_config_timeout_one_shot(usec_t *ret) {
|
||||
|
||||
assert(ret);
|
||||
|
||||
/* stat() the EFI variable, to see if the mtime changed. If it did, we need to cache again. */
|
||||
if (stat(EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderConfigTimeoutOneShot)), &new_stat) < 0)
|
||||
fn = efi_variable_path(EFI_VENDOR_LOADER, "LoaderConfigTimeoutOneShot");
|
||||
if (!fn)
|
||||
return -ENOMEM;
|
||||
|
||||
/* stat() the EFI variable, to see if the mtime changed. If it did we need to cache again. */
|
||||
if (stat(fn, &new_stat) < 0)
|
||||
return -errno;
|
||||
|
||||
if (stat_inode_unmodified(&new_stat, &cache_stat)) {
|
||||
@ -721,7 +735,7 @@ int efi_loader_get_config_timeout_one_shot(usec_t *ret) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
r = efi_get_variable_string(EFI_LOADER_VARIABLE(LoaderConfigTimeoutOneShot), &v);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderConfigTimeoutOneShot", &v);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@ -737,21 +751,25 @@ int efi_loader_get_config_timeout_one_shot(usec_t *ret) {
|
||||
}
|
||||
|
||||
int efi_loader_update_entry_one_shot_cache(char **cache, struct stat *cache_stat) {
|
||||
_cleanup_free_ char *v = NULL;
|
||||
_cleanup_free_ char *fn = NULL, *v = NULL;
|
||||
struct stat new_stat;
|
||||
int r;
|
||||
|
||||
assert(cache);
|
||||
assert(cache_stat);
|
||||
|
||||
fn = efi_variable_path(EFI_VENDOR_LOADER, "LoaderEntryOneShot");
|
||||
if (!fn)
|
||||
return -ENOMEM;
|
||||
|
||||
/* stat() the EFI variable, to see if the mtime changed. If it did we need to cache again. */
|
||||
if (stat(EFIVAR_PATH(EFI_LOADER_VARIABLE(LoaderEntryOneShot)), &new_stat) < 0)
|
||||
if (stat(fn, &new_stat) < 0)
|
||||
return -errno;
|
||||
|
||||
if (stat_inode_unmodified(&new_stat, cache_stat))
|
||||
return 0;
|
||||
|
||||
r = efi_get_variable_string(EFI_LOADER_VARIABLE(LoaderEntryOneShot), &v);
|
||||
r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderEntryOneShot", &v);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
@ -790,6 +808,7 @@ bool efi_has_tpm2(void) {
|
||||
#endif
|
||||
|
||||
bool efi_loader_entry_name_valid(const char *s) {
|
||||
|
||||
if (!filename_is_valid(s)) /* Make sure entry names fit in filenames */
|
||||
return false;
|
||||
|
||||
@ -797,7 +816,9 @@ bool efi_loader_entry_name_valid(const char *s) {
|
||||
}
|
||||
|
||||
char *efi_tilt_backslashes(char *s) {
|
||||
for (char *p = s; *p; p++)
|
||||
char *p;
|
||||
|
||||
for (p = s; *p; p++)
|
||||
if (*p == '\\')
|
||||
*p = '/';
|
||||
|
||||
|
||||
@ -1712,12 +1712,12 @@ static int print_property(const char *name, const char *expected_value, sd_bus_m
|
||||
return 1;
|
||||
} else if (STR_IN_SET(name, "SocketBindAllow", "SocketBindDeny")) {
|
||||
uint16_t nr_ports, port_min;
|
||||
int32_t af, ip_protocol;
|
||||
int af;
|
||||
|
||||
r = sd_bus_message_enter_container(m, SD_BUS_TYPE_ARRAY, "(iiqq)");
|
||||
r = sd_bus_message_enter_container(m, SD_BUS_TYPE_ARRAY, "(iqq)");
|
||||
if (r < 0)
|
||||
return bus_log_parse_error(r);
|
||||
while ((r = sd_bus_message_read(m, "(iiqq)", &af, &ip_protocol, &nr_ports, &port_min)) > 0) {
|
||||
while ((r = sd_bus_message_read(m, "(iqq)", &af, &nr_ports, &port_min)) > 0) {
|
||||
const char *family, *colon;
|
||||
|
||||
family = strempty(af_to_ipv4_ipv6(af));
|
||||
|
||||
@ -107,9 +107,6 @@ int sd_id128_get_boot_app_specific(sd_id128_t app_id, sd_id128_t *ret);
|
||||
#define SD_ID128_MAKE_STR(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) \
|
||||
#a #b #c #d #e #f #g #h #i #j #k #l #m #n #o #p
|
||||
|
||||
#define SD_ID128_MAKE_UUID_STR(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) \
|
||||
#a #b #c #d "-" #e #f "-" #g #h "-" #i #j "-" #k #l #m #n #o #p
|
||||
|
||||
_sd_pure_ static __inline__ int sd_id128_equal(sd_id128_t a, sd_id128_t b) {
|
||||
return memcmp(&a, &b, 16) == 0;
|
||||
}
|
||||
|
||||
@ -104,7 +104,6 @@ fi
|
||||
|
||||
BASICTOOLS=(
|
||||
awk
|
||||
base64
|
||||
basename
|
||||
bash
|
||||
busybox
|
||||
|
||||
@ -2,21 +2,6 @@
|
||||
set -eux
|
||||
set -o pipefail
|
||||
|
||||
# Limit the maximum journal size
|
||||
trap "journalctl --rotate --vacuum-size=16M" EXIT
|
||||
|
||||
# Rotation/flush test, see https://github.com/systemd/systemd/issues/19895
|
||||
journalctl --relinquish-var
|
||||
for i in {0..50}; do
|
||||
dd if=/dev/urandom bs=1M count=1 | base64 | systemd-cat
|
||||
done
|
||||
journalctl --rotate
|
||||
journalctl --flush
|
||||
journalctl --sync
|
||||
|
||||
# Reset the ratelimit buckets for the subsequent tests below.
|
||||
systemctl restart systemd-journald
|
||||
|
||||
# Test stdout stream
|
||||
|
||||
# Skip empty lines
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user