2006-07-06 Marcus Brinkmann <marcus@g10code.de>

* lang, lang/cl: New subdirectories.
	* lang/Makefile.am, lang/README: New files.
	* configure.ac (AC_CONFIG_FILES): Add lang/Makefile,
	lang/cl/Makefile and lang/cl/gpgme.asd.
	* Makefile.am (SUBDIRS): Add lang.

lang/cl/
2006-07-06  Marcus Brinkmann  <marcus@g10code.de>

	* Initial release.
This commit is contained in:
Marcus Brinkmann 2006-07-06 10:37:52 +00:00
parent fca694b372
commit 1ae2788117
13 changed files with 2292 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2006-07-06 Marcus Brinkmann <marcus@g10code.de>
* lang, lang/cl: New subdirectories.
* lang/Makefile.am, lang/README: New files.
* configure.ac (AC_CONFIG_FILES): Add lang/Makefile,
lang/cl/Makefile and lang/cl/gpgme.asd.
* Makefile.am (SUBDIRS): Add lang.
2006-03-02 Marcus Brinkmann <marcus@g10code.de> 2006-03-02 Marcus Brinkmann <marcus@g10code.de>
* configure.ac (LIBGPGME_LT_REVISION): Bump for release. * configure.ac (LIBGPGME_LT_REVISION): Bump for release.

View File

@ -43,7 +43,7 @@ else
tests = tests =
endif endif
SUBDIRS = ${assuan} gpgme ${tests} doc ${complus} SUBDIRS = ${assuan} gpgme ${tests} doc ${complus} lang
# Fix the version of the spec file and create a file named VERSION # Fix the version of the spec file and create a file named VERSION
# to be used for patch's Prereq: feature. # to be used for patch's Prereq: feature.

3
README
View File

@ -1,7 +1,7 @@
GPGME - GnuPG Made Easy GPGME - GnuPG Made Easy
--------------------------- ---------------------------
Copyright 2004 g10 Code GmbH Copyright 2004, 2006 g10 Code GmbH
This file is free software; as a special exception the author gives This file is free software; as a special exception the author gives
unlimited permission to copy and/or distribute it, with or without unlimited permission to copy and/or distribute it, with or without
@ -120,3 +120,4 @@ in the tests/gpg/ directory may also prove useful.
Please subscribe to the gnupg-devel@gnupg.org mailing list if you want Please subscribe to the gnupg-devel@gnupg.org mailing list if you want
to do serious work. to do serious work.

12
TODO
View File

@ -86,8 +86,20 @@ Hey Emacs, this is -*- outline -*- mode!
(it's an internal error, as select_protocol checks already). (it's an internal error, as select_protocol checks already).
** When server mode is implemented properly, more care has to be taken to ** When server mode is implemented properly, more care has to be taken to
release all resources on error (for example to free assuan_cmd). release all resources on error (for example to free assuan_cmd).
* GPG breakage:
** gpg 1.4.2 lacks error reporting if sign/encrypt with revoked key.
** gpg 1.4.2 does crappy error reporting (namely none at all) when
smart card is missing for sign operation:
[GNUPG:] CARDCTRL 4
gpg: selecting openpgp failed: ec=6.110
gpg: signing failed: general error
[GNUPG:] BEGIN_ENCRYPTION 2 10
gpg: test: sign+encrypt failed: general error
** Without agent and with wrong passphrase, gpg 1.4.2 enters into an
infinite loop.
* Operations * Operations
** Include cert values -2, -1, 0 and 1 should be defined as macros.
** If an operation failed, make sure that the result functions don't return ** If an operation failed, make sure that the result functions don't return
corrupt partial information. !!! corrupt partial information. !!!
NOTE: The EOF status handler is not called in this case !!! NOTE: The EOF status handler is not called in this case !!!

View File

@ -537,6 +537,7 @@ AC_CONFIG_FILES(Makefile assuan/Makefile gpgme/Makefile
doc/Makefile complus/Makefile doc/Makefile complus/Makefile
gpgme/versioninfo.rc) gpgme/versioninfo.rc)
AC_CONFIG_FILES(gpgme/gpgme-config, chmod +x gpgme/gpgme-config) AC_CONFIG_FILES(gpgme/gpgme-config, chmod +x gpgme/gpgme-config)
AC_CONFIG_FILES([lang/Makefile lang/cl/Makefile lang/cl/gpgme.asd])
AC_OUTPUT AC_OUTPUT
echo " echo "

22
lang/Makefile.am Normal file
View File

@ -0,0 +1,22 @@
# Makefile.am for gpgme/lang.
# Copyright (C) 2003, 2006 g10 Code GmbH
#
# This file is part of GPGME.
#
# GPGME is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2.1 of the
# License, or (at your option) any later version.
#
# GPGME is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
# Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
SUBDIRS = cl
EXTRA_DIST = README

12
lang/README Normal file
View File

@ -0,0 +1,12 @@
Language Support for GPGME
--------------------------
This directory contains support for other languages than C.
Please note that language support components may be under a different
license than GPGME itself. You can find more information in each
sub-directory.
Directory Language
cl Common Lisp

4
lang/cl/ChangeLog Normal file
View File

@ -0,0 +1,4 @@
2006-07-06 Marcus Brinkmann <marcus@g10code.de>
* Initial release.

29
lang/cl/Makefile.am Normal file
View File

@ -0,0 +1,29 @@
# Makefile.am for GPGME-CL.
# Copyright (C) 2003, 2006 g10 Code GmbH
#
# This file is part of GPGME-CL.
#
# GPGME-CL is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# GPGME-CL is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA
clfiles = gpgme.asd gpgme-package.lisp gpgme.lisp
# FIXME: Should be configurable.
clfilesdir = $(datadir)/common-lisp/source/gpgme
dist_clfiles_DATA = $(clfiles)
EXTRA_DIST = README

40
lang/cl/README Normal file
View File

@ -0,0 +1,40 @@
Common Lisp Support for GPGME
-----------------------------
Requirements:
ASDF Packaging Support
CFFI Foreign Function Interface
gpg-error GPG Error Codes
Use with:
> (asdf:operate 'asdf:load-op ':gpgme)
Examples
--------
(with-open-file (stream "/tmp/myout" :direction :output
:if-exists :supersede :element-type '(unsigned-byte 8))
(with-context (ctx)
(setf (armor-p ctx) t)
(op-export ctx "DEADBEEF" out)))
(with-context (ctx)
(with-output-to-string (out)
(setf (armor-p ctx) t)
(op-export ctx "McTester" out)))
(gpgme:with-context (ctx :armor t)
(with-output-to-string (out)
(gpgme:op-export ctx "McTester" out)))
TODO
----
* When GPGME defines macros for include cert values -2, -1, 0 and 1,
define lisp macros for them as well.
*

View File

@ -0,0 +1,49 @@
;;;; gpgme-package.lisp
;;; Copyright (C) 2006 g10 Code GmbH
;;;
;;; This file is part of GPGME-CL.
;;;
;;; GPGME-CL is free software; you can redistribute it and/or modify
;;; it under the terms of the GNU General Public License as published
;;; by the Free Software Foundation; either version 2 of the License,
;;; or (at your option) any later version.
;;;
;;; GPGME-CL is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
;;; Lesser General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GPGME; if not, write to the Free Software Foundation,
;;; Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
;;; Conventions:
;;;
;;; gpg-error is used for error handling.
;;;
;;; Standard I/O streams are used for input and output.
(defpackage #:gpgme
(:use #:common-lisp #:cffi #:gpg-error)
(:export #:check-version
#:*version*
#:context
#:protocol
#:armorp
#:textmodep
#:+include-certs-default+
#:include-certs
#:keylist-mode
#:signers
#:sig-notations
#:with-context
#:key-data
#:get-key
#:op-encrypt
#:op-decrypt
#:op-sign
#:op-verify
#:op-import
#:op-export))

35
lang/cl/gpgme.asd.in Normal file
View File

@ -0,0 +1,35 @@
;;; -*- Mode: lisp -*-
;;; Copyright (C) 2006 g10 Code GmbH
;;;
;;; This file is part of GPGME.
;;;
;;; GPGME is free software; you can redistribute it and/or
;;; modify it under the terms of the GNU Lesser General Public License
;;; as published by the Free Software Foundation; either version 2.1 of
;;; the License, or (at your option) any later version.
;;;
;;; GPGME is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
;;; Lesser General Public License for more details.
;;;
;;; You should have received a copy of the GNU Lesser General Public
;;; License along with GPGME; if not, write to the Free
;;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
;;; 02111-1307, USA.
(defpackage #:gpgme-system
(:use #:common-lisp #:asdf))
(in-package #:gpgme-system)
(defsystem gpgme
:description "GnuPG Made Easy."
:author "g10 Code GmbH"
:version "@VERSION@"
:licence "GPL"
:depends-on ("cffi" "gpg-error")
:components ((:file "gpgme-package")
(:file "gpgme"
:depends-on ("gpgme-package"))))

2077
lang/cl/gpgme.lisp Normal file

File diff suppressed because it is too large Load Diff