Types for objc_retain_xN / objc_release_xN in the libobjc type library should include their custom calling conventions

Đang mở
#8,032 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
50/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
objective-c
Lĩnh vực
reverse-engineering

Hướng nghiên cứu

Start at bv.import_library_object and locate the libobjc type-library definitions for _objc_retain_xN and _objc_release_xN, then review the shared cache and Mach-O view workarounds described in the issue. Done means both views can import these symbols with the id signature and matching apple-arm64-objc-fast-arc-N calling convention without manual fixups.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Component: Type Libraries Language: Objective-C

Version and Platform (required):

  • Binary Ninja Version: 5.3.9301-dev Ultimate, 855e811
  • OS: macos
  • OS Version: 26.3.1
  • CPU Architecture: arm64

Bug Description:

>>> bv.import_library_object('_objc_release_x20')
<type: immutable:FunctionTypeClass 'void()'>
>>> bv.import_library_object('_objc_release_x20').calling_convention

Expected Behavior:
These functions should:

  1. Have the correct signature: id _objc_release_x20(id).
  2. Specify the custom calling convention (apple-arm64-objc-fast-arc-20) to make explicit that the argument is not passed via x0.

Additional Information:
Both the shared cache and Mach-O views have to work around this at present by recognizing imports of these functions and manually fixing up the signature and calling convention.

Ngôn ngữ chính
C++
Star
1.3k
Fork
298
Merge trung bình
5 ngày 5 giờ
Pull request đã merge (30 ngày)
19

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của Vector35/binaryninja-api

Tất cả issue của Vector35/binaryninja-api

Issue tương tự

Thêm issue về C++

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.