@@ -323,6 +323,31 @@ function setUsers() {
323
323
$ USERS ->addChild ('LOGIN ' , $ this ->username );
324
324
}
325
325
326
+ function determineNetworkType ($ network_description ) {
327
+ $ description = strtolower ($ network_description );
328
+
329
+ $ networkTypes = [
330
+ 'wifi ' => ['wi-fi ' , 'wireless ' , 'wifi ' ],
331
+ 'infiniband ' => ['infiniband ' ],
332
+ 'aggregate ' => ['aggregation ' , 'aggregate ' ],
333
+ 'alias ' => ['alias ' ],
334
+ 'dialup ' => ['dialup ' , 'dial-up ' ],
335
+ 'loopback ' => ['loop ' ],
336
+ 'bridge ' => ['bridge ' ],
337
+ 'fibrechannel ' => ['fibre ' , 'fiber ' ],
338
+ 'bluetooth ' => ['bluetooth ' ],
339
+ ];
340
+
341
+ foreach ($ networkTypes as $ type => $ keywords ) {
342
+ foreach ($ keywords as $ keyword ) {
343
+ if (str_contains ($ description , $ keyword )) {
344
+ return $ type ;
345
+ }
346
+ }
347
+ }
348
+ return "ethernet " ;
349
+ }
350
+
326
351
function setNetworks () {
327
352
328
353
$ PluginSccmSccm = new PluginSccmSccm ();
@@ -354,6 +379,7 @@ function setNetworks() {
354
379
$ NETWORKS ->addChild ('IPDHCP ' , $ value ['ND-DHCPServer ' ]);
355
380
$ NETWORKS ->addChild ('IPGATEWAY ' , $ value ['ND-IpGateway ' ]);
356
381
$ NETWORKS ->addChild ('MACADDR ' , $ value ['ND-MacAddress ' ]);
382
+ $ NETWORKS ->addChild ('TYPE ' , $ this ->determineNetworkType ($ value ['ND-Name ' ]));
357
383
358
384
$ i ++;
359
385
}
0 commit comments