NDISwrapper
# NDISwrapper

NDISwrapper è un modulo per il kernel Linux che permette di installare periferiche di rete utilizzando i rispettivi driver per Microsoft Windows.

Il sito ufficiale del progetto con la documentazione è offline da ottobre 2008, ed è possibile visualizzarlo solo su Internet Archive.

## Descrizione

Questo software nasce per sopperire alla mancanza dei driver per Linux di molte periferiche e, sebbene sia pensato in particolar modo per le schede wireless, funziona anche con altre periferiche di rete.

Implementa le API del kernel Windows e NDIS (Network Driver Interface Specification) all'interno del kernel Linux. Un driver per Windows viene caricato e poi linkato dinamicamente a NDISwrapper, e può quindi essere eseguito nativamente nel kernel senza il bisogno di creare un'emulazione binaria per il driver stesso.

## Problemi d'implementazione

Linus Torvalds sostiene che NDISwrapper costituisce una violazione alla licenza GPL poiché il suo solo scopo è eseguire codice incompatibile con tale licenza. Pertanto in una delle release candidate di Linux 2.6.25 fu bloccato l'accesso di NDISwrapper ad alcune funzioni riservate al codice GPL. Recentemente il problema non è più stato discusso e le guide di molte distribuzioni note di GNU/Linux spiegano ancora come installare NDISwrapper su versioni che comprendono la suddetta versione del kernel o successive. Ciò suggerisce che si sia trovata una soluzione al problema.

Poiché NDISwrapper usa i driver scritti per Windows, è inutile su architetture diverse da x86 e x64, e su quest'ultima è possibile eseguire solo i driver a 64 bit. Le API NDIS 6, utilizzate su Windows Vista, non sono implementate.

