Commit Graph
32 Commits
Author SHA1 Message Date
Andrew Ayer b3e843cfc4 Fix include guards to not start with _
Since such names are reserved, technically.
2014-04-01 16:17:22 -07:00
Andrew Ayer 7b2604e79e Document git-crypt's new mailing lists in the README 2014-04-01 09:57:40 -07:00
Andrew Ayer 7fe8443238 Minor tidy-up of INSTALL file 2014-03-31 21:31:49 -07:00
Adam Nelson 5638aa0e0e INSTALL updated for using homebrew on OS X 2014-03-31 13:55:30 +03:00
Andrew Ayer 73bf395b3b Makefile: add DESTDIR support to 'make install' 2014-01-04 10:51:12 -08:00
Andrew Ayer 34432e915e Use OpenSSL's RNG instead of /dev/random
Rationale:

 * /dev/random blocks unpredictably on Linux, leading to slow
   key generation.
 * OpenSSL's RNG is more cross-platform than /dev/(u)random.
   Some platforms might not have a (u)random device, or worse,
   have a /dev/(u)random that produces insecure random numbers
   (like Cygwin, apparently).
2013-12-30 14:37:21 -08:00
Andrew Ayer d1aad00a59 Load OpenSSL error strings in main()
So we can report errors from OpenSSL.
2013-12-30 14:33:51 -08:00
Andrew Ayer cbc2c6d388 Add missing return statement in main() 2013-12-30 14:33:31 -08:00
Andrew Ayer 9f20b8719c Fix a typo in a comment 2013-04-28 09:38:05 -07:00
Andrew Ayer 33f6d73a0c Improve usability of 'git-crypt keygen'
* Display message asking user to move the mouse, etc. to generate more
   entropy.
 * Disable buffering on the fstream so we don't read more randomness
   than we have to.
 * Refuse to overwrite an existing key file.
2013-04-28 09:36:17 -07:00
Andrew Ayer 9654cb6044 Tweak wording in README 2013-04-27 18:09:07 -07:00
Andrew Ayer 4d94b44be1 Enhance documentation
Add NEWS file, spin installation instructions into INSTALL file, and add
useful information from the git-crypt website to the README.
0.3
2013-04-05 17:00:03 -07:00
Andrew Ayer 2b936c74f1 Escape arguments to filter commands
This will allow both the path to git-crypt and the path to the key file
to contain arbitrary characters, notably spaces.
2013-04-04 18:53:03 -07:00
Andrew Ayer b10fbcd299 Fix 'git-crypt init' for newer versions of Git
At some point between Git 1.7.1 and Git 1.8.1.3, both 'git reset' and
'git status' stopped noticing that files were modified after their
smudge filter changed.  Consequentially, 'git reset --hard HEAD' would
not decrypt existing encrypted files in the repo.

This commit changes 'git-crypt init' to use 'git checkout -f HEAD
/top/of/repo' instead, which does the job.
2013-04-04 17:43:38 -07:00
Andrew Ayer e184b39eaa git-crypt init: Ignore untracked files when running git status
Untracked files are not touched by git reset, so git-crypt init
is safe even with untracked files present.

This relies on the -u option to git-status, which was added in Git
1.6.0, which was released in 2008.  Add Git 1.6.0 as a requirement in
the README.
2013-03-07 15:34:23 -08:00
Andrew Ayer 490b7143b1 Update copyright notice to include OpenSSL linking exception 2013-03-05 12:02:49 -08:00
Andrew Ayer fb2e08d7c2 Add AUTHORS file 0.2 2013-02-07 08:08:21 -08:00
Andrew Ayer 5e89e6d4c7 Add 'make install' target 2013-02-07 08:08:21 -08:00
Andrew Ayer 84b4f7ca1a Improve 'git-crypt init' usability
* Correctly check for existence of HEAD (use 'git rev-parse' instead
    of 'git show-ref').  Fixes bug where hard reset might be skipped
    after running 'git init'.
  * Don't require working directory to be clean if HEAD doesn't exist.
    (If HEAD doesn't exist, we won't be hard resetting so the working
    directory doesn't need to be clean.)
  * Overwrite existing git config values (instead of --add'ing them) so
    'git-crypt init' can be idempotent.
  * In the error message for a disrty working directory, advise user to
    commit changes or 'git stash' them.
2013-02-06 16:14:57 -08:00
Andrew Ayer 826f746a3c Fix gitattributes example in README
There should NOT be a colon after the pattern.
2013-02-06 15:45:05 -08:00
Linus G ThielandAndrew Ayer 60d96ecf80 Include unistd.h for gcc 4.7
In gcc 4.7, some includes were removed. This fixes the build.

Signed-off-by: Andrew Ayer <agwa@andrewayer.name>
2013-02-06 14:52:43 -08:00
Andrew Ayer 3680884767 Restore original umask after running keygen 2013-01-24 22:02:42 -08:00
Andrew Ayer 8b5c3d5c88 Compile with 'c++' instead of 'g++'
We're not relying on any g++-specific features.
2013-01-24 22:00:12 -08:00
Andrew Ayer b2164be760 Use arpa/inet.h functions instead of endian.h
Even though arpa/inet.h is "networky" and this isn't a network
application, arpa/inet.h is in POSIX whereas endian.h is non-standard.

This should let git-crypt build on Mac OS X.
2013-01-24 21:57:49 -08:00
Andrew Ayer d3dcc7da64 Set a safe umask before creating temporary files
Although glibc's implementation of mkstemp creates temporary files with
a safe (i.e. 0600) mode, POSIX does not mandate any particular mode.  So
to ensure maximum cross-platform safety, we must set a umask of 0077
before calling mkstemp.
2013-01-03 15:23:35 -08:00
Andrew Ayer 42c365c77f New website URL in README 2012-12-19 09:50:04 -08:00
Andrew Ayer a2e3d160bd Add README and copyright notices 0.1 2012-11-29 11:03:45 -08:00
Andrew Ayer 0dcf864798 When encrypting, use temporary file if file gets too big 2012-07-16 16:57:05 -07:00
Andrew Ayer 3f6523bd7f Improve comments about the encryption scheme 2012-07-08 22:40:01 -07:00
Andrew Ayer d0b9ad84ae Create key file with umask of 077 2012-07-06 16:30:36 -07:00
Andrew Ayer fab7860109 init: skip git reset if HEAD doesn't exist
This could happen if repo is brand-new with no files.
2012-07-06 16:03:30 -07:00
Andrew Ayer 6e3dd5a8d3 Initial version 2012-07-06 15:38:40 -07:00