<?xml version="1.0" encoding="UTF-8"?>
<commits type="array">
  <commit>
    <parents type="array">
      <parent>
        <id>60630dbdb99c37193673c100c7239c80a8b90527</id>
      </parent>
    </parents>
    <author>
      <name>Chris Adams</name>
      <email>chris@improbable.org</email>
    </author>
    <url>http://github.com/acdha/pymacadmin/commit/649dae5c16e380d8ac36c8430e4dcca81ab57fe7</url>
    <id>649dae5c16e380d8ac36c8430e4dcca81ab57fe7</id>
    <committed-date>2009-03-21T13:55:16-07:00</committed-date>
    <authored-date>2009-03-21T13:55:16-07:00</authored-date>
    <message>Keychain cleanup

Added module attributes for all of the kSec* defines
Fixed a bug caused by prematurely releasing the opaque item handle in find_generic_password
Removed some stale code, comments and unused variables</message>
    <tree>e1ac9330caa88f2bbefe5ff4d4cf1d70fc40a20a</tree>
    <committer>
      <name>Chris Adams</name>
      <email>chris@improbable.org</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>b53119fe69337d61a2dbb22ca5a732d3110b43ec</id>
      </parent>
    </parents>
    <author>
      <name>Chris Adams</name>
      <email>chris@improbable.org</email>
    </author>
    <url>http://github.com/acdha/pymacadmin/commit/d12eed830f1e4dde33ef2e7b6cfea8b44c64cff0</url>
    <id>d12eed830f1e4dde33ef2e7b6cfea8b44c64cff0</id>
    <committed-date>2009-03-20T20:30:59-07:00</committed-date>
    <authored-date>2009-03-20T20:30:59-07:00</authored-date>
    <message>Keychain label support

The cosmetic difference is that generic passwords now have a label and GenericPassword.__repr__ will use it.

This involved adding or fixing several struct definitions, multiple constants and dealing with several misleading parts of the Keychain documentation. The next step will be to move this into the classes and expand the support beyond labels to allow any keychain attribute to be retrieved or, finally, updated.</message>
    <tree>c410b03578d09ea172c6d7ecf7cd4c7bca67e044</tree>
    <committer>
      <name>Chris Adams</name>
      <email>chris@improbable.org</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>a0cf487e68faae2903913835b8d1b33120249e92</id>
      </parent>
    </parents>
    <author>
      <name>Chris Adams</name>
      <email>chris@improbable.org</email>
    </author>
    <url>http://github.com/acdha/pymacadmin/commit/b53119fe69337d61a2dbb22ca5a732d3110b43ec</url>
    <id>b53119fe69337d61a2dbb22ca5a732d3110b43ec</id>
    <committed-date>2009-03-14T21:27:20-07:00</committed-date>
    <authored-date>2009-03-14T21:27:20-07:00</authored-date>
    <message>Keychain Overhaul

Core PyMacAdmin improvements:
* mac_strerror() provides a way to lookup the error message for Carbon
  return codes
* carbon_call() simplifies the process of calling a Carbon function and
  automatically checking its return code. A RuntimeError will be raised
  if rc &lt; 0
* carbon_errcheck() can be used as a ctypes errcheck function using the
  same logic as carbon_call()
* load_carbon_framework() wraps ctypes.cdll.LoadLibrary() to automatically use carbon_errcheck() for every function in the loaded library

Added PyMacAdmin.Security declarations for common constants:
* kSecCertificateItemClass

Added ctypes.Structures for SecKeychainAttribute, SecKeychainAttributeList, SecKeychainAttributeInfo

Added delete-certificate.py temporarily until this can all be merged
into a consolidated bin/keychain.py</message>
    <tree>ade251ffd547fead2df5b667a78a11372c8ae393</tree>
    <committer>
      <name>Chris Adams</name>
      <email>chris@improbable.org</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>55eb2cc3d87fa67a39d24064e23e0f3a5d86c82f</id>
      </parent>
    </parents>
    <author>
      <name>adamsc</name>
      <email>adamsc@a06d0699-be4d-0410-9b60-b1b7deb0f677</email>
    </author>
    <url>http://github.com/acdha/pymacadmin/commit/404286ce6b569671ee2f712d71eda2f09de175ee</url>
    <id>404286ce6b569671ee2f712d71eda2f09de175ee</id>
    <committed-date>2009-01-07T11:30:22-08:00</committed-date>
    <authored-date>2009-01-07T11:30:22-08:00</authored-date>
    <message>Introducing a new module which provides a more Pythonic wrapper for the core Keychain API: adding, searching and removing generic or Internet passwords.
The new bin/airport-update.py script uses the new module; compare with contrib/ctypes/airport-update.py which uses the ctypes module directly
Added a LICENSE file


git-svn-id: https://pymacadmin.googlecode.com/svn/trunk@26 a06d0699-be4d-0410-9b60-b1b7deb0f677</message>
    <tree>01d0618240b94552ae3abf4f1928e300561dc682</tree>
    <committer>
      <name>adamsc</name>
      <email>adamsc@a06d0699-be4d-0410-9b60-b1b7deb0f677</email>
    </committer>
  </commit>
</commits>
