2011-06-29 35 views
8

Chúc mừng stackoverflow.Tại sao Android giới hạn các loại tệp có thể chấp nhận được trong khi nhận thông qua Bluetooth OPP?

Gần đây, tôi đang theo dõi cơ chế hoạt động Bluetooth trong khung công tác Android. Tôi đã nhận thấy rằng có một số loại tệp giới hạn được thực hiện bởi this patch trong khi nhận tệp qua OPP.

trong gói com.android.bluetooth.opp, có một danh sách trắng cố định trong Constants.java

/** 
* The MIME type(s) of we could accept from other device. 
* This is in essence a "white list" of acceptable types. 
* Today, restricted to images, audio, video and certain text types. 
*/ 
public static final String[] ACCEPTABLE_SHARE_INBOUND_TYPES = new String[] { 
    /* ... some types such as images and music ... */ 
}; 

làm hạn chế các loại tệp được chấp nhận trong BluetoothOppObexServerSession.java

 // Reject policy: anything outside the "white list" plus unspecified 
     // MIME Types. 
     if (!pre_reject 
      && (mimeType == null || (!Constants.mimeTypeMatches(mimeType, 
        Constants.ACCEPTABLE_SHARE_INBOUND_TYPES)))) { 
     if (D) Log.w(TAG, "mimeType is null or in unacceptable list, reject the transfer"); 
     pre_reject = true; 
     obexResponse = ResponseCodes.OBEX_HTTP_UNSUPPORTED_TYPE; 

Điều làm chúng tôi lo ngại về kiểu MIME trong tình huống này? Theo hiểu biết của tôi, chúng tôi có thể chặn các tệp thi hành (tức là * .apk, * .so) vì các tệp đó có thể gây hại cho thiết bị của chúng tôi. Nếu chặn một số loại cụ thể là lý do chúng tôi thiết lập một danh sách ở đây, tại sao chúng ta sẽ sử dụng một danh sách trắng thay vì một danh sách đen ngay trước bản vá này? Có giới hạn tương tự nào khi chúng tôi truyền tệp qua giao thức không phải bluetooth khác như HTTP không?

Trả lời

0

Tôi đã bỏ phiếu cho câu hỏi của bạn và đánh dấu câu hỏi đó là không mang tính xây dựng cùng một lúc. Câu hỏi là tuyệt vời nhưng nó được hỏi ở nơi sai: bạn cần phải nộp khiếu nại của bạn như là một lỗi/gợi ý trong tracker lỗi android.

Để trả lời câu hỏi của bạn - đó là xu hướng không cho phép người dùng tự bắn mình bằng cách hạn chế quyền truy cập của mình vào cả súng và chân của chính mình. Có thể ROM tùy chỉnh không bị giới hạn này.

+0

Cảm ơn bạn đã trả lời! Tôi sẽ chọn câu hỏi của tôi cẩn thận hơn trong lần tới. – coldturnip

2

Hồ sơ OBEX dự kiến ​​sẽ đạt được khả năng tương thích cấp ứng dụng cho các định dạng nội dung được trao đổi. Ví dụ: nếu danh thiếp được đẩy/kéo ứng dụng cục bộ nên hiểu định dạng thẻ kinh doanh để có thể hiển thị danh thiếp tại vị trí thích hợp (ví dụ: vị trí địa chỉ liên hệ) và phải hiểu định dạng để hiển thị nó trong ứng dụng danh bạ cục bộ của nó . OPP chỉ định định dạng nội dung cho Sổ điện thoại (vCards) Lịch, Nhắn tin, Ghi chú, v.v. Vì vậy máy chủ sẽ hỗ trợ định dạng đối tượng cụ thể mà máy khách đang cố gửi để có thể thực hiện hành động thích hợp với đối tượng đã nhận.

Để có thể chuyển đổi/trao đổi tập tin chung hơn, hồ sơ FTP có thể được sử dụng.

Các vấn đề liên quan