Phát hành hệ thống in CUPS 2.3 với thay đổi về giấy phép cho mã dự án

Gần ba năm sau khi thành lập chi nhánh quan trọng cuối cùng, Apple trình bày phát hành hệ thống in miễn phí CÚP 2.3 (Hệ thống in Unix phổ biến), được sử dụng trong macOS và hầu hết các bản phân phối Linux. Sự phát triển của CUPS hoàn toàn do Apple kiểm soát, vào năm 2007 hấp thụ Sản phẩm phần mềm dễ dàng, người tạo ra CUPS.

Bắt đầu với bản phát hành này, giấy phép mã đã thay đổi từ GPLv2 và LGPLv2 thành Apache 2.0, điều này sẽ cho phép các bên thứ ba sử dụng mã CUPS trong sản phẩm của họ mà không cần phải mở nguồn thay đổi và cũng sẽ cho phép khả năng tương thích cấp phép với các dự án mã nguồn mở khác của Apple chẳng hạn như Swift, WebKit và mDNSResponder. Giấy phép Apache 2.0 cũng xác định rõ ràng việc chuyển giao quyền đối với các công nghệ độc quyền cùng với mã. Hậu quả tiêu cực của việc thay đổi giấy phép từ GPL sang Apache là mất khả năng tương thích giấy phép với các dự án chỉ được cung cấp theo giấy phép GPLv2 (giấy phép Apache 2.0 tương thích với GPLv3, nhưng không tương thích với GPLv2). Để giải quyết vấn đề này, một ngoại lệ đặc biệt đã được thêm vào thỏa thuận cấp phép cho mã được cấp phép theo GPLv2/LGPLv2.

Chính thay đổi trong CUPS 2.3:

  • Đã thêm hỗ trợ cho các cài đặt trước và "hoàn thành» trong các mẫu lệnh in cho giao thức IPP mọi nơi, cung cấp các công cụ để tự động chọn máy in có sẵn trên mạng, cho phép bạn xác định tính khả dụng của máy in, gửi yêu cầu và thực hiện các thao tác in, cả trực tiếp và thông qua máy chủ trung gian;
  • Một tiện ích mới được bao gồm ipeveprinter với việc triển khai một máy chủ IPP Everywhere đơn giản có thể được sử dụng để kiểm tra phần mềm máy khách hoặc chạy các lệnh cho từng lệnh in;
  • Lệnh lpstat hiện hiển thị trạng thái tạm dừng của lệnh in mới;
  • Hỗ trợ xác thực HTTP Digest và SHA-256 đã được thêm vào thư viện libcups;
  • Trong việc thực hiện giao thức chia sẻ máy in Xin chào đảm bảo sử dụng tên DNS-SD khi đăng ký máy in trên mạng;
  • Khả năng ghi các tệp thuộc tính ippserver đã được thêm vào tiện ích ipptool;
  • Đã thêm hỗ trợ cho các tùy chọn MinTLS và MaxTLS vào lệnh SSLOptions để chọn phiên bản TLS sẽ sử dụng;
  • Đã thêm hỗ trợ cho lệnh UserAgentTokens vào “client.conf”;
  • Đã cập nhật dịch vụ systemd để chạy cupd;
  • Lệnh lpoptions hiện có khả năng hoạt động với các máy in IPP Everywhere chưa được thêm vào hàng đợi in cục bộ;
  • Đã thêm hỗ trợ chính xác cho máy in có chế độ in mặt trước vào trình điều khiển IPP Everywhere;
  • Đã thêm các quy tắc để tính đến các tính năng của máy in USB Lexmark E120n, Lexmark Optra E310, Zebra, DYMO 450 Turbo, Canon MP280, Xerox và HP LaserJet P1102;
  • Lỗ hổng đã được sửa CVE-2019-8696 и CVE-2019-8675, dẫn đến tràn bộ đệm được phân bổ cho ngăn xếp khi xử lý dữ liệu không chính xác trong các hàm asn1_get_packed và asn1_get_type được sử dụng khi xử lý các yêu cầu SNMP;
  • Các tiện ích cupaddsmb và cuptestdsc đã bị xóa.

Nguồn: opennet.ru

Thêm một lời nhận xét