Rilascio del set minimalista di utilità di sistema BusyBox 1.34

È stato presentato il rilascio del pacchetto BusyBox 1.34 con l'implementazione di un insieme di utilità standard UNIX, confezionate in un unico file eseguibile e ottimizzate per un minimo consumo di risorse di sistema, con una dimensione complessiva inferiore a 1 MB. La prima versione del nuovo ramo 1.34 è posizionata come instabile, con una completa stabilizzazione prevista per la versione 1.34.1, attesa tra circa un mese. Il codice del progetto è distribuito con licenza GPLv2.

La natura modulare di BusyBox consente di creare un unico file eseguibile unificato, contenente un insieme arbitrario di utilità implementate nel pacchetto (ogni utilità è disponibile sotto forma di collegamento simbolico a questo file). La dimensione, la composizione e la funzionalità della collezione di utilità possono variare a seconda delle esigenze e delle capacità della piattaforma embedded per la quale viene effettuata la compilazione. Il pacchetto è autonomo; con una compilazione statica usando uclibc, per creare un sistema operativo funzionante sopra il kernel Linux è necessario solo creare alcuni file di dispositivo nella directory /dev e preparare i file di configurazione. Rispetto alla precedente versione 1.33, il consumo di memoria RAM con la compilazione tipica di BusyBox 1.34 è aumentato di 9620 byte (da 1032724 a 1042344 byte).

BusyBox è lo strumento principale nella lotta contro le violazioni della GPL nei firmware. Le organizzazioni Software Freedom Conservancy (SFC) e Software Freedom Law Center (SFLC) hanno, per conto degli sviluppatori di BusyBox, sia attraverso azioni legali che mediante la conclusione di accordi extragiudiziali, avuto successo nel far pressione su aziende che non forniscono accesso al codice sorgente dei programmi GPL. Nel frattempo, l'autore di BusyBox si oppone decisamente a tale protezione, ritenendo che danneggi il suo business.

Nella versione BusyBox 1.34 sono evidenziate le seguenti modifiche:

  • Aggiunta una nuova utilità ascii con una tabella interattiva dei nomi dei caratteri ASCII.
  • Aggiunta una nuova utilità crc32 per il calcolo dei checksum.
  • Nel server http incorporato è stata implementata la supporto per i metodi DELETE, PUT e OPTIONS.
  • In udhcpc è stata fornita la possibilità di cambiare il nome dell'interfaccia di rete predefinita.
  • Nell'implementazione dei protocolli TLS è stato aggiunto il supporto per le curve celebri elliptiche secp256r1 (P256).
  • È stata proseguita lo sviluppo delle shell di comando ash e hush. In hush, la gestione del comando ^D è stata allineata al comportamento di ash e bash, è stata implementata la sintassi specifica di bash $’str’ e sono state ottimizzate le operazioni di sostituzione ${var/pattern/repl}.
  • È stata effettuata una grande serie di correzioni e miglioramenti nell'implementazione dello strumento awk.
  • Nelle utility base32 e base64 è stata aggiunta l'opzione «-i» per ignorare i caratteri non validi.
  • Nelle utility bc e dc la gestione delle variabili d'ambiente BC_LINE_LENGTH e DC_LINE_LENGTH è stata avvicinata a quella delle utility GNU.
  • Nell'utility blockdev sono state aggiunte le opzioni —getra e —setra.
  • Nelle utility chattr e lsattr è stata aggiunta l'opzione «-p». In lsattr è stato ampliato il numero di flag FS supportati per ext2.
  • Nell'utility cp sono state aggiunte le opzioni «-n» (divieto di sovrascrittura) e «-t DIR» (definizione della directory target).
  • In cpio è stata sistemata la gestione della costruzione «cpio -d -p A/B/C».
  • Nell'utility df è stata aggiunta l'opzione «-t TYPE» (limite di output a un determinato tipo di FS).
  • Nell'utility du è stata aggiunta l'opzione -b (equivalente di ‘—apparent-size —block-size=1’).
  • Nell'utility env è stata aggiunta l'opzione «-0» (termina ogni riga con un carattere nullo).
  • Nell'utility free è stata aggiunta l'opzione «-h» (output in formato leggibile).
  • Nell'utility ionice è stata aggiunta l'opzione «-t» (ignorare i fallimenti).
  • Nell'utility login è stato implementato il supporto per la variabile d'ambiente LOGIN_TIMEOUT.
  • Nell'utility mv sono state aggiunte le opzioni «-t» (definizione della directory target per il movimento) e «-T» (trattamento del secondo argomento come un file).
  • Nell'utility shred è stata aggiunta l'opzione «-s SIZE» (numero di byte da eliminare).
  • Nell'utility taskset è stata aggiunta l'opzione «-a» (applicazione del binding CPU per tutti i thread del processo).
  • Nelle utility timeout, top, watch e ping è stato implementato il supporto per valori non interi (NN.N).
  • Nell'utility uniq è stata aggiunta l'opzione «-z» (uso del carattere nullo come delimitatore).
  • Nell'utility unzip è stata aggiunta l'opzione «-t» (verifica dell'archivio).
  • Nel editor vi è stato permesso l'uso delle espressioni regolari nel comando ‘:s’. È stato aggiunto il parametro expandtab. Migliorate le implementazioni per il movimento tra paragrafi, la selezione dei range e l'annullamento delle modifiche.
  • Nell'utility xxd sono state implementate le opzioni -i (output in stile C) e «-o DISPLAYOFFSET».
  • Nell'utility wget è stata consentita la gestione dei codici HTTP 307/308 per il reindirizzamento. È stata aggiunta l'opzione FEATURE_WGET_FTP per abilitare/disabilitare il supporto FTP.
  • Nell'utility dd è stata aggiunta l'opzione «iflag=count_bytes».
  • Nell'utility cut sono state implementate opzioni compatibili con l'arsenale toybox «-O OUTSEP», «-D» e «-F LIST».

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster