[X2go-Commits] python-paramiko.git - master (branch) created: 09488c665ba46057648a13a12c76f0c6392a86a1

X2Go dev team git-admin at x2go.org
Tue Oct 9 21:43:24 CEST 2012


The branch, master has been created
        at  09488c665ba46057648a13a12c76f0c6392a86a1 (commit)

- Log -----------------------------------------------------------------
commit 09488c665ba46057648a13a12c76f0c6392a86a1
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Sep 25 22:09:49 2012 -0700

    80-col fix

commit 2d7355da5e7fee3924a742990a7ae28624ab645c
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Sep 25 18:11:30 2012 -0700

    Fix module import in tests

commit 71456b899045d8ba03f7bca7763e21c01761f4e5
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Sep 25 18:10:28 2012 -0700

    Correct dev-installation doc in package metadata

commit 2e016358ef0a56df23b798196657ba9d6f7520c6
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Sep 25 18:09:35 2012 -0700

    Whitespace + lang tweak

commit 30a2d14b78385cd3097da9a7953392143a1e6f55
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Sep 25 18:05:01 2012 -0700

    Init header update

commit 47c5b3a65bf53ebb79acffef4a31ba0c8054ce57
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 24 19:19:41 2012 -0700

    Nuke old copy of original README

commit 3cba95f112f04714d5083f0df9f2f082e11ba47b
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 24 19:19:00 2012 -0700

    Transition back to Paramiko's readme; update to be currently accurate

commit 217512430d9e2cadc243bf59260cffc368e15034
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 24 19:14:34 2012 -0700

    Remove extraneous changelog lines from 'ssh'

commit f0c953dcf658d235a5f322c70db98a9a97489a17
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 24 19:12:54 2012 -0700

    Namespace issue numbers appropriately

commit c9db81861a9779ec3100d2138e8e68ca18497af0
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 24 19:09:53 2012 -0700

    For now, merge ssh CHANGES file into paramiko NEWS

commit dd6fb2577d1c6f5cbfaf0264cc0452f465b0ca63
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:01:57 2012 -0700

    Bump to 0.8.x due to nontrivial changes
    (cherry picked from commit d7def60c4784fed39fc8714753304a150da131c7)
    
    Conflicts:
    	setup.py

commit 3c01fdda1457b8c3ebc5bd7b0552584b9c786f32
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Sep 13 18:35:12 2012 -0500

    Fix #28: hide interpreter-death threading exceptions
    (cherry picked from commit 3709d2e02bf67ccc272e1f2311e5db125a922ba0)

commit 43f82360634b42b4a592e038769fdac49b33aa5f
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 10 12:54:46 2012 -0700

    Changelog re #40
    (cherry picked from commit c27915d55182cfa22c517c2d6d887316fc89c80a)

commit f8bb0433a2ebafd208a45da8cd4b84636c3a6fe5
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 10 11:36:07 2012 -0700

    Travis integration
    (cherry picked from commit 4cb9fed74bbde4730d2901dde4adb7cb47ae796a)

commit 557eb524f0da37373795407ad63517f7ddf59d3f
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 10 11:35:02 2012 -0700

    Exit correctly so test.py can be used in CI
    (cherry picked from commit d516fe71ea1d8bdb7b2e278fa519f7f860d7e234)

commit e0be91a4c9804828f4a2531cfdb785ff978e10cf
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Sep 10 11:34:52 2012 -0700

    Fixes to failing-test teardowns to avoid more exceptions or hangs
    (cherry picked from commit 734f3d6f42ef1564f473fee5526e0354fc8196fc)
    
    Conflicts:
    	test.py

commit 212fe74f099fa240a73f3c42cf7e11bd56d7f885
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sat Sep 8 23:32:09 2012 -0700

    Whitespace
    (cherry picked from commit baa930eb583b65938cfcfa272a1eb2af12df3502)

commit 88df2ac180ef01b545ca9d7c5d1bd986e14737c7
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sat Sep 8 23:15:58 2012 -0700

    Changelog re #11
    (cherry picked from commit c8e76e3a801098ecfec02fe52cd83bb7fab9f19a)

commit 66118cad8328ca6ee19a5aec7ea1c972399ec746
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sat Sep 8 23:13:13 2012 -0700

    Improve unknown-server exception language
    
    Fixes #11
    (cherry picked from commit 01ab79211c3aeeb8dd55dafff3ce7b3a77844ca6)

commit 681a465f327a4986c9b7232dd28e2eca7392a6f2
Author: Douglas Turk <dougturk at google.com>
Date:   Mon Sep 3 14:48:00 2012 +1000

    Handle/fix handling of EINTR errors in a few places.
    (cherry picked from commit 351bdb72e539c373985e108c89f61839f3acdd2a)
    
    Conflicts:
    	paramiko/agent.py
    	paramiko/client.py
    	paramiko/transport.py

commit 7ead8d9c70ab81023e2a0c37e0f3ab7ebf9814af
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Aug 13 11:01:09 2012 -0700

    Fix unbound local variable exception
    (cherry picked from commit 503d7e62602cfe3ed63a4f44fba12874a17aa199)

commit 400ea089d585a7a1e81b7fa26f6862b61f36f954
Author: Laurent Peuch <cortex at worlddomination.be>
Date:   Sun Aug 12 05:04:16 2012 +0300

    add the url to github in the setup.py for pypi
    (cherry picked from commit abfefc2f95c377cc134d9b0b71c8cdd692f321c8)
    
    Conflicts:
    	setup.py

commit 45c1212949e63a9976610fdf4c10962c08de3752
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sat Aug 4 12:42:10 2012 -0700

    Changelog re #36
    (cherry picked from commit 5b8cdd990fea9269f8b5297ad1e3e52de08f2ee6)

commit 38dec6fc5b2e2c07eec83a36f43d75d884cc6960
Author: Andrew <andrew at poundpay.com>
Date:   Thu Aug 2 22:56:40 2012 -0700

    - make sure we honor 2-factor for all auth_pkey blocks
    - explicit check for ['password'] as remaining auth type
    (cherry picked from commit 53a3421da6d74333c4679fd6289d418917833b44)

commit b592eb1074bb158643bccfef45c2d47c0233f93f
Author: Andrew <andrew at poundpay.com>
Date:   Thu Aug 2 13:03:14 2012 -0700

    make sure to break out of key auth loop on success when doing 2-factor
    (cherry picked from commit 0a4aa8a9d119022adef3b8d89f129ea26110fc1a)

commit 33176b90f797a59340eb29434adff0d1af884dd9
Author: Andrew <andrew at poundpay.com>
Date:   Thu Aug 2 12:10:41 2012 -0700

    add support for 2 factor authentication (key+password)
    (cherry picked from commit be19c273bbe77d58fd67edeabf344ff253997b23)

commit 25942dbd9021c3e8854dc7f624841dfbdf7e80f8
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Jul 15 16:52:39 2012 -0700

    Attribution re: #33
    (cherry picked from commit 8793771f3804b3f9bb4bf63d0b36ca105de78979)

commit 7f3124dcd9a91b0ce886f8ee311c816f449c58b9
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Jul 15 16:48:08 2012 -0700

    Attribution re #32
    (cherry picked from commit 2f4303df3e7477dca28badee2f1cc14573befab6)

commit 01aaf70fc24e846a8f3b531441344cdfb02d9269
Author: Thomas Vander Stichele <thomas (at) apestaart (dot) org>
Date:   Mon Jul 2 13:28:44 2012 +0200

    show us the offending host key
    (cherry picked from commit a753df8ea43c26114942147fde2f10f82da5ca29)

commit 7f526044e0e0d767791d739b10a33b548af8578e
Author: Jan Brauer <jan at jimdo.com>
Date:   Thu Jul 12 22:19:49 2012 +0200

    re #33 - fix typo, be more pythonic
    (cherry picked from commit 803820c3c8b1aaf2a11588431582916dbb23ea1e)

commit d18b8cf1e9aab43abc9f6750fd9fb15f356435e4
Author: Jan Brauer <jan at jimdo.com>
Date:   Thu Jul 12 17:12:26 2012 +0200

    Fix #33 - parse config as described by manpage
    (cherry picked from commit 011805eae07ee7be6140b95f6d8669763c55b3d9)

commit d3dc9fcb19af0e2660cd36028fb226bb2c11f527
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Fri May 25 21:59:23 2012 -0700

    Attribution for Paramiko 63
    (cherry picked from commit 00518b5044344adcc9a7b2363676165d9c80b80f)

commit 627f05e11646e585c1c9d5438d88f557bbc309b3
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Wed May 16 15:34:41 2012 -0700

    Changelog for previous commit
    (cherry picked from commit c9c7d36ce1139f3186e8494162d4fc918a38a052)

commit 898a4041a6f87552e2cfddf2e5798ee644baff23
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Wed May 16 15:34:06 2012 -0700

    Fix SSHException when re-keying over a fast connection
    
    Port of https://github.com/paramiko/paramiko/pull/63
    (cherry picked from commit a7fcb4def4d43f69a00861c5e6a28dcd4d1aae6f)

commit f04ddd420d0f92accf6142b94fcb25b93ebc14fa
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon May 7 22:03:13 2012 -0700

    Fix broken tests
    (cherry picked from commit 00e1072ee5abbc92b5df57e10cadb638d583d971)
    
    Conflicts:
    	tests/test_util.py

commit 01735419f3094852b650d34368c1e1126c9767a4
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon May 7 20:23:29 2012 -0700

    Bump to 1.7.14
    (cherry picked from commit c3a7e9d587447afdc714b02412594b8d0a9fecfa)
    
    Conflicts:
    	setup.py

commit 077fdae801da506dda05078d1486bf7f874efd43
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon May 7 20:09:28 2012 -0700

    Reorganize forwarded agent cxns to avoid errors
    
    Fixes [Fabric #562](https://github.com/fabric/fabric/issues/562).
    (cherry picked from commit 58aa52085bc664fbfce61c5981ba54c1452f7abf)

commit 1a033dc596d5c3c03a41fee2698d0089debc7313
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Apr 19 15:19:59 2012 -0700

    safe type checking (isinstance instead of type-is)
    
    Maintainer note: added changelog entry.
    (cherry picked from commit 8917d83221f2422f1c4c3e6fb8538ea9e1f9a150)

commit ef9b25188529dac439e5bc0549b00fa58bf27d01
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Fri Mar 30 18:38:40 2012 -0700

    Changelog re #15
    (cherry picked from commit ccb9d751771c616b8051f9f45edb19e0277be7b1)

commit 6b8284640e6b6b99cd68e2ed6bf0e572ed88e58a
Author: Olle Lundberg <geek at nerd.sh>
Date:   Fri Mar 30 15:59:58 2012 +0200

    Add support for variable expansion in SSHConfig
    (cherry picked from commit 31482a46d6c360e00284a7ccfd68362891ab316b)

commit 697524a79f2ca4e09248e455493d1bc684e63c06
Author: Olle Lundberg <geek at nerd.sh>
Date:   Fri Mar 30 14:08:14 2012 +0200

    Add basic support for parameter substitution in SSHConfig.
    (cherry picked from commit fb24d79695f83e14edc0ccd7ed2c0ca30ee8cde8)

commit 76e7dc0335b5852b364a549282fbe076ff7042a8
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sat Mar 10 20:56:36 2012 -0800

    Ignore test log
    (cherry picked from commit 9fd47b550195b33e23b19edc79af8c69bc86256f)
    
    Conflicts:
    	.gitignore

commit ae3ecbe5487d3948a8c4e13d8f0e7fd86f387f80
Author: Bobby Impollonia <bobby at affinesystems.com>
Date:   Sat Mar 10 18:10:23 2012 -0800

    Remove comparison between int and str
    
    The code had been doing 'n < self.__in_buffer' when it
    wanted to be doing 'n < len(self.__in_buffer)'
    
    In Python 2.x, this comparison (int < str) is always True.
    I found this while porting to Python 3 where it raises
    an error.
    
    The code has been working without complaints because always
    taking the true branch of this conditional is actually fine.
    We don't need the false branch, so drop the check entirely.
    (cherry picked from commit 0a013f829e9eb20fb037a2ac06c230d9074fbe90)

commit bd5c843040a9c183e1ce39afd65a519749eaa8db
Author: Bobby Impollonia <bobby at affinesystems.com>
Date:   Sat Mar 10 18:02:39 2012 -0800

    Replace hard tabs with spaces
    (cherry picked from commit c07eddb9e1b579fdaa335477680689d7b2865452)

commit a05b770c03844f028952158e618837ea34d22a9d
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Feb 27 22:41:16 2012 -0800

    Also as well? Y U NO ENGLISH GOOD
    (cherry picked from commit ece1a825e865232d0b2e4f80d96278460e1eac41)

commit d804a303a79db9d6bd1d4490342e178928b5fdc2
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Feb 27 22:40:43 2012 -0800

    Language tweak
    (cherry picked from commit 94ea149145e5d1d3890edd1ee62f27db3e347b18)

commit e41ab9194a500b27b472f108181839ed26a55606
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Feb 27 22:39:15 2012 -0800

    First draft of modern explanatory README
    (cherry picked from commit 4f7338bbfc5f2f157208b6343bf215cff4db126b)

commit e375d671a446e3352c908454995193f638de7bc5
Author: Silas Sewell <silas at sewell.org>
Date:   Sat Feb 25 03:11:54 2012 -0500

    Fix FSF address
    (cherry picked from commit 4db2ca594b64865d82be0bd347af48ab45c3bc03)
    
    CHANGED: only applied the address change to LICENSE and setup.py.
    
    Rest left untouched. :effort:

commit 11ca8134a21f5136e882feb660c9fcbb69ef5ad1
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Feb 13 16:02:00 2012 -0800

    Cut 1.7.13
    (cherry picked from commit 998377f353f2f17b6d00e7246ae0ed4628291ffd)
    
    Conflicts:
    	setup.py

commit 9c5791edb8693746d5aa421023b1c67b9fe45888
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Feb 13 15:01:18 2012 -0800

    Fixes #4, thanks again to @jaraco
    (cherry picked from commit b59430efef1c771c94b935eda8998ffcf899543f)

commit 9b2f36fc1f0aa0729a96dc2a973c285626599d1e
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Feb 13 14:39:20 2012 -0800

    Whitespace tweaks, thanks @jaraco
    (cherry picked from commit 3b20efcc141f6ddafe65fcdedba3800b817eb5f5)

commit 1882f3470b8d16b56fd958e6dbd9e6c8a0666946
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Mon Feb 13 12:47:59 2012 -0800

    Move fcntl import to avoid high level ImportErrors on Windows
    
    Fixes #5.
    (cherry picked from commit ec2aedac71d19b48aa8da9813ccae8e82eef981c)

commit c3e9b76d513e67f7091b6366911d581633db0936
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sat Feb 11 13:54:36 2012 -0800

    Clean up Makefile, ensure release is useful again
    (cherry picked from commit 3e4632979faf16d09fa60fd6b645451813ebc790)
    
    Conflicts:
    	Makefile

commit ac7f513ee8b73612353c180b38065fe53bb456c4
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Fri Feb 10 22:50:36 2012 -0800

    Release 1.7.12
    (cherry picked from commit c630917d0d0ff2ac4e1185f4077074cd3748d05b)
    
    Conflicts:
    	paramiko/__init__.py
    	setup.py

commit 2519e541b1c9c6b6247f3b65790149d18f0ee04d
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Jan 17 17:07:37 2012 -0800

    Changelog entry for io_sleep change
    (cherry picked from commit cbd9c4a76e9795680c4770612e277667575ac972)

commit 8208812ae6e13b4542bf0ca165f305d1f5d0d1aa
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Jan 17 17:05:17 2012 -0800

    Changelog entry for 1.7.11 (internal only though)
    (cherry picked from commit 5ce70f3cb08b8880580d79eaf1f9ab3293d7c89f)

commit 0916fbe29241e7553e95b10475dd6142253ab673
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Jan 17 12:24:25 2012 -0800

    Forgot to re-add import, derp
    (cherry picked from commit 474ace1ca4d53a4853825a2bc140b5a65e4542db)

commit 3d598a64b4c1152a98f5ee4174bb6ceb76922ca6
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Tue Jan 17 12:10:57 2012 -0800

    Add IO sleep to agent forward communications.
    
    Without this, use of agent forwarding causes
    high CPU usage on some clients.
    (cherry picked from commit 3030589aaafdba0a3b14183e0d03488580d21bf5)
    
    Conflicts:
    	paramiko/agent.py

commit c903245ed95291c278ed52a7bfcf17322b2b5d28
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Wed Nov 23 15:53:55 2011 -0800

    Trying something stupid re: ==dev
    (cherry picked from commit 543651bfd2b5958f0933e2bd108253ac30654098)
    
    Conflicts:
    	setup.py

commit d3b48e9b44786154954435b3d5e538fa6553e822
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Fri Nov 18 08:56:12 2011 -0800

    Bump to 1.7.11
    (cherry picked from commit 9234baed01df9ca3ac59920ae6f98808b7ca5213)
    
    Conflicts:
    	paramiko/__init__.py
    	setup.py

commit 10beb86e9e05c1fedaa7bf37a7dc4274bcdf40cb
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Fri Nov 18 08:55:07 2011 -0800

    Partially revert centralized version stuff
    (cherry picked from commit d9ba7a644c2170b6779ae586e70d2d9fe75ba439)
    
    Conflicts:
    	setup.py

commit 013d459487c16b9864e8e6e52ccf6870be1bd1e6
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:40:41 2011 -0800

    Goofed up the RST
    (cherry picked from commit 175075e045310cb5d06814fac7ffdfaafc0c7283)

commit 253a22a770aac37f9c3c941785b246bc0a2533a5
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:00:17 2011 -0800

    add ==dev install URL to setup.py
    (cherry picked from commit 48c21beac914c571d918c09678df11009c54d0c3)

commit 903646677b3b2d94dc35c3db3a09536eaa36f598
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:31:09 2011 -0800

    Bump dev version
    (cherry picked from commit 59cae8560bc338623194724b60451d21dde2fc33)

commit 7b7b23572b09627abc453a692a2e32951dd965d3
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:30:00 2011 -0800

    Let's not have 5 different freakin version strings
    
    Also bumps to 1.7.10
    (cherry picked from commit 01eea3326a79cf5df36be0dfd46cda7ba1cbae97)
    
    Conflicts:
    	README
    	paramiko/__init__.py
    	paramiko/transport.py
    	setup.py

commit 4d4780abaa9ee19920b3f5efd8fe08cd116bd515
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:12:34 2011 -0800

    Going to release 1.7.10 for ==dev
    (cherry picked from commit bd3a64fac20a18a10eea698a43add5417fc573bf)

commit 3cf76a85c4f9d719b55e4240369401d7443b6d9d
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:11:15 2011 -0800

    Add post-Paramiko changelog file for now
    (cherry picked from commit 08ff651d0fce6aecb0e6de5e147b0f009352c904)
    
    Conflicts:
    	CHANGES

commit 8510adcc96407b61ea65fd96a72df3f28532a038
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:12:34 2011 -0800

    Going to release 1.7.10 for ==dev
    (cherry picked from commit 95e464b238471f10b5132d0515fa2b928887c2db)

commit 096d73e567b68e78b5865e95bad4aa8495cc50b9
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:11:15 2011 -0800

    Add post-Paramiko changelog file for now
    (cherry picked from commit 3e41abb6beffbc8445f979d879f85066d9a8e42b)

commit 5f839942c7de70c70017b71500a4606d57ee64f7
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 17:00:17 2011 -0800

    add ==dev install URL to setup.py
    (cherry picked from commit e72b53788df0c052c4bf78ce386b0ae86e724dc9)

commit ba4dc2a26bdbc4f371b506b319c6fe66d462a22f
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 15:33:22 2011 -0800

    Don't mix tabs and spaces
    
    (cherry picked from commit 8c8d0a81ad41a5a4040823049f6548f07ac531b3)

commit a84bd27bfdc6ac8a125dcf8e4c23a0bb376c7b11
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 15:31:00 2011 -0800

    Use new-style classes, 2001 was 10 years ago
    
    (cherry picked from commit 85d0d97715edc6198ca9b07c7ca7dcb45d023b9f)

commit 212276af1378fa84811ac5c3504ffcebe1ee58a1
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Nov 17 15:18:35 2011 -0800

    Port poll-using code to use select() instead.
    
    (cherry picked from commit eb49bf4870b8ba099452fac7640878a5fc24d14c)

commit c46fddeb16ec9afff236c0cca2a3b509d811d713
Author: Ben Davis <bendavis78 at gmail.com>
Date:   Sun Nov 13 11:19:19 2011 -0600

    Added ssh agent support. Ported from https://github.com/robey/paramiko/pull/21
    (cherry picked from commit 35a173631f4d5be2e47d8880ee0a1df08f95cebc)
    
    Conflicts:
    	paramiko/agent.py

commit a94f73a392bfe5876ab09e14330d48106c7a5563
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:37:44 2012 -0700

    Bump to 1.7.9, setup.py/crypto update
    (cherry picked from commit ea8e73a389931962a2aea4c136a2a5d65d612c89)
    
    Conflicts:
    	setup.py

commit 987de8e7d5f7da50092c39eb0e00a224df61f42e
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:36:56 2012 -0700

    Crypto released a setuptools bugfix as 2.4.1.
    (cherry picked from commit 2279ef690932d8ba3627632f5e81bbf5f7bd8381)

commit 96d8eafc476e265c4f954846283f9f5ff0e1c6bb
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:36:36 2012 -0700

    Crypto 2.4 doesn't play well with setup.py/setuptools
    (cherry picked from commit 12cf1674fcd8bf216ec2f12f4ddd111eb8db3514)

commit 18612b7caa2311a7eab1cfbe2824f93c1de305cd
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:34:40 2012 -0700

    Take ownership of TODO file

commit 99859b8b021a5d13ca067a3e79560d6121f9c52f
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:28:34 2012 -0700

    Update version to 1.7.8, no need for 4 parts
    (cherry picked from commit 5e0a32902856b3b42e8bf4e72fec17fb30c78e66)
    
    Conflicts:
    	README
    	paramiko/__init__.py
    	setup.py

commit 13e65a2ce089fc42b6d0aa89284125daf4fae438
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:24:27 2012 -0700

    Tweak setup.py to match README
    (cherry picked from commit 673c427fe6fb39f1bb604eaf460daaaa0ce2875c)
    
    Conflicts:
    	setup.py

commit f8239015ec427a2b5e62afa8370885894483a356
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:21:22 2012 -0700

    Add additional Random.atfork() to prevent RNG errors in large runs
    
    Conflicts:
    	paramiko/transport.py
    
    Was: ssh 41f4566

commit 72ee77f4415b707ed2f4f567603c99343d14160d
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Sun Sep 23 14:19:15 2012 -0700

    Update README copyright notice (was ssh a228ab41)

commit 8f9b37add4070dd24b481719a79c72d0123ca424
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Thu Sep 13 17:17:34 2012 -0700

    Initial port of 3709d2e02bf67ccc272e1f2311e5db125a922ba0 from 'ssh'
    
    Re #17

commit edddc61fb5260b61a51e282b5ddfb3bab63a0983
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Wed Jul 4 20:43:49 2012 -0700

    Fix trailing whitespace re #28

commit 6ae99df2d5c13c4a915935c12bf8a8ec1f03843f
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Wed Jul 4 20:43:00 2012 -0700

    Add changelog entry re #28

commit a991b5d15163c770983fa8e5607c12779c6735ab
Author: Sofian Brabez <sbz at 6dev.net>
Date:   Sun Jul 24 14:09:11 2011 +0200

    document demo_keygen.py file in readme

commit a97b8b6da9720900a5b7fc3f9a83c438abdbbe67
Author: Sofian Brabez <sbz at 6dev.net>
Date:   Sun Jul 24 13:44:16 2011 +0200

    add priv/pub key generator demo

commit 3d08be043cdb92c1320b49cb357afea6248eafb7
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Fri May 25 21:58:38 2012 -0700

    Update changelog with #63 attribution

commit c4f873549a29f6165b89b6e0183bd9fc3b47a13a
Merge: 3228194 c51b3b2
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Fri May 25 21:58:07 2012 -0700

    Merge pull request #63 from dlitz/issue49-rekeying-fix
    
    Fix SSHException when re-keying over a fast connection

commit 322819454ddd3cc83a0c9ad591186997a8cb1ab2
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Wed May 16 16:03:10 2012 -0700

    Increment version for release

commit a6358f8d131b2c29babc82fc3d97cd3178d9638d
Author: Jeff Forcier <jeff at bitprophet.org>
Date:   Wed May 16 15:51:27 2012 -0700

    Merge #63

commit c51b3b208c228fe6482ef00b3572a19683e7bb98
Author: Dwayne C. Litzenberger <dlitz at dlitz.net>
Date:   Sat Mar 24 10:47:16 2012 -0400

    Fix SSHException when re-keying over a fast connection
    
    When Paramiko initiates a re-key request over a high-bandwidth, medium-latency
    connection, it erroneously terminates the connection with the error,
    "SSHException: Remote transport is ignoring rekey requests".  This is due to
    the hard-coded limit of 20 packets that may be received after a re-key request
    has been sent.
    
    See, for example, this bug report:
    
        "Transfer fails at 1GB: rekey window too small, hard-coded"
            https://github.com/paramiko/paramiko/issues/49
    
    This patch changes paramiko's behaviour as follows:
    
    - Decrease the threshold for starting re-keying from 2**30 to 2**29 bytes.
    - Decrease the threshold for starting re-keying from 2**30 to 2**29 packets.
    - Increase the limit of received packets between re-key request & completion
      from 20 packets to 2**29 packets.
    - Add a limit of 2**29 received bytes between re-key request & completion.
    
    In other words, we re-key more often in order to allow more data to be
    in-transit during re-keying.
    
    NOTE: It looks like Paramiko disables the keep-alive mechanism during
    re-keying.  This patch does not change that behaviour.

commit 7bcbc2419812f87cf06391da61684df205f131d3
Author: Robey Pointer <robey at twitter.com>
Date:   Mon May 23 13:49:47 2011 -0700

    version 1.7.7.1

commit afae8dd7c59dbe2d1b3f8650d6f826290de306cb
Author: Robey Pointer <robey at twitter.com>
Date:   Mon May 23 13:40:33 2011 -0700

    oops. fix potential exception when there's no ssh agent available.

commit 18f6a836daa4beb04776b8543b4fdbed7ace6930
Author: Robey Pointer <robey at twitter.com>
Date:   Mon May 23 00:40:37 2011 -0700

    version 1.7.7

commit db1c1efb7f6a966d89dc5ea79407b424d685a72a
Author: Robey Pointer <robey at twitter.com>
Date:   Sat May 21 19:42:28 2011 -0700

    remove the download link since that seems flaky

commit a139d543caa95c63aebd23954da8b61b9c0f17c0
Author: Robey Pointer <robey at twitter.com>
Date:   Sat May 21 19:30:06 2011 -0700

    slight readme cleanup

commit 5d9eeaedccd6321d182881b26961bbc8198e0aa9
Author: Robey Pointer <robey at twitter.com>
Date:   Sat May 21 19:29:38 2011 -0700

    patch from sugarc0de to call Random.atfork() when starting up, so paramiko can be used in multiprocess code

commit 22608540c3c5695637d9fa7e576a48e4af99c853
Merge: e891a5e d3162ac
Author: Robey Pointer <robey at twitter.com>
Date:   Sat May 21 19:12:35 2011 -0700

    Merge pull request #9 from tehfink/master
    
    support for openssl keys

commit e891a5e4734464f17f1b2029d873773028637597
Merge: 33482ff 044e702
Author: Robey Pointer <robey at twitter.com>
Date:   Sat May 21 19:11:34 2011 -0700

    Merge pull request #8 from garyvdm/master
    
    Untitled

commit 33482ff338ef5049b46ef61ac0d646bb5e5f7d58
Author: Robey Pointer <robey at twitter.com>
Date:   Sat May 21 19:08:46 2011 -0700

    require a newer version of pycrypto and point to the new page

commit 4efd0e6d3c0709a27d358f5e2654ae8e8782a4bd
Merge: 0a9596a 213ab2c
Author: Robey Pointer <robey at twitter.com>
Date:   Sat May 21 19:02:23 2011 -0700

    Merge pull request #7 from jelmer/master
    
    Fix for issue 6: paramiko does not try all available address families

commit 0a9596aed32a2daedfb15553587f460ecec9c8f2
Merge: e2add90 33fd998
Author: Robey Pointer <robey at twitter.com>
Date:   Sat May 21 18:57:09 2011 -0700

    Merge remote branch 'netik/master'

commit 33fd998a94fc94fa8e1c7ade07951a9cd5e10fbb
Author: John Adams <jna at twitter.com>
Date:   Tue Feb 1 02:43:17 2011 -0800

    patch ssh-agent handling to not leak file descriptors

commit d3162ac75bca79e4e3ac9d9d7a8db00341ac3e35
Author: tehfink <djsnickles at yahoo.com>
Date:   Sat Nov 20 00:28:30 2010 -0500

    support for openssl keys (http://www.mail-archive.com/paramiko@lag.net/msg00476.html)

commit 044e7029986a060552770feb1687b00862f1a6ba
Author: Gary van der Merwe <garyvdm at gmail.com>
Date:   Tue Aug 3 00:13:08 2010 +0200

    Use Crypto.Random rather than Crypto.Util.RandomPool.

commit 213ab2c2044e5db0a2a3f2611b36ffce27502666
Author: Andrew Bennetts <andrew at bemusement.org>
Date:   Thu May 13 12:56:39 2010 +0200

    Try connecting to each available address family until one succeeds.

commit e2add909811956b4a5cd91d290a3df45612ba75d
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Apr 25 17:05:06 2010 -0700

    fix spelling of "hierarchical" -- thanks, Thomas Guettler!

commit 1324242a630e460f2520fbe1ad0a0bd2e51f6fda
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Apr 25 16:44:33 2010 -0700

    ignore the egg-info stuff.

commit 81c7edc1a4561cabc396a4a2ad528e8c78570b71
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Apr 25 16:42:45 2010 -0700

    patch from Shad Sharma to raise an exception if the transport isn't active when you try to open a new channel.

commit 188c82eedec5d2a50b3baf5af3c6c5daffb51dbf
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Apr 25 13:36:19 2010 -0700

    patch from Michele Bertoldi to allow compression to be turned on in the client constructor.

commit 3242df7f098565024abb47a41aa0adfb70d22396
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Apr 25 13:34:54 2010 -0700

    i lost who sent this to me (sorry). patches to fix AIX.

commit f67cea44d07414806b37905bd58c589d6a48a0df
Author: Robey Pointer <robey at twitter.com>
Date:   Tue Apr 13 18:52:29 2010 -0700

    code style and fix test.

commit d268594ab1522e9b553ba0be9f2617c612c08d75
Author: Robey Pointer <robey at twitter.com>
Date:   Tue Apr 13 18:51:45 2010 -0700

    brittspace.

commit bf3a87fa9bafdc548a6017ca7c4ba1589584a3ff
Merge: cb913d5 b4ee844
Author: Robey Pointer <robey at twitter.com>
Date:   Tue Apr 13 18:41:28 2010 -0700

    Merge remote branch 'larrywright/master'

commit b4ee844a3cb06fb4fda889a5fb1eb702e4eaa31a
Author: Larry Wright <larrywright at gmail.com>
Date:   Fri Dec 18 17:02:55 2009 -0600

    added functionality to skip verifying the file, which works around sftp servers that remove the file immediately after it's been closed.

commit cb913d5d32b36f73a3ab202ea8a33f3e7e2d6a59
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Nov 1 22:01:04 2009 -0800

    bump to 1.7.6.

commit e0a9f91c149a10758694adfe574417566c650d0d
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Nov 1 21:33:13 2009 -0800

    brittspace.

commit 71e872e23ad343370869d1041b2debf32e676265
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Nov 1 21:28:47 2009 -0800

    bug 426925: lookup host keys correctly when they have a different port.

commit c628faa102024354af9fcad47200e6e1fea42d5f
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Nov 1 18:58:23 2009 -0800

    bug 411910: when asking for a sockaddr, ask for streams only.

commit a60c69c81caefa51f75c2b68356e59e1e77bc63a
Author: Robey Pointer <robey at twitter.com>
Date:   Sat Oct 31 17:55:52 2009 -0700

    bug 413850: patch from patrick mcnerthney. fix race between a server responding to an event and closing the channel.

commit e80cec73b63ba5a333acd3b1d4e35a69bf609b0f
Author: Robey Pointer <robey at twitter.com>
Date:   Sat Oct 31 16:10:52 2009 -0700

    bug 363163: copy the SSHClient AF patch to transport.py too.

commit d23ae79466f90efef8070b58e919af6be730cd02
Author: Robey Pointer <robey at twitter.com>
Date:   Sat Oct 31 16:07:55 2009 -0700

    ignore more.

commit 931f71e6273e5216bf50ec992915043dc9b22de5
Author: Robey Pointer <robey at twitter.com>
Date:   Sat Oct 31 16:06:53 2009 -0700

    bug 411099: chdir() isn't saving the cwd in a normalized way. added test.

commit 7da1f2c4a348dfafa6f7653eb05cba9613a6dec9
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 21:45:54 2009 -0700

    bump to 1.7.5.

commit f573017a1d56c0ef9fdb08598bf4a43f40c01952
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 20:53:00 2009 -0700

    patch from evan jones: simplify wait_for_event.

commit 62bc0ad79ac882cbef1b2f061e709ab781ccb80c
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 20:26:44 2009 -0700

    ignore extra fields in a hosts file, since apparently some apps are putting comments on the same line (?).

commit b4220657befbbd12831d3f9bd438ad7cf466c39b
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 20:17:47 2009 -0700

    oops.

commit 0840d8dd287310d1f226671b011d8f6a7f0f2eca
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 19:59:55 2009 -0700

    patch from sofian brabez to fix hexdump logging in sftp_client.

commit e56b36648defb3a11e4cc6b8bcd3f945e2d850dc
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 19:47:53 2009 -0700

    patch from jim wilcoxson: raise an error early if chdir will fail.

commit 60c6e94e7dd6d7ac65c88ce1231f55d311777a34
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 19:45:02 2009 -0700

    fix my email address to be the current one.

commit 0e2e882d0dd9e237019b74fb0cbe73d3000675d7
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 18:49:04 2009 -0700

    make the "auth type not permitted" message debug level, for bazaar.

commit e06dbde805df433e4c2c36d72276e45aba147b0b
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 16:08:13 2009 -0700

    patch from gary poster: allow multiple hostnames to be specified per block in the ssh config file format. bug #332382

commit 15f4bdb10576fc0fc49da926121d88a497a5a983
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 16:00:39 2009 -0700

    patch from andreux fort: add a timeout to the key exchange, so that if the remote side doesn't ever answer, eventually we give up. bug #378511

commit fe35f44f2e010c41411587817ccdc998d27168ab
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 15:19:10 2009 -0700

    close the local/remote files in finally blocks in sftp get & put, so fds don't get lost. bug #379240

commit ac42ba88d70ec0cc6acc1b1d5526591de5d1eae2
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 15:04:54 2009 -0700

    patch for ARC4 cipher support, and CTR block chaining, from denis bernard.

commit a0313a47e4dd978c0d0fcae2cd308239312ffea0
Author: Robey Pointer <robey at twitter.com>
Date:   Sun Jul 19 15:03:45 2009 -0700

    simplify the "simple" demo.

commit adb349bf2b6edcaa214849901edd07d2e97b5aba
Author: Robey Pointer <robey at twitter.com>
Date:   Sun May 10 21:19:10 2009 -0700

    fix tests.

commit 62d49255d5711163bc7a51b8f09097ea3dac7451
Merge: 4e2b250 044814b
Author: Robey Pointer <robey at twitter.com>
Date:   Sun May 10 21:12:41 2009 -0700

    Merge commit 'shikhar/master'

commit 4e2b250ace1c782708cb294cfc418b423cc5e55d
Author: Robey Pointer <robey at twitter.com>
Date:   Sun May 10 21:11:33 2009 -0700

    rename this file for github

commit 044814ba16467264173b9c6573e410d6cbceb6e0
Author: Shikhar Bhushan <shikhar at schmizz.net>
Date:   Sat Apr 18 18:50:19 2009 +0200

    typo

commit 20e3306f3d8554648ac9cf2c1e33b780b7dfd7ff
Author: Shikhar Bhushan <shikhar at schmizz.net>
Date:   Sat Apr 18 18:26:12 2009 +0200

    fix ipv6 support in SSHClient

commit 5e32b33be79c858fd7bd2cda37242e81e71e0f79
Author: Robey Pointer <robey at twitter.com>
Date:   Tue Apr 14 18:55:25 2009 -0700

    patch from maxime ripard adding ip6 support.

commit 7bd95eb0d0f126087b3ae59654b2154d82476045
Author: Robey Pointer <robey at twitter.com>
Date:   Tue Apr 14 18:15:57 2009 -0700

    patch from james bardin: bail early if the high byte is zero.

commit 74b581c170bdf177eac2a1c5e1f6480b2eee24bf
Author: Robey Pointer <robey at twitter.com>
Date:   Tue Feb 17 18:30:48 2009 -0800

    bug 300536: allow a really long banner before the SSH handshake.

commit 5def1120136336696b9bde81bcfb162b09174948
Author: Robey Pointer <robey at twitter.com>
Date:   Mon Feb 16 01:35:22 2009 -0800

    fix silly exception message.

commit 25417575ef795c36d2663c88fdedba5bfae5cc26
Author: Robey Pointer <robey at twitter.com>
Date:   Mon Feb 16 01:24:26 2009 -0800

    make the transport a daemon thread since python 1.6 doesn't call the atexit handler correctly any more. also allow unicode as a hostname.

commit 967b0011f0e61cd724fa5a9f020890073f9fd75a
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 1 18:14:55 2009 -0800

    [project @ robey at lag.net-20090202021455-ohooxd5bzsf8age3]
    old todo comments

commit 2fda984906a9b2396673672e11b58c7de2b8cf6a
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 18:22:21 2008 -0700

    [project @ robey at lag.net-20080707012221-5fz3q4j2gvqlbmhl]
    bump version to 1.7.4 (desmond).

commit 97ea105d4e143a6a21ed1b2338553e514b5d6132
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 17:23:55 2008 -0700

    [project @ robey at lag.net-20080707002355-kl44yurqgjfhk7dd]
    clarify documentation about non-blocking mode

commit 035766fab0c3e4794f6e43d0988848604b12bf36
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 17:23:35 2008 -0700

    [project @ robey at lag.net-20080707002335-9fw0bd9tj7ndcueg]
    clarify feature was added in 1.7.4

commit fbfd8126c86af8d10e96dda7a345a33afd41f091
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 16:08:15 2008 -0700

    [project @ robey at lag.net-20080706230815-v2ybqxm237zw0wa0]
    add a callback method that can be used to track get/put progress in
    SFTPClient. suggested by Phil Schwartz.

commit e8748645a374d14f066cab3aefb82bf85c3b73bc
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 15:58:42 2008 -0700

    [project @ robey at lag.net-20080706225842-25rg9uk9ksyxxbyf]
    fix convoluted logging method

commit 598971096858d0d310ce070d4695f7e471f89489
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 15:39:38 2008 -0700

    [project @ robey at lag.net-20080706223938-fn82xx2k0zvklazm]
    more ignores

commit c60133d85b3423c563ee8b54a8dd5c6942b3f2b3
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 15:37:20 2008 -0700

    [project @ robey at lag.net-20080706223720-l52qact0g0q5gkuz]
    ack, somehow my previous commit ERASED this file!
    i'm starting to lose my bazaar-fu from using git too much. :(

commit 60c46d7b7c8dff5f59721ac8dd3927371615119a
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 15:32:21 2008 -0700

    [project @ robey at lag.net-20080706223221-k0hzhvsayzmw6w3e]
    patch from Mark Hammond to use win32gui instead of win32ui, to avoid
    a dependency on MFC. only affects windows.

commit abf891af0b712f51b888e6f42efee1de183415eb
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 15:16:05 2008 -0700

    [project @ robey at lag.net-20080706221605-t6ashnnjr1aurmn4]
    SFTPClient.put() now returns the stats object it collected during
    verification. suggested by Jude Venn.

commit c2ef48cf18c2653aa9f083061a3df942ed9d316e
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 6 13:37:06 2008 -0700

    [project @ robey at lag.net-20080706203706-zqxb69qrcgyuf90n]
    allow multiple key files to be specified in SSHClient.
    suggested by Bernhard Walle.

commit 305f5e09a58d4c80740faf564dfdca875d98245f
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 3 22:39:06 2008 -0700

    [project @ robey at lag.net-20080604053906-vz5toqvlp5miqy1x]
    merge deadlog bugfix from dwayne litzenberger.

commit e47e2035403e4dc92609d4a8aae8f4f41874a9fb
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 18 16:12:21 2008 -0700

    [project @ robey at lag.net-20080518231221-znq4h93fzdgotwf1]
    include an empty language field on sftp responses, since some clients
    expect it.

commit d21d38450961406d87ec87c0802465fbc56a01e8
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 18 15:45:25 2008 -0700

    [project @ robey at lag.net-20080518224525-cjid4qbn81eve3zt]
    merge dwayne litzenberger's fixes for randpool on windows.

commit c52b11ba17793e8924320411dcfa89d58d0c60c7
Author: Robey Pointer <robey at lag.net>
Date:   Sun Mar 23 23:51:54 2008 -0700

    [project @ robey at lag.net-20080324065154-w8p2lhawmsbynxc0]
    bump version to 1.7.3 (clara)

commit f5f203d5eaffa7496bcf8684050d9e83970a1bb1
Author: Robey Pointer <robey at lag.net>
Date:   Sun Mar 23 23:51:39 2008 -0700

    [project @ robey at lag.net-20080324065139-nmvo5goh1izbd3gr]
    not all windows boxes have winrandom

commit f35a65bb0c26b15ee4e84bc5714dda16eb156a9d
Author: Robey Pointer <robey at lag.net>
Date:   Sun Mar 23 23:51:11 2008 -0700

    [project @ robey at lag.net-20080324065111-qv8icii767fqex9j]
    fix some unit tests for windows

commit 9a6ffec93fea7627a5c1d85e19c5060c1c0e0943
Author: Robey Pointer <robey at lag.net>
Date:   Sun Mar 23 01:21:10 2008 -0700

    [project @ robey at lag.net-20080323082110-o9fglwyiozn08tm9]
    bug 191657:
    clean up usage of the channel map by making a special object to hold the
    weak value dict.

commit e5a1b4bf569599b53016374f96e53639799ed6d3
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 22 19:57:51 2008 -0700

    [project @ robey at lag.net-20080323025751-de0lem9pi4oydt2g]
    bug 193779:
    catch EOFError in auth, and turn it into an auth exception. add a unit
    test to verify.

commit 7b819f0e917dadedb7cc9399d33fe7b5f9c63a9e
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 22 19:45:55 2008 -0700

    [project @ robey at lag.net-20080323024555-s95m60jycc8dt14q]
    bug 192749: document that SSHClient.connect may throw socket.error.

commit 50d63690eecc21896c1b210f5e097f854ed4571d
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 22 19:36:16 2008 -0700

    [project @ robey at lag.net-20080323023616-fpo17kr0qxxbgthv]
    bug 200416:
    don't create a new logger for every channel and every sftp client or server.
    it causes python to leak lots of useless logger objects, because they never
    go away. instead, log the channel # in the message, and use only a couple of
    standard log nodes.

commit 7854d600a74179d5f92a2f382f01da10da99d4d5
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 22 19:07:09 2008 -0700

    [project @ robey at lag.net-20080323020709-ub8ya3xkh1ebywfa]
    add exit_status_ready for justin cook.

commit c0fc67acc9d5365c706057223880ba3f0c775d95
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 22 19:03:09 2008 -0700

    [project @ robey at lag.net-20080323020309-9bjcp7l2ygdu49d2]
    slight tweak to test, make it verify the length too

commit 419b11b74118e27b8f71bdc695d0112cd0e3f378
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 22 19:00:54 2008 -0700

    [project @ robey at lag.net-20080323020054-ar5bmythf7fr5rgk]
    in the test that verifies key renegotiation during a large file "put", also
    do a "get" of the large file (with prefetch) to verify that nothing screwy
    happens.

commit 613d2a2f24ea534b9c6b9d1778e6146d53221707
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 22 14:54:55 2008 -0700

    [project @ robey at lag.net-20080322215455-xb70ktut2l1bkzsx]
    patch from dwayne c. litzenberger to fix urandom support to work from
    within a chroot. i modified it slightly to remove os.urandom calls
    completely, since our direct file access is nearly identical to what
    python was doing.

commit 4f52c1390040511a302c1a6c00e568eaa9ebd992
Author: Robey Pointer <robey at lag.net>
Date:   Tue Feb 19 22:00:35 2008 -0800

    [project @ robey at lag.net-20080220060035-yi82h5kc7jod5hlu]
    add a demo for reverse port forwarding.

commit 7ebda9a76da683a50fb993c5216fee4288a18aa1
Author: Robey Pointer <robey at lag.net>
Date:   Tue Feb 19 22:00:30 2008 -0800

    [project @ robey at lag.net-20080220060030-jih2gfguzp6jbwog]
    verify WarningPolicy is exported

commit ceb65ed55fe3f1ccf0d4866c6562736684566f96
Author: Robey Pointer <robey at lag.net>
Date:   Tue Feb 19 21:59:38 2008 -0800

    [project @ robey at lag.net-20080220055938-c772bcrnw9lm2kcd]
    for forwarded-tcpip connections, stuff the origin_addr in a public field in
    the Channel, in case recipients find it useful info.

commit 73c8dadb624b0cd1c480507d5a3068b6074dd9fe
Author: Robey Pointer <robey at lag.net>
Date:   Tue Feb 19 21:58:49 2008 -0800

    [project @ robey at lag.net-20080220055849-xmjvp8m0lqyz4cf1]
    change -l to -p for consistency

commit e963435e92231787e1ed7f75781b19639f6a5879
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 18 23:51:27 2008 -0800

    [project @ robey at lag.net-20080219075127-fx3aq6ijgm38oxy6]
    cleaned up "forward" example.

commit 3319f556d6d4dda4d33165fbaccc332c21cf6502
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 18 23:47:36 2008 -0800

    [project @ robey at lag.net-20080219074736-1fkyp8jl95amj5ky]
    add WarningPolicy to SSHClient, which logs a warning when a server host key
    isn't known, but allows the connection. also added an option to avoid
    searching for private keys, and made it check ~/ssh/ for windows.

commit 9e67c45053cf330e4122f18f60f9257214231d3d
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 17 21:12:29 2008 -0800

    [project @ robey at lag.net-20080218051229-xtylb1poe246k2ci]
    merge patch from Dwayne Litzenberger to fix unit tests on python 2.3.

commit cb3a0a4c3d2ee86c2b8d065be8f294a974a3c704
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 17 20:59:00 2008 -0800

    [project @ robey at lag.net-20080218045900-wh5168fjqq2o80kd]
    merge patch from Dwayne Litzenberger that lets you ask an SSHClient not to
    try agent-based auth.

commit d81e0038d2d1729dde50fbb0e90b39089f485b19
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 17 18:41:39 2008 -0800

    [project @ robey at lag.net-20080218024139-i2t8y0f0dd93xjo1]
    bug 189466: fix typo in osrandom.py (from patch in bug report) and add a
    friggin' unit test.

commit 06faa6f2ed7015ba49ee4999cc91c8d1f7707ce3
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 17 16:32:36 2008 -0800

    [project @ robey at lag.net-20080218003236-d2zgw43ys7xrccdx]
    explain why we check ~/ssh/ in the demos

commit 888aa8d5b7288496343e2700f94c56ddd25f2e65
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jan 23 20:50:17 2008 -0800

    [project @ robey at lag.net-20080124045017-dfqiamorj356btrd]
    fix the utf-8 password bug for good (aka bug 177117) and add unit tests
    this time.

commit 953392c0a107a087a774e0cc62101c2e541c8ef3
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jan 23 17:41:21 2008 -0800

    [project @ robey at lag.net-20080124014121-95bt9p4n4k8lw72i]
    remove some now-unneeded code.

commit 31544301f5a57840d97e2bf94a6fcf358ad7c47a
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jan 23 17:38:49 2008 -0800

    [project @ robey at lag.net-20080124013849-jno9xkgwvvqrvuov]
    split auth tests into their own file, and clean up the remaining transport
    tests a bit (use existing refactoring).

commit 4031ae9292d4f3716752c77fedaeddba8bf879d2
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jan 21 18:59:08 2008 -0800

    [project @ robey at lag.net-20080122025908-h8xm28k72umoeo7y]
    bump to version 1.7.2 (basil)

commit 84eebc02f6088347ab1a76c3e53330538a0ab044
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jan 21 11:42:16 2008 -0800

    [project @ robey at lag.net-20080121194216-q3n5ovpeyiqjua6p]
    patch from dwayne litzenberger to fix the PRNG to be more resilient when
    using windows, and some forking/threading environments.

commit 38835bc24ca147b46470d063bce94670eaf901f8
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jan 21 11:08:42 2008 -0800

    [project @ robey at lag.net-20080121190842-mq94nybu8qxhw1jl]
    for password authentication, only utf-8 encode the password if it's in
    unicode. this should let clients work around servers that expect non-utf-8
    passwords (possibly because they predate the RFCs).

commit ba1fd0d61bc5c103004d496473681b2a4dce0f3b
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 30 21:29:50 2007 -0800

    [project @ robey at lag.net-20071231052950-8h599bnez3sgbf2e]
    patch from david guerizec for direct-tcpip forwarding support, and a unit
    test added by yours truly.

commit 06d3471b463ffe798d42e7d24e294bbc616d8358
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 30 16:34:41 2007 -0800

    [project @ robey at lag.net-20071231003441-njdbcgbrqskrgtiw]
    merge patch to allow bufsize param in SSHClient.exec_command()

commit d70878831c67c3b2d76ab304edadfaed3cfbb980
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 30 16:32:59 2007 -0800

    [project @ robey at lag.net-20071231003259-xwwescnkvb3e6vxc]
    be more explicit about setting buffering options, and make the default
    be "unbuffered", because with buffering on, writes are buffered, which can
    be very confusing over ssh and usually not what you want.

commit a3128c63de7fc1aaeb44c455495accd3149a773c
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 30 14:04:03 2007 -0800

    [project @ robey at lag.net-20071230220403-9c9735x0tfr88dd8]
    oops, fix typo.

commit 92e92a9297770661eb578bfab2735136e3d98a5b
Author: Robey Pointer <robey at lag.net>
Date:   Tue Nov 20 00:25:27 2007 -0500

    [project @ robey at lag.net-20071120052527-hloi0b30yngbay0x]
    add send_ready() and a unit test.

commit 2fcbacee7fc4fe4780c5188d6e247506cab197de
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 19 11:44:55 2007 -0800

    [project @ robey at lag.net-20071119194455-u69od9ynz2n4x7ch]
    merge tab fix

commit db97851f36ec994ebef8ed257cff371e15517fa7
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 9 22:52:22 2007 -0800

    [project @ robey at lag.net-20071110065222-xt335qy6c4s6flze]
    patch from james bardin to allow closing an SSHClient more than once. :)

commit 645bdfd861ba62ff39ab0d9fbcf5ffc53a86f87f
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 9 22:51:21 2007 -0800

    [project @ robey at lag.net-20071110065121-76ooutayf5dvvuqh]
    add get_transport() to fetch the Transport from an SSHClient.

commit 9bc7c13ad71ca3b2a61b258c49377cc954670434
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 9 22:51:03 2007 -0800

    [project @ robey at lag.net-20071110065103-a169t3ijqapq0zlo]
    fix some typos.

commit 758c18a28b1ff5df1a920d02ef1e9df52853a677
Author: Robey Pointer <robey at lag.net>
Date:   Sun Oct 28 20:05:20 2007 -0700

    [project @ robey at lag.net-20071029030520-ozmne7y4l6037m8h]
    bug discovered while porting to jaramiko: old-style gex wasn't creating
    the proper hash. fixed.

commit e3d9b90ea1f25792e652a0809b37b52635243932
Author: Robey Pointer <robey at lag.net>
Date:   Sun Oct 28 20:03:44 2007 -0700

    [project @ robey at lag.net-20071029030344-9adfzb9ulfodtepu]
    bug 157205: select() doesn't notify incoming stderr data, because stderr's
    pipe isn't hooked up to the fileno() BufferedPipe. to fix, i added an "or"
    pipe-event that can be triggered by either stdout or stderr, and hooked
    them both up to fileno(). added a unit test for the bug and one for the
    "or" pipe.

commit 80b9e289cef4fc0939141ccf15751017a58a1637
Author: Robey Pointer <robey at lag.net>
Date:   Sun Sep 23 23:25:34 2007 -0700

    [project @ robey at lag.net-20070924062534-5yemkpyjy2sssvjn]
    bug 137219: handle EINTR in a read or write, if python doesn't.

commit 2cf5448d430db8926d0af587b72d74a34fc5bd11
Author: Robey Pointer <robey at lag.net>
Date:   Fri Aug 31 20:13:48 2007 -0700

    [project @ robey at lag.net-20070901031348-6x0zif4cdtqu4vvu]
    jon slavin points out that using the 'cmp' keyword is not compatible
    with python 2.3.

commit 39b45b4000e1422309e56004fc863834e6674beb
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jun 10 21:45:06 2007 -0700

    [project @ robey at lag.net-20070611044506-2c1c1t2avdr3yuaa]
    bump up to 1.7.1 (amy)

commit 7431c59c20a3661b8a6a0fb1d4d3417bc3a25e45
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jun 10 21:44:47 2007 -0700

    [project @ robey at lag.net-20070611044447-ewcm7qcrmtdfyspq]
    change README to rest format

commit 77c69301f4d6789ad3cc4144019a48373d43efb3
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jun 10 21:35:23 2007 -0700

    [project @ robey at lag.net-20070611043523-ol2r0nbenkjc7abb]
    create new TODO file

commit 7c7880f3688c63ce9bd57e2ca93926aec92f23ef
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jun 10 21:13:19 2007 -0700

    [project @ robey at lag.net-20070611041319-llhshb80tvjvlhah]
    move the news entries to a new rest file

commit 946e4dbc2925bd7bc151736107e46527323f66b7
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 20 19:35:45 2007 -0700

    [project @ robey at lag.net-20070521023545-8a36vex4ewgdxcwk]
    merge in a modified form of a patch from alexander belchenko.  this lets
    windows users use the 'win32all' module *or* the 'ctypes' module, if they
    have ctypes installed.  python 2.5 comes with ctypes in the standard
    library.

commit 58e26ae41bada74198abd81ebe0040fd0ea6a2b4
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 20 17:23:34 2007 -0700

    [project @ robey at lag.net-20070521002334-6bx5g0zrnb10sgyd]
    add optional timeout parameter to SSHClient.connect(), based on a patch
    from james bardin.

commit afa5e0594e5095106fc9ef7824820d26fec274a6
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 20 15:57:04 2007 -0700

    [project @ robey at lag.net-20070520225704-j1czjtrl2hu7t1pj]
    add a get_channel() method to SFTPClient, to retrieve the underlying channel.

commit 3229cd0f94c75504e66e40cce088a3ed4c6edfec
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 20 15:56:22 2007 -0700

    [project @ robey at lag.net-20070520225622-ozs9cguu8ipaxt85]
    patch from wesley augur: expose the 'longname' field from listdir_attr().

commit 920b1723606f5cf3cf16155dedeaa9c1b633af82
Author: Robey Pointer <robey at lag.net>
Date:   Mon Mar 26 00:58:19 2007 -0700

    [project @ robey at lag.net-20070326075819-y7972z9cy3ffmw76]
    expose PKey for documentation, so inherited methods can be seen in DSSKey and RSAKey

commit 6b71c642d1049aa2c05f79c1ea6443ae75e89085
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 18 13:23:32 2007 -0800

    [project @ robey at lag.net-20070218212332-ufb5mk2ne0bzamx5]
    oops, fix doc typo

commit cb0e01dd867067a6bd6dd7bfc44d4618e6508348
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 18 13:22:28 2007 -0800

    [project @ robey at lag.net-20070218212228-qdk8w1n4is0cady3]
    bump version to 1.7 zubat

commit 87d97fa2091d42b1764cc482a03e1e2005798a45
Author: Robey Pointer <robey at lag.net>
Date:   Tue Feb 13 11:21:09 2007 -0800

    [project @ robey at lag.net-20070213192109-axy7gl61x7w0cpbp]
    add get/put to the sftp demo

commit 83b335e10f1129e54e5fa5f8c72acb5407c21219
Author: Robey Pointer <robey at lag.net>
Date:   Tue Feb 13 11:17:06 2007 -0800

    [project @ robey at lag.net-20070213191706-v8djxd4jiunb3his]
    bump copyright year to 2007

commit 1a51090969473b657af6ee265ab6b13e4376d589
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 12 10:30:50 2007 -0800

    [project @ robey at lag.net-20070212183050-kaf5lvrbw46v9i59]
    improve x11 test and add a test for reverse port forwarding

commit b9f43f3f06da2868a7f19eef8ab2b8080bdb6a1c
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 12 10:30:21 2007 -0800

    [project @ robey at lag.net-20070212183021-0c9dx3w16m0x2non]
    add a convenience method for open_forwarded_tcpip_channel

commit ab2e5a710e18f6de3033b82f437840529db862ca
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 12 10:29:55 2007 -0800

    [project @ robey at lag.net-20070212182955-eaqi0dhzk0p8tw02]
    slightly improve docs; mention check_channel_x11_request

commit 44af09309094a5347fbba1f3265d03550e885d16
Author: Robey Pointer <robey at lag.net>
Date:   Sat Feb 10 18:26:13 2007 -0800

    [project @ robey at lag.net-20070211022613-tvtcqzmho5cxr55u]
    fix a couple of typos discovered by mczepiel.

commit ecb8ffe37324f802500c219e6dc93128db87bad9
Author: Robey Pointer <robey at lag.net>
Date:   Sat Feb 10 18:25:53 2007 -0800

    [project @ robey at lag.net-20070211022553-mjbl0w7wygpl7os5]
    add another test to check out private key auth.

commit f384749a8c90f706394db6c64ba022998c9aa54c
Author: Robey Pointer <robey at lag.net>
Date:   Sat Feb 10 15:58:28 2007 -0800

    [project @ robey at lag.net-20070210235828-2a24iw2xqe4lnf42]
    patch from mpool to fix a python 2.5 warning: stat() returns floats for
    times and we want to encode them as ints.

commit 21a42f5f3388e91ca6dc4e91bf824dfc85fc7944
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jan 22 13:17:18 2007 -0800

    [project @ robey at lag.net-20070122211718-02rz92vb9626vur4]
    an errant slash was making unit tests unrunnable on windows

commit c1e3e85353a29141daeca5c81fef57e2ea36c12c
Author: Robey Pointer <robey at lag.net>
Date:   Wed Dec 27 16:40:16 2006 -0500

    [project @ robey at lag.net-20061227214016-ebfnh1q09zt8z3ej]
    as john arbash meinel points out, this assert wasn't validating internal
    consistency, because a readv() request may ask for more data than is left
    in the file.  so remove the assert.

commit c570f1a35a0fde2a576062e84be8d4b91bd3ad91
Author: Robey Pointer <robey at lag.net>
Date:   Wed Dec 27 14:41:21 2006 -0500

    [project @ robey at lag.net-20061227194121-hzrmwbb6ea14unkg]
    once, this test failed, so add a timer

commit 0a63d74a69d1124b6cd28d2c652c79dd82ec72ec
Author: Robey Pointer <robey at lag.net>
Date:   Wed Dec 27 14:41:04 2006 -0500

    [project @ robey at lag.net-20061227194104-ztyb6hi94wp9egp2]
    fix bug in prefetch confirmation

commit db89be96ef56be4621902dafb221a5d8307d3ef0
Author: Robey Pointer <robey at lag.net>
Date:   Mon Dec 25 20:27:48 2006 -0500

    [project @ robey at lag.net-20061226012748-lmbxlsue9q2jzk8x]
    if connecting to the agent fails, assume it's just not there, and don't
    raise an exception.  (suggestion from martin pool on bazaar-dev.)

commit bc66f5eed2b5447834881304912aba1118e8712e
Author: Robey Pointer <robey at lag.net>
Date:   Mon Dec 25 20:26:31 2006 -0500

    [project @ robey at lag.net-20061226012631-dlhl2akelqy8z0v8]
    remove silly comment about compression not being tested

commit 5a30821a7dab84364ee7e881b74169339978c776
Author: Robey Pointer <robey at lag.net>
Date:   Sat Dec 16 17:18:40 2006 -0800

    [project @ robey at lag.net-20061217011840-wndj9dyd2f9g512e]
    don't need to expanduser twice

commit 029b8989dbdde898f0ee4e09e17153f4efa2e416
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 15 14:21:08 2006 -0800

    [project @ robey at lag.net-20061215222108-7pu0151970w1e1lp]
    add a ResourceManager to replace __del__ methods, and use it in SSHClient
    to automatically close any open transport when the SSHClient is collected.
    this won't work on Transport itself (to close the attached packetizer)
    because Transport starts up its own thread, and the threading library
    keeps a Transport object alive to run that thread.  i think that's okay;
    the SSHClient interface is meant to be the easier one, so that's the one
    where it's important that some auto-cleanup is attempted.

commit 7058f5ead235ce5650d4b9d8997a6901e68bc7da
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 15 13:19:36 2006 -0800

    [project @ robey at lag.net-20061215211936-rgc3uzy5ai9h6qho]
    bug 75370: notice garbage sftp packets
    since sftp packets shouldn't be larger than about 32k, if the first length
    byte is non-zero (ie, the packet size > 16M), raise an exception.

commit 76285309cf57f5be12e6ac066c53393e382cf1d5
Author: Robey Pointer <robey at lag.net>
Date:   Sat Dec 2 18:33:34 2006 -0800

    [project @ robey at lag.net-20061203023334-72zo500ys0l1le30]
    potential port forwarding support; probably buggly cuz i haven't added unit tests yet :)

commit aaa97d72c0571b517cc0ab2fc485b87cdfd8be5d
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 27 11:20:23 2006 -0800

    [project @ robey at lag.net-20061127192023-ns5lhww0jc84f21t]
    absorb socket.errors caused by a closed socket if we knew it was closed

commit fec76c51b161dbf823e0b3d58d0fd0ab324d2443
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 20 16:11:17 2006 -0800

    [project @ robey at lag.net-20061121001117-8mf8zzltvfvzzrv7]
    add support for opening x11 channels, and a unit test

commit 48bb10694b67a66f2c524dcca8a867319e60b87c
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 20 11:21:37 2006 -0800

    [project @ robey at lag.net-20061120192137-1rcpiiq9mcd58m76]
    reorder the closing of the pipe in Channel.close() to make sure it happens even when the channel is closed by the remote host first

commit b956cc48317dcc2440a64a9295b8fdd6cc021fe3
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 19 12:55:58 2006 -0800

    [project @ robey at lag.net-20061119205558-p5p2tmqx0xt7hq9r]
    bump version to 1.6.4 (yanma) and trim the README changes-history a bit

commit a9c51b23cea3a912cf675e65b867e297a39ce9aa
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 12 20:17:42 2006 -0800

    [project @ robey at lag.net-20061113041742-e24468a63d31b8bd]
    sometimes the sftp module is used with raw sockets, not just paramiko
    Channels.  in this case, calling recv() will never return.  so notice
    this and use select() to give python a chance to notice a closed socket.
    this kind of thing is especially useful for unit tests.

commit 48afc3082a841ca5416fbf7ba8db94f190221638
Author: Robey Pointer <robey at lag.net>
Date:   Sat Nov 11 22:30:54 2006 -0800

    [project @ robey at lag.net-20061112063054-bf71926ff8c98c68]
    a bit of cleanup in close() to try harder to avoid having lingering threads

commit e2d83576224825d6a727d7675da6f712d354ad50
Author: Robey Pointer <robey at lag.net>
Date:   Sat Nov 11 21:56:17 2006 -0800

    [project @ robey at lag.net-20061112055617-098a150cf051bffa]
    try a trick that should let 'hostkeys[hostname][keytype] = key' work for
    HostKeys objects again.

commit bee3535484c8d8a2005b5f3b6bd3b20ac4ab3edb
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 10 16:53:30 2006 -0800

    [project @ robey at lag.net-20061111005330-08c517e2576693bd]
    use python from env for unit tests

commit e736341e2018b1e92d426d72ef74f43462f2a327
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 10 16:44:13 2006 -0800

    [project @ robey at lag.net-20061111004413-7bab08f1bad7f96f]
    bug 70398:
    allow constructions like:
        hostkeys['hostname'] = {}
    to create an empty host entry object, so that future attempts to set
    keys will at least not throw an exception.  (they'll still silently do
    nothing, though.)

commit 482d0bcef2ab01c98db388f88d650b1d1d35e745
Author: Robey Pointer <robey at lag.net>
Date:   Tue Oct 31 14:37:47 2006 -0800

    [project @ robey at lag.net-20061031223747-9fda3f2c1112c5dc]
    (bug 69222)
    on some recent linux kernels, a socket can return "readable" from select,
    but a subsequent read() will return EAGAIN.  this is against the contract
    of select(), so python's socketmodule doesn't catch it or handle it.
    therefore, we need to.  EAGAIN should now be treated the same as a
    socket timeout.

commit 4628a53acffa07af2a2d1b34fac83e196211c5fe
Author: Robey Pointer <robey at lag.net>
Date:   Tue Oct 31 11:06:17 2006 -0800

    [project @ robey at lag.net-20061031190617-1113fb493ff5b690]
    (bug 69330)
    in SFTPClient._auth, check for the existence of the rsa/dsa keys before
    trying to open them, so that an I/O exception doesn't mask an earlier
    one.

commit f076c51d4e0fad84be29b10f8ae977451347cb07
Author: Robey Pointer <robey at lag.net>
Date:   Tue Oct 31 10:50:35 2006 -0800

    [project @ robey at lag.net-20061031185035-b57ad8184c39063a]
    include setup_helper.py in the manifest

commit 7e27adacf1b670f3b34bd15b7be5fbef974a7548
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 14 18:56:28 2006 -0700

    [project @ robey at lag.net-20061015015628-371a037b5165d634]
    bump version to 1.6.3

commit f4199b5a287d69a5b26499331896c7de95f7da97
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 14 18:21:26 2006 -0700

    [project @ robey at lag.net-20061015012126-36370734592aff17]
    might as well assert this

commit 4d090c71a6609b6d7df0b4a4eb710e2561468bba
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 7 17:20:32 2006 -0700

    [project @ robey at lag.net-20061008002032-d6803b57bac4f62c]
    i think the compression needs to be inside this lock in order to preserve order

commit 93ab47740887aa00dfc23ed2c805adb227c0b844
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 30 20:45:25 2006 -0700

    [project @ robey at lag.net-20061001034525-8f78a989ecde720c]
    bug fix from mike looijmans: notify any thread waiting in accept() when the transport dies

commit 64b89b6efd42e2a091655dd96231636518e0397c
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 30 20:44:55 2006 -0700

    [project @ robey at lag.net-20061001034455-bf6880fdbd4dd29e]
    trivial doc fixes

commit 6e49ddbc44ec56de06c1a4d93acb2f429a494394
Author: Robey Pointer <robey at lag.net>
Date:   Tue Sep 12 00:31:53 2006 -0700

    [project @ robey at lag.net-20060912073153-4d8c5623d4c2aa7b]
    merge patches from wouter van heyst and john arbash-meinel for fixing tarballs on os x, and fixing md5 on linux

commit a4f09c31ed85be9f419461d6192a1b0db3c30839
Author: Robey Pointer <robey at lag.net>
Date:   Tue Sep 12 00:26:41 2006 -0700

    [project @ robey at lag.net-20060912072641-dc427855d7569dda]
    clean docs too

commit 31c26eafb90f245ea0d2baf60a5a573b362d901e
Author: Robey Pointer <robey at lag.net>
Date:   Mon Sep 11 10:56:04 2006 -0700

    [project @ robey at lag.net-20060911175604-bf2798fcebd62780]
    trap EOF errors when reading a response, and translate into SSHException

commit 4acb9589ced5a05d9f52f7fcb0f3f8630cb37c71
Author: Robey Pointer <robey at lag.net>
Date:   Thu Sep 7 19:39:59 2006 -0700

    [project @ robey at lag.net-20060908023959-de70f0675f25fa64]
    fixes from mike barber for chdir and sftp attr __str__

commit 305a4ae417089a17e6314055e37c4d74b1ecc978
Author: Robey Pointer <robey at lag.net>
Date:   Thu Sep 7 19:28:16 2006 -0700

    [project @ robey at lag.net-20060908022816-ea2856cefb9d83e0]
    fix from john arbash-meinel for the stub sftp server's default open mode

commit 682185bac161244838b7d6da0c2247db997145ff
Author: Robey Pointer <robey at lag.net>
Date:   Thu Sep 7 18:55:16 2006 -0700

    [project @ robey at lag.net-20060908015516-1b8ac2af031586fe]
    better way to change the module name

commit df20443b29b0da3e8ad0ebbdab07ed8573406790
Author: Robey Pointer <robey at lag.net>
Date:   Fri Sep 1 13:59:30 2006 -0700

    [project @ robey at lag.net-20060901205930-021bcc34e3d5d8c8]
    sadly, revert the append optimization -- it breaks for openssh

commit 1f4a3f19764bdc7483ae503a946e631681ab3e6e
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 29 11:18:36 2006 -0700

    [project @ robey at lag.net-20060829181836-1cd17df7729c4db8]
    remove usage of has_key, which is dangerous and deprecated

commit b23079b1350c45e46f77851b86c6b518da857a43
Author: Robey Pointer <robey at lag.net>
Date:   Mon Aug 28 18:22:31 2006 -0700

    [project @ robey at lag.net-20060829012231-328fee7de77036be]
    fix a couple of pcheck warnings

commit 2b8738d3ce4cdee85c02569927427676465b5e3c
Author: Robey Pointer <robey at lag.net>
Date:   Mon Aug 28 16:48:34 2006 -0700

    [project @ robey at lag.net-20060828234834-51542dc36057b361]
    fix __setitem__ to do the right thing

commit c2b38a1fb8cc7b41d1385027b8bf3c52abd02fda
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 22 19:56:10 2006 -0700

    [project @ robey at lag.net-20060823025610-adee7f6d9bd92725]
    ok, ok, switch back to open()

commit 145ceab54c454f6872e34c426d6f9c0aadccbd85
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 22 19:55:38 2006 -0700

    [project @ robey at lag.net-20060823025538-3f8a4d761d7d4118]
    when a file is open for append, don't stat to get the file position unless the user asks for it explicitly

commit 738e81033a2f0170990176c7d77c9d7e79abfd1a
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 22 11:28:19 2006 -0700

    [project @ robey at lag.net-20060822182819-26cf01113495c9a3]
    don't automatically make epydocs for the private (internal) methods and classes

commit cc3e383baf0f6db049264db1a55730cc6996fc35
Author: Robey Pointer <robey at lag.net>
Date:   Mon Aug 21 19:56:01 2006 -0700

    [project @ robey at lag.net-20060822025601-aab3b723b95d3a9c]
    add 'flags' param to SFTPHandle and make the default impl avoid calling tell() when in append mode; add proper append-mode support to stub_sftp

commit 49418d1145db07b189ebb72a5907518570252afd
Author: Robey Pointer <robey at lag.net>
Date:   Wed Aug 16 14:31:32 2006 -0700

    [project @ robey at lag.net-20060816213132-2e094c077d22dc50]
    bump version to 1.6.2

commit bfe8fac5bf0982d4602b2e76e2e9eb07fd20c6ae
Author: Robey Pointer <robey at lag.net>
Date:   Wed Aug 16 14:31:06 2006 -0700

    [project @ robey at lag.net-20060816213106-99cffe9de5d555c5]
    don't need odict anymore

commit 929ce8df7ad51ae0326e931a028f4c29649332bf
Author: Robey Pointer <robey at lag.net>
Date:   Sun Aug 13 12:50:45 2006 -0700

    [project @ robey at lag.net-20060813195045-ca4148e233794d4b]
    add a unit test to verify that all the paramiko symbols are exported correctly

commit 6d37b6b8106b80ebf46921058240cc676dffd7b9
Author: Robey Pointer <robey at lag.net>
Date:   Sun Aug 13 12:35:46 2006 -0700

    [project @ robey at lag.net-20060813193546-c92b58af1c27d156]
    missing commas in exported class list (bug 55946)

commit 4707b2d8d1d5663c7316497be6f4f74528c173eb
Author: Robey Pointer <robey at lag.net>
Date:   Sun Aug 13 12:32:33 2006 -0700

    [project @ robey at lag.net-20060813193233-10db2cfe4c53a1df]
    create a gzip file also, when building a release

commit 4bedcfbf39d1d0fc3bf2ded123bca4fba0b37a6c
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 1 11:27:15 2006 -0700

    [project @ robey at lag.net-20060801182715-f0977a00fbcce456]
    fix logic in checking prefetch buffers: don't stop looking for prefetched data just because all the buffers have arrived

commit 05de66db6dde903550862dc08a5409ac102fa487
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 1 11:23:57 2006 -0700

    [project @ robey at lag.net-20060801182357-e030af9570314145]
    use hexlify instead of home-grown hexify

commit 074dc36e6b277b5ffc6ac910fdc11934e38959f4
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 1 11:21:43 2006 -0700

    [project @ robey at lag.net-20060801182143-088ff687e0945937]
    use hexlify in tests

commit 7ac433a6ac7b2cdf8608e8571102d599a15febde
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 1 11:20:53 2006 -0700

    [project @ robey at lag.net-20060801182053-a74d120228b8009a]
    use hexlify instead of custom-made hexify in demos

commit 157484f5eb0132b7676e871862a9b3ff9e38508b
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jul 31 00:01:37 2006 -0700

    [project @ robey at lag.net-20060731070137-571efc087c20347a]
    clean up test.py a bit and allow filtering from the command line

commit 5bbe1a8f3653ef12ba73dd39eddae04d7c87b0b6
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 30 23:56:04 2006 -0700

    [project @ robey at lag.net-20060731065604-ec418957546f7ec9]
    explain about the new launchpad site

commit 4086a5cd35b1e08334d3f251cde65c96861be1c9
Author: Robey Pointer <robey at lag.net>
Date:   Sat Jul 29 11:28:01 2006 -0700

    [project @ robey at lag.net-20060729182801-e5e501844712bd85]
    oops, forgot to import SSHException

commit 6821b6e8e877bf80ff651f41d34a621642765e27
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jul 26 19:55:19 2006 -0700

    [project @ robey at lag.net-20060727025519-bffe5bcc0556d779]
    variant of a patch from warren young to preserve the order of host entries from the 'known_hosts' file and preserve knowlege of which lines had multiple hostnames on them

commit 17a93bce4c0b91a933f6c5e873fb41d238209ee1
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jul 26 12:15:15 2006 -0700

    [project @ robey at lag.net-20060726191515-6ff627b4d7216073]
    if a chunk has been requested in prefetch, don't bother doing an overlapping prefetch during readv

commit c731a077fb44144f0c6e40281e4ffce0cd7e3e1e
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jul 25 17:29:47 2006 -0700

    [project @ robey at lag.net-20060726002947-e60cb0a3d7b86919]
    don't fetch readv chunks that we have reason to believe are already in prefetch buffers.  no longer need to order the prefetch requests either.

commit c24db3e38c88eb6de1f9921de0b9ce4fc1a6c41c
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jul 25 17:09:07 2006 -0700

    [project @ robey at lag.net-20060726000907-b9a2d46eecc64cec]
    allow prefetch + readv to occur at the same time (even though it will be really inefficient).  instead of a moving pointer, use the prefetched buffers as an indication of what we've downloaded so far.  break up large readv requests into the max packet size.  add 2 more unit tests to test this stuff.

commit 787b0b461da1bb8b9b20930c367051cd31697abf
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 23 16:56:49 2006 -0700

    [project @ robey at lag.net-20060723235649-5f757e44908ffb31]
    attempt to implement support for kex-gex 'old' packet type, which is apparently used by putty (this would only affect paramiko in server mode)

commit c925c4143717d6e3feee47613d6233e77bb3fd3e
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 23 16:56:16 2006 -0700

    [project @ robey at lag.net-20060723235616-fe1d7920eb25a0ec]
    clean up pyc files too

commit 4737e44e400a7b29f21022c229dc2dc759f1cbe6
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 23 16:55:48 2006 -0700

    [project @ robey at lag.net-20060723235548-2f5f9ae591d683ca]
    clean up use of expected_packet and make it accept a tuple of packet types

commit 55a52a09cce414b894c17000356367ad1403a189
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 23 13:41:16 2006 -0700

    [project @ robey at lag.net-20060723204116-319c388eacb937d6]
    fix SSHException references in demos

commit ffcc22e784430acc7f67aa36e0104d8eca5f0c35
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 13 12:46:17 2006 -0700

    [project @ robey at lag.net-20060713194617-35597c20a6b3bc59]
    bump version to 1.6 (oops, forgot to check this in a few days ago)

commit ec6e76abc6b01e1c341d84558bcdb4ed223cbbf4
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jul 10 00:00:03 2006 -0700

    [project @ robey at lag.net-20060710070003-b9c4a1a7f7ab0ae9]
    apparently some sftp servers may return an mtime of 0xffffffff -- just in case, ignore that value

commit ab7c0fe9e81d63c043f0c81d803ae4ef9beedbd2
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 9 23:59:31 2006 -0700

    [project @ robey at lag.net-20060710065931-5e87f3d9879dad46]
    new ignores

commit 9c8a06b877ff76127727941795f351da6f9e9da1
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 27 22:00:22 2006 -0700

    [project @ robey at lag.net-20060628050022-2f0d754ed70356f1]
    anal-retentive conversion to 'while True'

commit c22df4490027a62268f1d46073d9513aad83ef2a
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 27 21:59:19 2006 -0700

    [project @ robey at lag.net-20060628045919-ffac82c51c51b3df]
    make HostKeys use odict to ensure order is preserved, and add HostKeys.save()

commit 4fa4fdee4b85a74be63cb016955169eaac48daeb
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jun 26 23:41:06 2006 -0700

    [project @ robey at lag.net-20060627064106-71a2bfb5a39a2913]
    add PKey.from_private_key to read from a file object

commit d81758f1ff7da3320802d48853c3df938e8309e0
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jun 26 23:08:10 2006 -0700

    [project @ robey at lag.net-20060627060810-93a5453df5ae4a62]
    log mkdir mode when given

commit be86d5474aedcea63af39a271a0f437a79b3d780
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jun 26 23:07:03 2006 -0700

    [project @ robey at lag.net-20060627060703-3d7eadfb1f5042ad]
    catch and discard exceptions thrown when sending a status response during an exception

commit 79d239693a4430b117d3ec0bb16ad26934cb9118
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jun 26 23:06:00 2006 -0700

    [project @ robey at lag.net-20060627060600-07d5b7e2fc57202d]
    add PKey.write_private_key to write a private key into a file object, and add tests for it

commit 1726162508545057ab9ea3c46c064907df121e65
Author: Robey Pointer <robey at lag.net>
Date:   Tue May 30 00:00:00 2006 -0700

    [project @ robey at lag.net-20060530070000-358e08e75c891d8b]
    add __setitem__ for HostKeys

commit e0f0ae5eb29cb8bffa9dba9a2723cba504bd54d5
Author: Robey Pointer <robey at lag.net>
Date:   Mon May 29 23:59:45 2006 -0700

    [project @ robey at lag.net-20060530065945-158cc1305bfc2c82]
    missed the client id

commit 471876ff3e0cbd62e786303fce67fc5a0cc3a01c
Author: Robey Pointer <robey at lag.net>
Date:   Mon May 29 23:58:58 2006 -0700

    [project @ robey at lag.net-20060530065858-6300e2d76304778c]
    convert an EOFError into SSHException during sftp negotation

commit 0ad8405d159137655688781eea1e169e6b4083c4
Author: Robey Pointer <robey at lag.net>
Date:   Fri May 12 10:25:44 2006 -0700

    [project @ robey at lag.net-20060512172544-f1cab2a1959987bf]
    fix new cygwin test failures reported by alexander

commit da04f66cf649c4556740afe604a9ae48d246b64a
Author: Robey Pointer <robey at lag.net>
Date:   Wed May 10 18:37:55 2006 -0700

    [project @ robey at lag.net-20060511013755-ab5fc64a30791cac]
    trim more of the history

commit af4b8fedc918de87d3294b1afd77d8c4d3a0f4ac
Author: Robey Pointer <robey at lag.net>
Date:   Wed May 10 18:33:13 2006 -0700

    [project @ robey at lag.net-20060511013313-411d1524da3b53f0]
    bump version to 1.6, fix up docs a little bit

commit 6f4110a06663dc772d228566a8795de395366d38
Author: Robey Pointer <robey at lag.net>
Date:   Wed May 10 18:11:40 2006 -0700

    [project @ robey at lag.net-20060511011140-ab3550c28121f900]
    fix a few bugs found by pycheck

commit 8843feb633827cb65066ce01f3e0347038cbb10c
Author: Robey Pointer <robey at lag.net>
Date:   Tue May 9 09:45:49 2006 -0700

    [project @ robey at lag.net-20060509164549-14e664f234b4b747]
    new parent exception for all auth failures, and new specific exception for bad host key

commit 02e81785104d97e0634e5a41e87f3b083ea0e952
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 7 17:52:24 2006 -0700

    [project @ robey at lag.net-20060508005224-a8a04cd59f9fa016]
    pulled out openssh config parsing into its own class

commit 887354c0882e681ab6c8346a9831c3740971ca8b
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 7 17:23:20 2006 -0700

    [project @ robey at lag.net-20060508002320-d6e64e96f913febd]
    check off a few readme items

commit 1d2bd214c30dff15e28c6a66edb4508e55920e02
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 7 17:22:14 2006 -0700

    [project @ robey at lag.net-20060508002214-0403d95f73b152f5]
    couple of doc fixes

commit 2a03425e277c5fdfab612ad4055d1dd30d4b9a9e
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 7 17:20:07 2006 -0700

    [project @ robey at lag.net-20060508002007-3b7b87c361fe876a]
    add unit tests for SSHClient, and fix a few bugs that uncovered

commit de1e072c739b7f6a97fcdb5438920acfbb657576
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 7 16:01:53 2006 -0700

    [project @ robey at lag.net-20060507230153-dba6b2d664b5ef3f]
    channel operations raise an exception on error now instead of returning a bool

commit 581103665b82f50d71aacb12881f9fd0b3fcca88
Author: Robey Pointer <robey at lag.net>
Date:   Wed May 3 19:52:37 2006 -0700

    [project @ robey at lag.net-20060504025237-a015ee747d9a2e75]
    if open_channel fails, it now raises ChannelException.  added a unit test for that too.  renegotiate_keys will also raise an exception now instead of returning a bool.

commit aac434e9b08f436dd742c744a56e7eb3c62306b8
Author: Robey Pointer <robey at lag.net>
Date:   Wed May 3 09:35:31 2006 -0700

    [project @ robey at lag.net-20060503163531-2297cd257acc51e5]
    make a slightly different exception for the expected mode on cygwin (why would they add support for some but not all of the unix mode bits? very odd)

commit 2067e9a1368376f5ac7955874362679751562eca
Author: Robey Pointer <robey at lag.net>
Date:   Mon May 1 17:27:09 2006 -0700

    [project @ robey at lag.net-20060502002709-617a268779f7ca6b]
    readv should just yield results as it gets them (suggestion from robertc)

commit 57bc6728af8f8cb2bf2a0250d1261df6f916f8d4
Author: Robey Pointer <robey at lag.net>
Date:   Sat Apr 29 19:40:43 2006 -0700

    [project @ robey at lag.net-20060430024043-e4391438febc9bf2]
    check for None channel and display error

commit e646d0ee4cab2b4ec77004f1eacdc5854af581e9
Author: Robey Pointer <robey at lag.net>
Date:   Sat Apr 29 19:32:38 2006 -0700

    [project @ robey at lag.net-20060430023238-3cd706d10c2de472]
    try to clean up if the server object throws an exception

commit c278de9fd494d25f32b8ad79b4a559bcd7a9ffca
Author: Robey Pointer <robey at lag.net>
Date:   Fri Apr 28 10:49:59 2006 -0700

    [project @ robey at lag.net-20060428174959-bae73f58ca8ed33a]
    patch from nicholas piper to catch keepalives sent to the client

commit 98190872102d9623ffefae0c6dd916ab7dac0bf3
Author: Robey Pointer <robey at lag.net>
Date:   Fri Apr 28 10:24:01 2006 -0700

    [project @ robey at lag.net-20060428172401-ad8da020daedd941]
    2 more unit test bugs found by alexander (can't change atime on win32)

commit c05200dcc6f77f1901246a3f4da069f1ccb3d06f
Author: Robey Pointer <robey at lag.net>
Date:   Sun Apr 23 18:11:41 2006 -0700

    [project @ robey at lag.net-20060424011141-18957fe09447af6b]
    more README

commit 3bcdf46a9dfa3b97fc425e795b8929648fd6b8dc
Author: Robey Pointer <robey at lag.net>
Date:   Sun Apr 23 18:11:26 2006 -0700

    [project @ robey at lag.net-20060424011126-66797c157af18805]
    add SSHClient (so far)

commit 8e81ba61f59a6721137cef03c5ff6f61e627049b
Author: Robey Pointer <robey at lag.net>
Date:   Sun Apr 23 18:10:46 2006 -0700

    [project @ robey at lag.net-20060424011046-7edc8e67b364f07d]
    mark a couple of functions as since 1.5.2

commit 5c2c949b1ea465f47a98068a4e21e02081e4f656
Author: Robey Pointer <robey at lag.net>
Date:   Thu Apr 20 00:27:22 2006 -0700

    [project @ robey at lag.net-20060420072722-924a44953b8d9919]
    tweak a test that relied too much on timing

commit abb7f1f1ba4276274b4c131355508b2f4e90f906
Author: Robey Pointer <robey at lag.net>
Date:   Thu Apr 20 00:26:27 2006 -0700

    [project @ robey at lag.net-20060420072627-958cad5e36cb8ecc]
    fix a bug where prefetch() at EOF would throw an exception, and add a unit test

commit d965f00563ef23dc3b105c3d1272075ec18c01af
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 12 13:57:53 2006 -0700

    [project @ robey at lag.net-20060412205753-e6c5d195a51fc389]
    fix docs

commit 6e2f3b6548f0d42582906b869760e91f0045d20b
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 12 13:36:12 2006 -0700

    [project @ robey at lag.net-20060412203612-863c46529730f786]
    bump up the default banner timeout to 15 seconds and make it configurable via (undocumented) Transport.banner_timeout

commit 37dd98bc611e6006ee8403759e2d81c34e239e43
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 12 02:37:40 2006 -0700

    [project @ robey at lag.net-20060412093740-9fad67f9fbafcd7d]
    fix doc typo

commit f765980313a6a2e6466aa4ddff70a1278462e5aa
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 12 01:43:27 2006 -0700

    [project @ robey at lag.net-20060412084327-0d666ca96c0b0976]
    oops, don't forget to add the empty() method

commit e7afd833083f886b0a501c27ac07e766a39758c9
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 12 01:42:50 2006 -0700

    [project @ robey at lag.net-20060412084250-bd347f3f01aca394]
    flip the switch: use BufferedPipe inside Channel

commit 22db02c82f29e22052ebc8d0436c332ced36f91f
Author: Robey Pointer <robey at lag.net>
Date:   Tue Apr 11 15:48:06 2006 -0700

    [project @ robey at lag.net-20060411224806-2683ac099f9608ae]
    add a test that feed/read can happen piecemeal

commit b7a615d02a9b96f85b10edbb60cc08d395cbfd28
Author: Robey Pointer <robey at lag.net>
Date:   Tue Apr 11 15:47:33 2006 -0700

    [project @ robey at lag.net-20060411224733-0361ad3758aee64d]
    add a way to set the event to trigger, and fix a typo

commit 1df0e7e629d4a97f1b6010490b5d225712541c33
Author: Robey Pointer <robey at lag.net>
Date:   Tue Apr 11 00:40:19 2006 -0700

    [project @ robey at lag.net-20060411074019-1c4ec3497399bf11]
    oops, don't forget BufferedPipe unit tests

commit 9e14a3bf58ed62ab61df7f5932648bf973a83bf8
Author: Robey Pointer <robey at lag.net>
Date:   Tue Apr 11 00:39:46 2006 -0700

    [project @ robey at lag.net-20060411073946-8830b560b276266f]
    factor out BufferedPipe into its own class

commit 017d315bcece55c6db74585b31a62f767570a064
Author: Robey Pointer <robey at lag.net>
Date:   Sun Apr 9 00:39:38 2006 -0700

    [project @ robey at lag.net-20060409073938-bcbb9a13a6f311c2]
    changes to win_pageant from todd whiteman which avoid using ctypes and apparently makes the pageant agent work

commit 8087fa5a291758e75191006c82a13557018f853a
Author: Robey Pointer <robey at lag.net>
Date:   Sat Apr 8 15:24:56 2006 -0700

    [project @ robey at lag.net-20060408222456-d3813e0206a2cda7]
    assertTrue doesn't exist in py23

commit ccc1046a5c3f39c195e2fceae01ced155d8a8778
Author: Robey Pointer <robey at lag.net>
Date:   Thu Apr 6 11:18:21 2006 -0700

    [project @ robey at lag.net-20060406181821-68f9bc13b3580d37]
    some fixes for win32: potential fix for lockup during failed tests; don't try chmod/chown or symlinks; fix canonicalize to convert dos-style path separators to '/'; open local files in binary mode; close a file before erasing it

commit d7b28ac257caf5daa2bd673efff9350bf547de38
Author: Robey Pointer <robey at lag.net>
Date:   Sun Mar 26 16:19:36 2006 -0800

    [project @ robey at lag.net-20060327001936-9dd7d3b155614bbf]
    allow multiple prefetches to happen in rapid succession

commit 0cee90eeca1c421ee1fa7078df7b91db13ecc032
Author: Robey Pointer <robey at lag.net>
Date:   Sun Mar 26 16:17:26 2006 -0800

    [project @ robey at lag.net-20060327001726-7ccb095fd5c416f5]
    roll in some changes from bzr that may be necessary to get stub_sftp to work on windows

commit 4120a158239d70ce346ab0116c2aa71949e32825
Author: Robey Pointer <robey at lag.net>
Date:   Sun Mar 26 15:55:36 2006 -0800

    [project @ robey at lag.net-20060326235536-31da9988fb7a06be]
    slightly more docs to hostkeys

commit b12d10fd720ad4268b28d90d18f8674ba78a9be8
Author: Robey Pointer <robey at lag.net>
Date:   Sun Mar 26 12:46:35 2006 -0800

    [project @ robey at lag.net-20060326204635-1c5418c54187b95d]
    fix exception-catching error found by alexander belchenko

commit 016060388a90f19a4a13e35ac5843179e40e29b3
Author: Robey Pointer <robey at lag.net>
Date:   Fri Mar 24 09:44:23 2006 -0800

    [project @ robey at lag.net-20060324174423-1d310608680dd29b]
    try out john's win_pageant code

commit 62c95883651596bde3489005be968954f9dd42b9
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 11 20:30:43 2006 -0800

    [project @ robey at lag.net-20060312043043-a96ec6e03210f476]
    fix Makefile :)

commit 4eb0b9ac3e4c9987ac17eba84e79074da7449385
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 11 20:29:05 2006 -0800

    [project @ robey at lag.net-20060312042905-752c324bdc1ac2cf]
    bump version to 1.5.4

commit 82d8ca6e118d369d4d67d251d3057c20e8cc5af1
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 11 20:07:32 2006 -0800

    [project @ robey at lag.net-20060312040732-8d16f6c42f12f138]
    document readv, fix thinko, and add a readv unit test

commit ece62093bd426899b60e83a62451465629b8b90f
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 11 20:06:33 2006 -0800

    [project @ robey at lag.net-20060312040633-92b1c78bf815905d]
    add test to verify that 'for x in hostkeys' works

commit 862e1f48e32f874ee489002b067f175b3a851644
Author: Robey Pointer <robey at lag.net>
Date:   Thu Mar 9 18:22:34 2006 -0800

    [project @ robey at lag.net-20060310022234-c183ad0b3f31eb28]
    generalize the prefetching a bit so that it can be reused for a readv method

commit a98c5cf627071292de92d6a0b3e61ab916308c21
Author: Robey Pointer <robey at lag.net>
Date:   Thu Mar 9 00:28:30 2006 -0800

    [project @ robey at lag.net-20060309082830-ea89d2b2259098a2]
    revise the prefetch machinery so that it doesn't assert if you seek to earlier than the prefetched buffers.  also, keep around any prefetched data that has been seeked around, so that jumping around in the file will still get the benefit of prefetch, though only the first time any chunk is read.

commit bbcf7687aa966d2d570b6b1840f98a4ddefd42ed
Author: Robey Pointer <robey at lag.net>
Date:   Thu Mar 9 00:22:17 2006 -0800

    [project @ robey at lag.net-20060309082217-438047d0007d5a5b]
    reads were being rounded up to an 8k buffer size, even with no buffering specified when the file was opened.  i traced this back to the old ChannelFile where it worked correctly.  fix to only buffer when asked to.

commit 284614a857a127b135d580087b814f4b6d8caadb
Author: Robey Pointer <robey at lag.net>
Date:   Thu Mar 9 00:16:19 2006 -0800

    [project @ robey at lag.net-20060309081619-4ec529d524744e14]
    fix up the manifest

commit 89e39a455956848268924ea54fbab9ad374b1bb8
Author: Robey Pointer <robey at lag.net>
Date:   Thu Mar 9 00:14:55 2006 -0800

    [project @ robey at lag.net-20060309081455-84be2ae54f98e897]
    move sftp big-file tests into a separate class and add one that does a prefetch, then seeks in random order

commit de6315b9c5813ef846a3e97cb815c12505254fc9
Author: Robey Pointer <robey at lag.net>
Date:   Thu Mar 9 00:04:50 2006 -0800

    [project @ robey at lag.net-20060309080450-bad95b03d60d3d4f]
    improve HostKeys so that it more correctly emulates a dict, and add a unit test to verify that

commit 90a577c775c4a985455e30fbc4bc44f05c61a3e8
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 27 19:01:21 2006 -0800

    [project @ robey at lag.net-20060228030121-67362d86a18a352b]
    heh, this import will always fail unless we have 'os' handy

commit 860edff9f45241c1c4c2036b135fd5ca76bd830b
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 27 19:00:48 2006 -0800

    [project @ robey at lag.net-20060228030048-ca579e8c53c9c4b7]
    this demo doesn't need to import interactive

commit 5b7957ce39fe1017503fe284ba2297892bd2d3bd
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 19 23:23:03 2006 -0800

    [project @ robey at lag.net-20060220072303-cdc3bc647d5732b0]
    bump version to 1.5.3

commit 2103553ff5df622781e841507c10b9607629d638
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 19 20:04:47 2006 -0800

    [project @ robey at lag.net-20060220040447-d7b79989d3b680ed]
    remove @since that predate 1.0

commit 6459365f50e83b680abc7ee72d6c2d5017964b6b
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 19 20:03:43 2006 -0800

    [project @ robey at lag.net-20060220040343-f13904d9c97035e3]
    explain why paths aren't, and can't be, unicode strings when passed to SFTPServerInterface

commit 4be91d1c4d3d4a2257cec37250822f4a2b8e8530
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 19 19:17:41 2006 -0800

    [project @ robey at lag.net-20060220031741-3227438ff1b03a29]
    add SFTPClient.truncate.  add chmod, chown, utime, and truncate to SFTPFile.  and of course tests.

commit 8446c0bda13ba8cb8d28ff114d68f9f3ec197391
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 19 16:59:34 2006 -0800

    [project @ robey at lag.net-20060220005934-58d0df2920e799b5]
    update copyright year

commit 409c4fc48253b422580bc671a996c8ebc39931f5
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 19 16:35:13 2006 -0800

    [project @ robey at lag.net-20060220003513-aa54e3e771a530fd]
    add HostKeys, a helper for reading/parsing openssh known_hosts files, including hashed-host support

commit 08c9efc86a2d76f763d73a843a961f4b6e0be253
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 13 10:17:24 2006 -0800

    [project @ robey at lag.net-20060213181724-ba80fa329c5be7f4]
    not all sftp servers obey the 'all filenames are utf8' requirement, so if both ascii and utf8 codecs fail, just return the filename as a byte string

commit 97496845bb598d7c07fcc616ec898287819257a6
Author: Robey Pointer <robey at master-shake.local>
Date:   Fri Feb 10 09:56:13 2006 -0800

    [project @ robey at master-shake.local-20060210175613-e7a1fccdcc4e689c]
    this del is also useless

commit 12efdd7ca121e7b7b6f810d1666cfbd9c5ea309a
Author: Robey Pointer <robey at master-shake.local>
Date:   Wed Feb 8 23:35:16 2006 -0800

    [project @ robey at master-shake.local-20060209073516-77f30d55aee054ea]
    packetizer doesn't need a __del__, and the keepalive should use a weakref

commit 07dfbd58080009d81f7b07a231b50d9180ce5fcb
Author: Robey Pointer <robey at master-shake.local>
Date:   Wed Feb 8 19:03:47 2006 -0800

    [project @ robey at master-shake.local-20060209030347-a7238bae41dad9d7]
    doing a close() on Transport.__del__ is useless: because a Transport can't go away until all its Channels are collected, it will never make a difference.  so don't do it, cuz __del__ is pretty hairy.

commit 27ccd56af7c18c6cb3a796d05e3cab6d069afca0
Author: Robey Pointer <robey at master-shake.local>
Date:   Wed Feb 8 19:01:12 2006 -0800

    [project @ robey at master-shake.local-20060209030112-ab9669fa6d1d3d26]
    avoid really obvious/brainfart reference loop.  found by andrew bennetts

commit 619192814d18dffbcde159b5431db4e044fdb8ba
Author: Robey Pointer <robey at master-shake.local>
Date:   Sun Feb 5 22:42:28 2006 -0800

    [project @ robey at master-shake.local-20060206064228-23198d2e82bd7248]
    add getpeername() call to make asyncore work better

commit 2853a7ae0548cf898f0acebe3e7df7ceb92a0025
Author: Robey Pointer <robey at master-shake.local>
Date:   Fri Feb 3 10:08:29 2006 -0800

    [project @ robey at master-shake.local-20060203180829-27d4707bf572ac5b]
    Transport doesn't need HMAC

commit 0627f094945d0ec3c90edea24d6ff38ffade2d21
Author: Robey Pointer <robey at dhcp-192-168-1-88.danger.com>
Date:   Wed Feb 1 16:59:30 2006 -0800

    [project @ robey at dhcp-192-168-1-88.danger.com-20060202005930-3248b8be189d5d23]
    reorder the event check so that a positive event is noticed before a closed channel

commit 2262f7f188550249456f4b9ecb7eefd6215d4314
Author: Robey Pointer <robey at master-shake.local>
Date:   Wed Feb 1 11:35:36 2006 -0800

    [project @ robey at master-shake.local-20060201193536-86f3fd393e7ef8f9]
    don't clear the select pipe when the recv buffer is cleared out, if we're at EOF (found by thomas steinacher)

commit c091dff994c17173388bca990c7d0d9e2b3382ed
Author: Robey Pointer <robey at master-shake.local>
Date:   Mon Jan 30 16:56:29 2006 -0800

    [project @ robey at master-shake.local-20060131005629-3f1bfead54bd5283]
    add more logging to sftp client

commit eeb76522ea105654cf98298cb44fc83c97027178
Author: Robey Pointer <robey at master-shake.local>
Date:   Mon Jan 30 10:20:53 2006 -0800

    [project @ robey at master-shake.local-20060130182053-0d5b7aba9dc9d9b3]
    tone down the packet logging

commit 3596251856515a47f173bf6d0afe3b3986241a8c
Author: Robey Pointer <robey at master-shake.local>
Date:   Mon Jan 30 10:20:24 2006 -0800

    [project @ robey at master-shake.local-20060130182024-4f0c84964b65cb72]
    describe auth types better in logs

commit e4dd1bf9357f0369ed0ba1e5b7c66c696b0a2fb9
Author: Robey Pointer <robey at master-shake.local>
Date:   Fri Jan 27 10:19:25 2006 -0800

    [project @ robey at master-shake.local-20060127181925-3e7e5133b20d2f5b]
    add a demo for sftp

commit cf0c5c772014b20157d2d65f1ee79e69dfc67bff
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 19:54:53 2006 -0800

    [project @ robey at master-shake.local-20060127035453-c91a77a5aa6d2136]
    a few more pychecker warning fixups

commit 1a469d97fdf3cc4c4aa3fa4ea9aef095e10ff9ce
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 19:53:42 2006 -0800

    [project @ robey at master-shake.local-20060127035342-a7bb21c598c8136d]
    (possibly misguided) attempt to reduce paramiko's exports

commit b955ee02cc0888928163963b57f78ba9ca318627
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 19:13:02 2006 -0800

    [project @ robey at master-shake.local-20060127031302-7bb0582ea98a60bd]
    move another demo script in, and do a bit more cleanup

commit 77eada9fb4a458d9f8e6b9ebfd6db4de09e1130d
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 19:11:39 2006 -0800

    [project @ robey at master-shake.local-20060127031139-0ca8125e66edccc5]
    i'm a dork, actually these are needed to login to the demo server

commit c8738fe17cee9ffd8657e7350e2858227e19e886
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 19:05:13 2006 -0800

    [project @ robey at master-shake.local-20060127030513-a5bafc0a07b1afdc]
    no longer need these

commit e9e695aa4ec6ae6af3870e8a692eaf08c75474ad
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 19:03:42 2006 -0800

    [project @ robey at master-shake.local-20060127030342-c9c50eae5c4ebe17]
    add 'clean' rule

commit 0efdc8af5f529a24c9602ae7578e20de1176e55d
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 19:01:14 2006 -0800

    [project @ robey at master-shake.local-20060127030114-b6810c4c29964a4e]
    code from mike looijmans for a windows interactive shell -- while i'm mucking around in here, clean up the demos a bit too

commit 7058195e3848467c3f2635797f675efba4650bef
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 12:50:08 2006 -0800

    [project @ robey at master-shake.local-20060126205008-cbf83d6697711e37]
    when setting a new log channel, pass that info on to the packetizer

commit d44035e71626c63fd72e9c4c8ace9e6281587f0b
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 26 12:49:25 2006 -0800

    [project @ robey at master-shake.local-20060126204925-3cc14de36a8c5c1f]
    winscp doesn't like it if the server sends version info before the client does

commit f5421e76001bb2a2e4308e70d87801629b67a0db
Author: Robey Pointer <robey at master-shake.local>
Date:   Fri Jan 20 10:23:50 2006 -0800

    [project @ robey at master-shake.local-20060120182350-92e8f21d029f8634]
    catch a case where the sftp server might give an invalid error code

commit fa90f1247af35b02d55008e84232d0a89da1adda
Author: Robey Pointer <robey at master-shake.local>
Date:   Fri Jan 20 10:23:20 2006 -0800

    [project @ robey at master-shake.local-20060120182320-d569b04adc2bd622]
    some performance improvements: be a LOT less aggressive about stirring the randpool; use buffering when reading the banner; add a hook for using a native-compiled hmac (which gives the biggest boost, but should probably be done in pycrypto)

commit f02a4bcded86d08873fc131614cc554019a67d1c
Author: Robey Pointer <robey at master-shake.local>
Date:   Thu Jan 19 15:26:16 2006 -0800

    [project @ robey at master-shake.local-20060119232616-edcb93583d3dc005]
    john points out i could just use None for no-value and it would be a lot simpler... good point

commit 1731d51b5194d255fbcf73660c61ea3614878614
Author: Robey Pointer <robey at master-shake.local>
Date:   Wed Jan 18 23:21:56 2006 -0800

    [project @ robey at master-shake.local-20060119072156-31241967db33d1d9]
    john a meinel caught a typo in the previous sort() patch

commit 6a145dea09e8781711adcfe1c718ee5fd6c4f3fd
Author: Robey Pointer <robey at master-shake.local>
Date:   Wed Jan 18 22:55:03 2006 -0800

    [project @ robey at master-shake.local-20060119065503-341b1f0c0d161e22]
    add Transport.atfork to handle the case where a forked child needs to cleanly dispose of a Transport where the socket is shared with its parent

commit be7d99886c2f6223d8f0899e4864c11f922dfde8
Author: Robey Pointer <robey at master-shake.local>
Date:   Sat Jan 14 22:33:38 2006 -0800

    [project @ robey at master-shake.local-20060115063338-50ebabff6276f500]
    patch from jan hudec to fix a python 2.4-ism

commit cb3008b402a6a411204d0dc060c2f85a548c1c7e
Author: Robey Pointer <robey at master-shake.local>
Date:   Sat Jan 14 22:30:08 2006 -0800

    [project @ robey at master-shake.local-20060115063008-4f68552398868788]
    fix a bunch of pychecker warnings, some of which were actual (but unlikely) bugs

commit 26397bff47bc1005a7d4b42a95bfb72f213cf26e
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 16 10:00:02 2005 -0800

    [project @ robey at lag.net-20051216180002-5661c935adb8262e]
    ENOTDIR should be translated into NO_SUCH_FILE -- openssh does it, and there really isn't any better mapping for it

commit a14384370cca73ab2cf9dc0d0f100560ac6c33a0
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 16 09:59:05 2005 -0800

    [project @ robey at lag.net-20051216175905-c3477e2ec74db4d9]
    add setuptools/easy_setup support

commit 995343439a90f6a752e3eab1e1800b42e8feffab
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 4 01:28:22 2005 -0800

    [project @ robey at lag.net-20051204092822-69155fa5abbc4637]
    bump version to 1.5.2

commit a8abbbecb8862411fcbc5bdbf9eb284015302c5d
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 4 01:04:14 2005 -0800

    [project @ robey at lag.net-20051204090414-7c8318ab735f6188]
    experimental util functions for parsing/getting openssh host config, and unit tests (turned out to be pretty easy)

commit 373e65dd971a5d0acb88ce6367c3c6a182ce9a74
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 4 01:02:35 2005 -0800

    [project @ robey at lag.net-20051204090235-431d6d71cee11f68]
    don't call _send_user_message() while holding the channel lock.  the call may
    block waiting for CTS (during rekey), and the feeder thread may be waiting on
    the channel lock to clear out channel traffic before it gets to the kex-init.
    instead, the 2 methods that wanted to send from inside the lock now just return
    messages to send.  slightly hacky but functional. :)

commit 72e28736e20771013291afa2f3e1bf2d48649f6e
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Sat Dec 3 20:50:02 2005 -0800

    [project @ robey at ralph.lag.net-20051204045002-f1d13a4bc1351090]
    remove pre-1.0 news, bzr will preserve it for future archivists ;)

commit 65beaef76fb044b01e74e10e79b657c7adaaa66a
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Sat Dec 3 20:49:21 2005 -0800

    [project @ robey at ralph.lag.net-20051204044921-ae847bf450372ff5]
    add comments to demo and demo_simple explaining that they don't work on windows

commit 93ee12a1946fa0529aa3ce5dccba34b699eff0cb
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Sat Dec 3 20:32:58 2005 -0800

    [project @ robey at ralph.lag.net-20051204043258-3d82f58e781edf13]
    add unit test for compression

commit fdf927cffd1801fed114f241a1cf63fd3b54f15f
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Sat Dec 3 20:32:51 2005 -0800

    [project @ robey at ralph.lag.net-20051204043251-efc5e0b9adee5403]
    remember once a transport is authenticated, so that after rekeying when using openssh-style delayed zlib (zlib at openssh.com), we know it's okay to immediately start new compression

commit 8aa2131e2846e697286c64d8c80223ef6b65e3ce
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Sat Dec 3 20:29:20 2005 -0800

    [project @ robey at ralph.lag.net-20051204042920-132f9184b775ffb1]
    fix typo in doc

commit 2de86653c7b4f2bc00932cea875a38eb1199e049
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Sat Dec 3 20:28:53 2005 -0800

    [project @ robey at ralph.lag.net-20051204042853-ba804918019cbdba]
    windows users who switch between cygwin and native mode may sometimes have an SSH_AUTH_SOCK environ var set from cygwin, even when in native mode there's no such thing as an AF_LOCAL socket -- check for native windows mode and avoid trying unix ssh agents in that case

commit 9b5d80869c664228b6dd9e8971c269854879f71f
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Fri Dec 2 20:39:19 2005 -0800

    [project @ robey at ralph.lag.net-20051203043919-0a8c4665d04853fc]
    turn down output for unit tests by default, but add --verbose option to manually crank them back up

commit a6b48752864d0f9f90de117b66d7b669857d2aad
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Fri Dec 2 20:32:23 2005 -0800

    [project @ robey at ralph.lag.net-20051203043223-8ee54573dcda1386]
    new unit test for doing a bunch of prefetches at once

commit a8778ffe6f81eeace5e4531e02a0818f3a98422b
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Fri Dec 2 20:32:06 2005 -0800

    [project @ robey at ralph.lag.net-20051203043206-1a5ab28112642246]
    when closing an sftp file because of __del__, don't wait for a response, just shoot off a request and leave (on linux, the GC is run from a devoted thread)

commit 62a83e7d03b2ddf528fc3a8fe6b87f2cdfa68807
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Fri Dec 2 20:31:12 2005 -0800

    [project @ robey at ralph.lag.net-20051203043112-0091aa8e40980487]
    serialize outgoing requests (duh) -- when prefetching multiple files, there may be several threads pumping out read requests

commit 2d06308fd9d4ce86fcfd18f44430111a69fb97c9
Author: Robey Pointer <robey at ralph.lag.net>
Date:   Fri Dec 2 20:21:47 2005 -0800

    [project @ robey at ralph.lag.net-20051203042147-7e7a922aadc37bc2]
    only create the log filter once, so it doesn't get applied more than once (tiny thing that bothered me during debugging)

commit 35b5719dc2b6f73a255778f1420fa2eaf0afd6f9
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 2 16:32:50 2005 -0800

    [project @ robey at lag.net-20051203003250-030b7c160f13aca9]
    oops, forgot to add this file -- guess friday really is hawaiian shirt day :)

commit 568ddd963d7e2d1a1d7bf4342ea97bb39f43ff1f
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 2 13:15:44 2005 -0800

    [project @ robey at lag.net-20051202211544-900e02e2693d4a92]
    add tentative compression support (off by default)

commit e7a45fee600489abdfe171cde7d393ad1b308af4
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 2 12:42:42 2005 -0800

    [project @ robey at lag.net-20051202204242-1fb4a6438ba50969]
    nail down select() on EOF: occasionally a channel would be closed remotely but select() wouldn't trigger.  when a channel gets EOF or is closed, set the pipe FOREVER.

commit ee8a4e4b2b4b9dff1dd43b1a5836400d7822fa2e
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 2 04:03:05 2005 -0800

    [project @ robey at lag.net-20051202120305-73accda404b89d27]
    dumb test to verify utf8 encoding

commit 76eafefcead9e98c7fb488688a7c365e40f58417
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 25 19:09:59 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-82]
    convert_status is already called.  calling it again was breaking van dyke sftp servers, which add garbage to the end of their sftp packets

commit ba6165a4aa63b3b51ee9f34bcf9626e87ba38555
Author: Robey Pointer <robey at lag.net>
Date:   Sat Nov 12 01:38:27 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-81]
    copy from jaramiko: only check for rekey at the beginning of a packet

commit 6de6dc72c659f17fec8fb3a5c97f45c7db4c6622
Author: Robey Pointer <robey at lag.net>
Date:   Sat Nov 12 01:10:41 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-80]
    add 'x' flag to open to allow O_EXCL behavior

commit 7e95e2afc8200b82a352f6f5f0935286c1a0f352
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 11 17:43:01 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-79]
    in Transport.__del__, don't try to clean up attributes that were never created

commit 42867ded4247f7fcd66aa0907f85a1660d931612
Author: Robey Pointer <robey at lag.net>
Date:   Mon Oct 31 19:09:46 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-78]
    oops, this file wasn't saved yet when i did the randpool.stir() commit

commit b9106e4f214c7b58b18d67e1a01d69eccbb9155d
Author: Robey Pointer <robey at lag.net>
Date:   Mon Oct 31 03:28:54 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-77]
    bump up version to 1.5.1

commit b1d58c5cebbb1a2a847bb20045c5b981f2f99c5b
Author: Robey Pointer <robey at lag.net>
Date:   Mon Oct 31 03:27:13 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-76]
    add a few more randpool.stir() calls

commit 25d55e6089dabe8ffdbb964d3220a50ab0d36213
Author: Robey Pointer <robey at lag.net>
Date:   Mon Oct 31 03:26:10 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-75]
    fix a few windows bugs (and broken str() on SFTPAttributes) reported by grzegorz makarewicz

commit e57c4baab58e63c11548918801cf4639110029c0
Author: Robey Pointer <robey at lag.net>
Date:   Sun Oct 30 21:13:36 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-74]
    raise the max packet size so that the max sftp packet will fit

commit a355cf43d99d8a46e22ca6406d30c93f3a3e5def
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 29 20:57:43 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-73]
    packet read sizes were overestimated by 1 byte

commit 66919286b6a9865d667e28654c42c78d43e876ca
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 29 20:47:04 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-72]
    don't attempt to start a rekey negotiation from within send_message -- always do it from the feeder thread.  this prevents a situation where more than one thread may decide spontaneously to rekey, sending multiple kexinit messages, which confuses the hell out of the remote host :)  also, do some locking around the clear-to-send event, to avoid a race when we first go into rekeying.  add some tests for these things too

commit 3c67e35b5f6fbc686141c31d513195705fff14d7
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 29 20:41:14 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-71]
    the window-adjust can be sent outside of the lock, as long as the window size tracking is done within the lock (ie: allocate window space within the lock, then send the ack later) -- helps avoid deadlocks

commit f65edffbfb2378246d7bfb6e7256a2854e3963e4
Author: Robey Pointer <robey at lag.net>
Date:   Mon Oct 24 06:19:56 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-70]
    add SFTPFile.prefetch() to allow pre-fetching a file that will be downloaded in full -- quick testing showed this could speed up downloads 3x or more

commit c986f92dc5d8ef9c8e95e242633052c3e1fff979
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 22 06:38:43 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-69]
    i think seek_cur had a bug here

commit d42d6af12bf029a7f07703a44883a8326b7c5e57
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 22 06:35:57 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-68]
    set errno for some errors

commit 95bf2b09576eaa424d131158048eeb1ce76945d6
Author: Robey Pointer <robey at lag.net>
Date:   Thu Oct 20 04:42:10 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-67]
    oops, dont forget to export SFTPFile for docs :)

commit 64d89583c73dda6c22136f3bc138d209835c68b1
Author: Robey Pointer <robey at lag.net>
Date:   Mon Oct 17 16:36:55 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-66]
    fix a test that failed once: the encoding of R or S in dss signatures might not always be exactly 20 bytes

commit 6eab0b3b4df096aa6b9421c8fe342078d182c523
Author: Robey Pointer <robey at lag.net>
Date:   Thu Oct 13 18:52:59 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-65]
    remove unnecessary shebangs, fix import lines to be explicit about imports from within paramiko, and a bit of whitespace cleanup

commit 8bb5e65499661bc1e0556ccfe56c4317d70317cd
Author: Robey Pointer <robey at lag.net>
Date:   Thu Oct 13 18:51:18 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-64]
    track channels seen and throw away (without error) messages bound for nonexistent channels that *used* to exist -- fixes a bug found by gordon good

commit 7f9677d5abe53f210cad1f8762a526e0d98dd716
Author: Robey Pointer <robey at lag.net>
Date:   Sun Oct 2 20:12:48 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-63]
    fix doc typo

commit 65883e673b6c5d9d287aa496c97659b87e21411d
Author: Robey Pointer <robey at lag.net>
Date:   Sun Oct 2 20:08:39 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-62]
    readme comments, bump version to 1.5 paras

commit f2ec841a15ab7012a7473aeced64653312166c4c
Author: Robey Pointer <robey at lag.net>
Date:   Tue Sep 27 04:03:27 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-61]
    add server-side support for keyboard-interactive auth, and a couple of unit tests

commit fb73c0ef7f969a873ccb4f091cacd3ba83d7bb85
Author: Robey Pointer <robey at lag.net>
Date:   Sun Sep 25 09:11:23 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-60]
    add file pipelining for writes

commit 364479610e74320180e16f5d64b79c306476facc
Author: Robey Pointer <robey at lag.net>
Date:   Wed Sep 21 22:42:11 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-59]
    add auth_none and auth_interactive to support 'no auth' and 'keyboard-interactive auth'; for password auth, add a mode where it will try to fallback to keyboard-interactive in a pinch

commit 24045332c5ec3929b30490d5993b29b3eaf593f7
Author: Robey Pointer <robey at lag.net>
Date:   Wed Sep 21 22:37:23 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-58]
    make the str form of BadAuthenticationType describe the allowed auth types

commit 4862d5955bdc8275fe5c03cceffd73448b130812
Author: Robey Pointer <robey at lag.net>
Date:   Wed Sep 21 22:34:39 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-57]
    simplify a line of debug output in demo_simple that bothered me one day

commit 112b72511eb186175839fc0b8d66b6fc6dcdb534
Author: Robey Pointer <robey at lag.net>
Date:   Sun Sep 18 07:25:54 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-56]
    patch from nathaniel smith: fix SFTPClient.open() 'a' flag, and guard against multiple close() of the same file

commit 01ca23cacefd242dba5b5662aa4f46595196588e
Author: Robey Pointer <robey at lag.net>
Date:   Wed Aug 17 15:54:29 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-55]
    fix the loading of known_hosts in the demos to work on winodws/cygwin

commit 0f3bf86617999de2aff056b8455aa33c64188e3a
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 9 07:40:07 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-54]
    smooth BaseTransport and Transport together, and move the auth stuff into AuthHandler -- an improvement i made in jaramiko and decided deserved to be backported

commit 1fdec8bd06b22c098de6e731364c707c7292cc1f
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 9 06:31:19 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-53]
    more todo...

commit 646db7c787430b689c94336fdb59de0a3a9379d8
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 9 06:30:59 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-52]
    rework init so classes all appear in the right package in docs (yaaaay)

commit 7cd784155649bb675cebc3863d5c16569954c753
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 9 06:30:22 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-51]
    rename 3 globals so they're not exposed in docs

commit a4fc5bb8a753ff192d3b2450a6e879a0a49a6fa9
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 9 06:29:59 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-50]
    add docs to Message

commit 7b4cd51b7693f401e926b5e25dcfd1b014e9815f
Author: Robey Pointer <robey at lag.net>
Date:   Wed Aug 3 06:57:51 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-49]
    dumb tiny tweaks

commit eb60811594711e8aed9b8cabeb2949ad74c82843
Author: Robey Pointer <robey at lag.net>
Date:   Wed Aug 3 06:57:30 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-48]
    can use up to 32k buffers here

commit 5a5cd201b787affcdf80dc5cf33eb5f7ba937138
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jul 18 06:40:30 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-47]
    bump version number to 1.4 oddish

commit d8ee5e2a4a0e425320204a56d2470d56e228acda
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jul 18 05:43:44 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-46]
    add SFTPFile.check and server support (and test) -- it's an sftp extension that allows a client to retrieve the hash of part or all of a file without downloading it.  we're probably the only ones who implement it yet

commit e9ccd7ea209498b27a0b784936e2e8fb762202ed
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 17 20:06:29 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-45]
    yeah! figured out the last things that were causing GC cycles and got rid of them: Channels, Transports, SFTPClients, and SFTPFiles can all have __del__ methods now, which auto-close themselves :)

commit f27e625926b07c56b256fed7b9ae1b59e48693ff
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 17 07:01:51 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-44]
    try to handle utf8 paths in a sane way in SFTPClient: assume incoming strings are already utf8, and encode incoming unicodes -- for return values, use str if an ascii encoding will work, otherwise return a unicode

commit a22719c338decc9cad28992cad7dc04e9e0696d7
Author: Robey Pointer <robey at lag.net>
Date:   Sat Jul 16 16:41:39 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-43]
    allow start_client and start_server to be passed no event object for synchronous behavior

commit 458a0de23fff3baa42c8e267b7758b0160cc620a
Author: Robey Pointer <robey at lag.net>
Date:   Sat Jul 16 16:35:25 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-42]
    don't forget to export Agent

commit 37f3775389e2aceabc3ff6ddf4c6c3f47ff04ccc
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 14 02:51:31 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-41]
    pull in tiny changes from ralph
    Patches applied:
    
     * robey at lag.net--2005/paramiko--dev--1--patch-2
       merge laptop work
    
     * robey at lag.net--2005/paramiko--dev--1--patch-3
       update from laptop
    
     * robey at lag.net--2005/paramiko--dev--1--patch-4
       integrate tons more laptop work
    
     * robey at lag.net--2005/paramiko--dev--1--patch-5
       thew has a good point: this is stable software now, not alpha
    
     * robey at lag.net--2005/paramiko--dev--1--patch-6
       roll up laptop changes

commit a321fa026deff83129c9a680f667eaf961d4772c
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 14 02:46:35 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-40]
    anal tweak of docs

commit 1a7868d27f2cbf996a7069f2ccc187bcddcbb7f9
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 14 02:36:56 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-39]
    bulletproof the select test in test_transport more

commit 4c224095243b984f754cae5ee1bc0b4771d88acc
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 14 02:36:30 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-38]
    fix util docs a bit

commit b5f0b3c7869a9614722403a03476ad7feb2a0b69
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 14 02:36:15 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-37]
    remove debug print

commit 1a6ba349da8dc0d94becb1e116129f88d83e2a33
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 14 02:19:13 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-36]
    move load_host_keys into util where others can use it

commit e12e16858e4c09854a210cb6ddf8ee9c61eb8959
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 14 02:18:45 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-35]
    oooooops, didn't mean to leave posix commented out

commit f56557632115e06736de88289ed9feeef2b5376e
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 14 02:17:38 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-34]
    fix a comment claiming that channels are closed automatically when GC'd (they aren't and can't be); don't close the pipe until the app explicitly calls close(); signal EOF via the pipe

commit 93f3cae64ffa5698175b6f89a677b64a66a29a59
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jul 13 08:35:15 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-33]
    add SFTPClient.put and SFTPClient.get, and make sftp file objects auto-close on del

commit 1f88224239546d1ef9dcfce77572765d9a094623
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jul 13 07:59:35 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-32]
    add the concept of a cwd to SFTPClient, and add a unit test for it

commit e6e4c4bff7e05c3fa7bd3bb8b9604c65effbf107
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jul 13 07:57:12 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-31]
    fix whitespace on a line that bugged me

commit b3ec01f57ecd48fc94623b1f773026b18bb9ed25
Author: Robey Pointer <robey at lag.net>
Date:   Wed Jul 13 07:56:44 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-30]
    fix stupid line that broke dss's unit test... that'll teach me to fuss over pychecker warnings

commit 0ac7b0dcbd43b5077b74bb5072d5f5e2423371d7
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 10 09:56:00 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-29]
    a bunch of silly changes where i was trying to fix pychecker warnings before i decided it wasnt worth the effort

commit 5ba8b47a458560e6170b5635daf9db1211eadf61
Author: Robey Pointer <robey at lag.net>
Date:   Sat Jul 9 17:31:09 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-28]
    forgot to import server

commit fb4e56989a72c5ea5d750cc61cf1a59dd874007e
Author: Robey Pointer <robey at lag.net>
Date:   Sat Jul 9 17:30:02 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-27]
    remove now-incorrect comment

commit ae18228d079224d71b20846b9c4bcc2a5537e135
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 7 01:35:31 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-26]
    new ssh agent support!  from john rochester.  added a bunch of docs to it, and changed demo.py to use an Agent if it finds a working key there.

commit e3ed1616d17f64ca394e7357b05eaf4c6b55ea1f
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 7 01:10:57 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-25]
    cool optimization from john rochester: use cStringIO in Message (and also fix some unit test bugs revealed by the change)

commit 0b093e49b4fa0dfcbb75e4ff956091100fa265f5
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jul 7 01:03:49 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-24]
    the previous windows pipe fix still didn't work.  replace it with a new pipe.py abstraction of pipes (one for posix, one for windows) which appears to finally work on windows.  for real this time.  also add some more documentation to Channel to explain that after exec_command, invoke_shell, or invoke_subsystem, a Channel can't be reused.

commit de81b40e7d6bc7aa4b9912964b7bc9d201dcdb65
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 3 01:31:31 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-23]
    stupid little doc tweaks

commit 9d277627203f7efb67a664227a06355edaa49449
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jul 3 01:26:35 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-22]
    some doc changes; catch socket.error in the transport thread and log it as such instead of as an 'unknown exception'

commit 401e37fa23e9c78c0d3537741c6f923e6daad100
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 08:15:24 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-21]
    oops, missed changing the version name to nidoran

commit dff128c814635413a3cb83dd18d56db8dabe21e8
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 08:00:12 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-20]
    fix docs and update version to 1.3.1

commit ac475d4a549ba36806bac7e4a3d0b5e25e7adc87
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 07:24:10 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-19]
    2 keys needed for unit tests

commit 6ee7921d066396da13da7744fc0e0591a516453f
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 07:23:41 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-18]
    tweak random stuff in transport that i forgot what it does

commit 727cab9672d5951ee8d11667ba760b29b58b7527
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 06:02:44 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-17]
    more unit tests

commit 1fb38470aa557277fa00262566dc9ca96c190753
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 03:47:12 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-16]
    forgot this one

commit 81ba7dccef0f19df2025b0cb577409b143260732
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 03:44:25 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-15]
    random doc/comment tweaks

commit c0b22a3aec9f2a4868bbed23dc6e2542097a18f9
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 03:42:57 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-14]
    cute trick i saw openssh do in a network trace: if we're not encrypting, don't waste random bytes for the padding in packetizing

commit c5d2e9904aa830874e835b2f35a6d97cc72ba0b7
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 03:42:14 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-13]
    change pipe method to something that probably works on windows (the old system did not); also fix a race in _unlink

commit 139051f8158213db0d7df799500d6e97bce23f31
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jun 28 03:39:53 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-12]
    add notes about next version

commit b1a0d8afe980b8be7024c9ef6fc695f8fa6e5e25
Author: Robey Pointer <robey at lag.net>
Date:   Sat May 21 20:42:29 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-11]
    copy over changelog from previous tla archive

commit 44239ae077358a40f58c46449cfb929a3061bb67
Author: Robey Pointer <robey at lag.net>
Date:   Sat May 21 20:35:29 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-10]
    fix stupid bug in kex_group1 which luckily only affected unit tests

commit cb5aa0671bfeafacd225de350db3f4e7a049e7bc
Author: Robey Pointer <robey at lag.net>
Date:   Sat May 14 06:21:36 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-9]
    oooh maybe i'll test things before checking them in next time: rekeying was a little bit overzealous.  now it's careful to only rekey once and reset the counters in sync

commit 366f216e3f4792da0f619e6aeff84a91230c2527
Author: Robey Pointer <robey at lag.net>
Date:   Tue May 10 17:36:38 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-8]
    add unit tests for the packetizer, and fix a little locking bug where i think more of the packetizer write function should be inside a lock

commit e8efe095a68a764b1b9ebaa73510fea16707fd5a
Author: Robey Pointer <robey at lag.net>
Date:   Wed May 4 02:44:00 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-7]
    don't close the socket until the destructor -- we may drop a session before the socket is actually finished

commit 2c264c7df565007b2083304b3fe8f99c7af9e059
Author: Robey Pointer <robey at lag.net>
Date:   Wed May 4 02:43:14 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-6]
    when an auth method is rejected, log the list of acceptable auth methods

commit 36055c5ac2bd786a21aa05d248935a77a8fbccec
Author: Robey Pointer <robey at lag.net>
Date:   Sun May 1 08:04:59 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-5]
    split out Packetizer, fix banner detection bug, new unit test
    split out a chunk of BaseTransport into a Packetizer class, which handles
    the in/out packet data, ciphers, etc.  it didn't make the code any smaller
    (transport.py is still close to 1500 lines, which is awful) but it did split
    out a coherent chunk of functionality into a discrete unit.
    
    in the process, fixed a bug that alain spineux pointed out: the banner
    check was too forgiving and would block forever waiting for an SSH banner.
    now it waits 5 seconds for the first line, and 2 seconds for each subsequent
    line, before giving up.
    
    added a unit test to test keepalive, since i wasn't sure that was still
    working after pulling out Packetizer.

commit 2f2d7bdee88c9f9b14dc2495fb77d7abd1587d64
Author: Robey Pointer <robey at lag.net>
Date:   Sat Apr 30 19:21:43 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-4]
    add Transport.open_sftp_client

commit bcf197d02731b9548954a6c8dcad1bb290751439
Author: Robey Pointer <robey at lag.net>
Date:   Thu Apr 21 16:59:03 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-3]
    make SFTPClient.file an alias for SFTPClient.open.
    clean up docs a little, and make 'file' an alias for 'open'.
    this is how python is heading in general.

commit fc7ccdf834ac60557d28b40f91b8c245c9c7fa91
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 18 01:59:15 2005 +0000

    [project @ Arch-1:robey at lag.net--2005-master-shake%paramiko--dev--1--patch-1]
    wacky banner
    add the wacky banner to the archive.

commit bd7911895bb45bd82bb247b64cc419d67fb69d0a
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 18 00:53:57 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-164]
    fix some docs
    remove some epydoc comments about fileno() being non-portable.

commit 89ccac6bfa1e731f287e32b600e0d87d170e0ae7
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 18 00:30:52 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-163]
    add SFTPClient.close()
    add SFTPClient.close() and add a simple little unit test for it.

commit 29a5381ba17c5c93e7ed5c07a4ece223a8ed0b66
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 18 00:11:34 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-162]
    avoid os.environ['HOME'] in the demos
    avoid using os.environ['HOME'], which will never work on windows, and
    use os.path.expanduser() instead.  it's semi-moot because windows doesn't
    have a standard location for ssh files, but i think paramiko should set a
    good example anyway.

commit 18aaff8521d1d5eb6739c1d53686b1de326b8300
Author: Robey Pointer <robey at lag.net>
Date:   Sat Apr 16 23:38:22 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-161]
    integrated laptop work (test commit)
    Patches applied:
    
     * robey at lag.net--2003-public-master-shake/secsh--dev--1.0--base-0
       tag of robey at lag.net--2003-public/secsh--dev--1.0--patch-160
    
     * robey at lag.net--2003-public-master-shake/secsh--dev--1.0--patch-1
       test commit
    
     * robey at lag.net--2003-public/secsh--dev--1.0--base-0
       initial import
    
     * robey at lag.net--2003-public/secsh--dev--1.0--patch-1
       no changes

commit 2bdbe282345337a2926fc944ba52dd75c160b56b
Author: Robey Pointer <robey at lag.net>
Date:   Sun Apr 10 00:46:41 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-160]
    1.3 marowak
    bump version to 1.3 / marowak

commit 7e40c6f2bed7447cbee329102e22434784658bf8
Author: Robey Pointer <robey at lag.net>
Date:   Sun Apr 10 00:39:18 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-159]
    clean up SFTPAttributes.__repr__
    clean up SFTPAttributes repr() a bit.

commit 6e6f1cec7a31b9c53878e83bb19b609b6090da71
Author: Robey Pointer <robey at lag.net>
Date:   Sun Apr 10 00:13:54 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-158]
    remove ChangeLog from MANIFEST.in
    remove ChangeLog from the dist list.

commit 71a337ee08d5f55dbfd719bfa2d0f43b77d5db9f
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 6 07:24:28 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-157]
    change SubsystemHandler/SFTPServerInterface API
    change the API of SubsystemHandler to accept a reference to the
    ServerInstance object during construction.  this will break all code
    that currently creates subsystem handlers (like sftp servers) -- sorry!
    
    lots of little doc fixups (mostly indenting).

commit 5d8d1938fa6aa58a1b27730d8bcac8db963f4595
Author: Robey Pointer <robey at lag.net>
Date:   Sat Mar 26 05:53:00 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-156]
    rewrite channel pipes to work on windows
    the pipe system i was using for simulating an os-level FD (for select) was
    retarded.  i realized this week that i could just use a single byte in the
    pipe to signal "data is ready" and not try to feed all incoming data thru
    the pipe -- and then i don't have to try to make the pipe non-blocking (which
    should make it work on windows).  a lot of duplicate code got removed and now
    it's all going thru the same code-path on read.
    
    there's still a slight penalty on incoming feeds and calling 'recv' when a
    pipe has been opened (by calling 'fileno'), but it's tiny.
    
    removed a bunch of documentation and comments about things not working on
    windows, since i think they probably do now.

commit 3e5bd84cc58fc6db485c5a188ac0ef90280b2804
Author: Robey Pointer <robey at lag.net>
Date:   Fri Mar 25 20:06:56 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-155]
    fix sending of large sftp packet sizes
    fix a bug where packets larger than about 12KB would cause the session to
    die on platforms other than osx.  turns out that on most platforms, setting a
    socket timeout also causes timeouts to occur on writes (but not on osx).  so
    on a huge write, once the os buffers were full, paramiko would get a
    socket.timeout exception when writing, and bail.
    
    since the timeout is primarily so we can periodically poll to see if the
    session has been killed from elsewhere, do that on a timeout but otherwise
    continue trying to write.  large packet sizes (in sftp) should now work.

commit fead211c5ca75b654c218c6bcfc75552284719c6
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 28 08:06:08 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-154]
    even better 1.2 lapras
    re-bump the version # to 1.2 (with a new date since i added more stuff).
    add 2005 to the copyright date in a bunch of files.

commit 7490172401a48f8134e860120ef54a08303f63eb
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 28 07:49:56 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-153]
    tweak sftp_file write behavior on large blocks of data
    BufferedFile.write() wasn't correctly dealing with the possibility that the
    underlying write might not write the entire data block at once (even though
    the docs said it would).  now that it's working, make sftp_file take
    advantage of it in order to chop up blocks larger than 32kB (the max allowed
    on sftp) and add a unit test for it.

commit 2746d449067e3e25afe8d2afaf1e5bf740d9c20c
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 28 07:17:21 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-152]
    little doc fixes
    stupid little doc fixups that didn't fit with the other patches.

commit 246f3d46a291cc186128ac84a8916f53d4e9effb
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 28 07:16:22 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-151]
    fix race in transport thread startup
    set active=True from the methods that start the main transport thread, right
    before actually starting the thread.  this avoids a race where the main
    thread could be started, but the original thread could wake up from the
    event.wait(0.1) before the new thread actually set the transport active.
    impossible, you say?  no machines so slow exist?  au contraire, my sad
    little linux box faced this problem earlier today.

commit 4b8a9d3b7af4f80d3c4fc0d541c5425a063471a6
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 28 07:14:11 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-150]
    when combining stderr with stdout on a channel, merge the buffers too
    when turning on combine-stderr mode on a channel, grab the channel lock and
    feed any existing stderr buffer into the normal buffer.  this should help
    applications (and my unit tests) avoid races between data coming in over
    stderr and setting combine-stderr.
    
    _send_eof is now slightly safer too, although i don't think that really fixed
    anything.  it just makes me feel better.

commit 8ee26cd41246ee90418c148a8a5cf9bf78f09e45
Author: Robey Pointer <robey at lag.net>
Date:   Mon Feb 28 07:09:02 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-149]
    add thread ids to logs
    add a logging filter that reports the thread-id of the logger, and use
    that for all paramiko logging.  since thread-local stuff didn't appear
    until python 2.4, i hacked up my own little version to assign incrementing
    numbers to threads as they log.

commit e915dccc7dc97b79642a541da77c08c4c1e89b03
Author: Robey Pointer <robey at lag.net>
Date:   Sat Feb 26 21:12:43 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-148]
    forgot to check in stub_sftp
    yikes! don't forget to check this in: needed for unit tests.

commit b45a3a98a81d7b1dc4671fe6686a502c174e61b7
Author: Robey Pointer <robey at lag.net>
Date:   Sat Feb 26 21:11:04 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-147]
    1.2 (lapras)
    bump version stuff to 1.2 / lapras.

commit fb2d7bbdddeefd7c519c5a300b2f810fb364884f
Author: Robey Pointer <robey at lag.net>
Date:   Tue Feb 15 15:48:47 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-146]
    raise better exception on empty key
    raise a clearer exception when trying to create an empty key.

commit c7d56a309d8a1e0b9999cc39e24697f3d45eedcf
Author: Robey Pointer <robey at lag.net>
Date:   Tue Feb 15 15:47:02 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-145]
    add methods for sending/receiving a channel's exit status
    track a channel's exit status and provide a method (recv_exit_status) to
    block waiting for it to arrive.  also provide a convenience method for
    servers to send it (send_exit_status).  add shutdown_read and shutdown_write.
    fix a bug in sending window change requests.

commit f7b0a62e4ba7a2ad0ba3c92aae8ce79ee539f6cf
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 6 23:32:22 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-144]
    fix docs
    clean up some of the docs.

commit 0d10322783ff897df27341e80672c586f809ef68
Author: Robey Pointer <robey at lag.net>
Date:   Sun Feb 6 23:30:40 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-143]
    fix an sftp unit test
    fix one of the sftp unit tests to actually work.

commit ccd64202d95d968afbd132b9d32f2842cba39784
Author: Robey Pointer <robey at lag.net>
Date:   Sat Feb 5 07:45:20 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-142]
    fix windows sample script's HOME
    fix the HOME environ var to work on windows too.

commit c1ed20c4afaa4715f0ec1f4f802a587b3935f48f
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jan 25 05:17:55 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-141]
    misc logging fixes
    change the level of some log messages so interesting stuff gets logged at
    info instead of debug.  fix an oops where channels defaulted to being in
    ultra debug mode, and make this mode depend on a new Transport method:
    "set_hexdump".

commit 8878a5f3c28e02796af01bab91532dd05a3624f2
Author: Robey Pointer <robey at lag.net>
Date:   Mon Jan 17 10:09:09 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-140]
    more flexible logging
    some tweaks to make channels etc follow the logger setting of their parent
    transport, so that setting the log channel for a paramiko transport will
    cause all sub-logging to branch out from that channel.
    
    also, close all open file handles when the sftp server ends.

commit 3db675d1befe652e58f6c55c9d0633ba97cd5073
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jan 16 21:03:15 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-139]
    make loopback sftp tests the default
    change the unit tests to default to always running the sftp tests locally,
    and make a -R option to force the tests to run against a remote server.
    the tests seem to work fine locally, and it helps test out server mode,
    even though there's a danger that they could get isolated from reality
    and only test that paramiko can talk to itself.

commit b89025d4097e5d13b1dea90877cc3c166e6e6541
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jan 16 20:14:07 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-138]
    doc fixups
    little doc fixups that i did obsessively on the train one morning.

commit 1eda9b051bd59e3b7a22a3ef44b55fc7b1b35a6c
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jan 9 05:27:07 2005 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-137]
    added listdir_attr()
    add SFTPClient.listdir_attr() to fetch a list of files & their attributes,
    instead of just their filenames.  artur piwko would find this useful.

commit 811f2bf30f011f911fa72b29e7a566e6f6c2acab
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 19 19:56:48 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-136]
    loopback sftp test
    add ability to turn off more tests, and a secret (for now) -X option to do
    the sftp tests via loopback socket.  added another symlink sftp test to see
    what happens with absolute symlinks.

commit 34f9df15361b4e069e172679ccc1e478a240cd91
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 19 19:50:00 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-135]
    more sftp cleanup
    oops, this should've been part of the last patch.

commit 8d127ae8e19551b9f4d10b66430e26fbe0caeb5b
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 19 19:43:27 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-134]
    cleanup & docs in sftp
    add some more docs to SFTPHandle, and give a default implementation for
    close() that's usually right.  add a flush() to the default implementation
    of write().  document that symlink's args in the sftp protocol are out of
    order (the spec is wrong).

commit b2eb38483ca3cc7e64342c029cf17e203e915244
Author: Robey Pointer <robey at lag.net>
Date:   Mon Dec 13 07:32:14 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-133]
    unit test madness
    add some more testy bits and fix up some other bits.

commit 1cf0d33f1d5bf8f71bab0b49d1fa37116c38a86d
Author: Robey Pointer <robey at lag.net>
Date:   Mon Dec 13 07:31:01 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-132]
    oops (continued)
    er, part 2 of that.

commit caa8d4cf4166e134cc59a8acf4d4b6f07fd7c252
Author: Robey Pointer <robey at lag.net>
Date:   Mon Dec 13 07:29:38 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-131]
    move check_global_request
    move check_global_request into the server interface -- i missed it during
    the initial move (oops).

commit 2d9ad663ba6c2083a335d5863ee8d2d31d763ec9
Author: Robey Pointer <robey at lag.net>
Date:   Mon Dec 13 07:27:39 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-130]
    small fixups
    move _wait_for_send_window into the right place in Channel.  remove outdated
    note from auth_transport.  fix download url in setup.py.

commit ee0d4ae68effd315df0e52ea76eb66b03938b127
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 12 09:58:40 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-129]
    1.1 (kabuto)
    edit various files to bump the version to 1.1.
    also fix to point to the new url.

commit 97eca767a2d0edde23255585a53cedccaeacea13
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 12 09:38:24 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-128]
    more unit tests
    added unit tests for multi-part auth, exec_command, and invoke_shell.

commit 1a32d2b4efa39a96bef157a18178cf0543ab935d
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 12 09:32:17 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-127]
    doc fixups
    fix some typos in sftp_client docs

commit a3971274e8ae587a71b887fec15d8b4508b19b4e
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 12 09:25:15 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-126]
    server support for stderr & exec_command
    for the server side of my stderr blunder, add send_stderr & sendall_stderr,
    and make the sending side of makefile_stderr work correctly.
    
    also, call check_channel_exec_request on a server object for exec requests
    on a channel.

commit 83a932a1b39a0e81ffe1e5c885151d2db7ddcf4e
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 12 09:16:03 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-125]
    add client-side multi-part auth support
    added support for multi-part authentication (even though nobody supports it
    that i've seen).  on a successful "partial" auth, the auth_* method will
    return a list of acceptable means to continue authenticating.

commit 438673c11f45bd37e2c622b4bb6e20aad36b4984
Author: Robey Pointer <robey at lag.net>
Date:   Sat Dec 11 03:44:33 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-124]
    docs fixup
    fix a comment typo, and add @since designators to a couple of new methods.

commit 767d73929996a839636fb5afedad38439d5916d5
Author: Robey Pointer <robey at lag.net>
Date:   Sat Dec 11 03:43:18 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-123]
    clean up authentication
    add new exception "BadAuthenticationType", which is raised when auth fails
    because your auth type (password or public-key) isn't valid on the server.
    
    used this as an excuse to clean up auth_password and auth_publickey so their
    'event' arg is optional, and if missing, they block until auth is finished,
    raising an exception on error.
    
    also, don't close the session on failed auth -- the server may let you try
    again.
    
    added some test cases for failed auth.

commit 73a0df1df3ee3bcda654d383303f2a5771946d41
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 10 08:30:44 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-122]
    symlink, readlink
    add support for symlink command, and finish support for readlink.  (i guess
    i started readlink a while ago but forgot to add the right method to the
    SFTPServerInterface class.)

commit fa8c4e20bdba3ba77cbf6616d9b60618b69fe72c
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 10 08:27:43 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-121]
    other part of that last patch
    oops, forgot this part.

commit 37892fc0c75bcdc8304eeb7d102334b30ac0f85d
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 10 08:25:28 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-120]
    add stderr support methods
    big embarrassment: i didn't read the ssh2 docs close enough, and all this
    time paramiko wasn't handling "extended_data" packets, which contain stderr
    output.
    
    so now, several new functions: recv_stderr_ready() and recv_stderr() to
    mirror recv_ready() and recv(), and set_combined_stderr() to force stderr
    to be combined into stdout.  also, makefile_stderr() to create a fake file
    object to represent stderr.

commit fb5493472615afd1fb41fc210185d06923dcb6fb
Author: Robey Pointer <robey at lag.net>
Date:   Fri Dec 10 07:55:33 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-119]
    reformat README
    reformatted the README to a slightly smaller margin, just because.

commit ad87909720bf7e89cc5463c24d7c8fd6db58fc30
Author: Robey Pointer <robey at lag.net>
Date:   Thu Dec 9 04:15:12 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-118]
    fix SFTPFile gettimeout/settimeout
    i don't think the gettimeout/settimeout calls on SFTPFile ever worked.
    also, simplify the implementation of _get_size() since it's nearly
    identical to stat().

commit 0fa97ec147dabb46853f7265edf4501d100fd735
Author: Robey Pointer <robey at lag.net>
Date:   Thu Dec 9 02:42:36 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-117]
    readme comments
    add another fixme to the readme

commit ed8b3762057cd206ef0262920991ba87ec193184
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 26 22:07:31 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-116]
    doc fixups
    explain "recv_ready" better, and add debug descriptions for the kex codes.

commit df63dc41549fa0e997049cb79d82e3f9d66edfe1
Author: Robey Pointer <robey at lag.net>
Date:   Thu Nov 25 19:39:34 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-115]
    fix CONNECTION_FAILED_CODE
    oops, fix typo in channel request failed.

commit 13f818f04f53573f873a019874dbdaec79e5365e
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 22 07:40:39 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-114]
    fix typo in channel
    fix typo that alain found: pipd_wfd -> pipe_wfd.

commit a8a023a2432753bc6bdfdd0011b66869642845d0
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 22 07:27:21 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-113]
    sftp server support!
    finally check in sftp_handle (file handle abstraction), sftp_si (server
    interface), and sftp_server (server implementation) -- all of which make
    a roughly 90% implementation of server-side sftp.

commit 611d66428ed7d1885c406e490dfe8bd7a3307fea
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 22 07:07:08 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-112]
    add finish_subsystem()
    when a SubsystemHandler is being decomissioned (the client has closed the
    channel or transport, or the socket went away), make a callback to let the
    handler do any shutdown it needs to.

commit 961525f3d8381b9cfc717f01c5c44cec83649106
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 22 07:04:31 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-111]
    fix extremely unlikely channel counter wrapping
    Transport's channel counter can overflow after 4 billion some channels are
    created.  make it wrap back around after 16 million instead.  also allow the
    logging channel to be set manually.  fix some comments elsewhere.

commit fda92c6f4475494898aeb9f88972ce538b9ddb02
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 22 07:01:43 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-110]
    fix Transport.get_username() to work in server mode too
    whenever i split the 'username' field into username and auth_username,
    i guess that made get_username() stop working for server mode (because the
    username was stored in a different field).  this should fix it.

commit 73e8a134ce8ac05c30d6d269dda40b42ff4e8488
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 7 03:10:53 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-109]
    v1.0 (jigglypuff)
    bump all the version numbers up to 1.0 (jigglypuff).

commit 920df7d0ae14dfcca92b4a952b84fa40e7c71222
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 7 02:51:42 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-108]
    add filename to SFTPAttributes
    add filename to the attributes stored in an SFTPAttributes object.

commit 2f3228dd88a81e037a43bd0f990e2558da853056
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 7 02:31:48 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-107]
    fix kex_gex
    fix kex_gex (group-exchange key exchange) to, *cough*, work again, and also
    layout kex_group1 a little more sanely.

commit 5a1b5848aeca3b5941c18c0c0a78a13504e147aa
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 7 02:29:20 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-105]
    move ChangeLog
    move ChangeLog out of the way because tla can autogenerate any useful
    ChangeLog.

commit 224f6e474767103a596dfdcd9ce10c76990486a0
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 7 02:28:33 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-104]
    fix location of SFTPError
    fix location of SFTPError.

commit 1c32fcd99a955516d45fb6ea89379e9934c2cdf1
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 7 02:17:18 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-103]
    rename sftp constants
    replace oddly named sftp constants (FX_OK for example) with names that make
    a bit more sense when sober (SFTP_OK).

commit 0ab2735dd43b1ff18a122095b77c0d6031c27c91
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 7 02:08:11 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-102]
    add key exchange tests + 1 more sftp test
    add test suite for key-exchange protocols, since i apparently broke the
    "gex" protocol recently and never noticed.  also add an sftp unit test for
    mkdir/rmdir.

commit a97b9946bb87d380bb919814c0a51aa0307f9a8c
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 7 02:00:50 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-101]
    remove old demo keys
    the keys are in tests/ now.

commit e86c5f0106cb83ae423f6ef7dfc04e51b62c8439
Author: Robey Pointer <robey at lag.net>
Date:   Sat Nov 6 20:32:08 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-100]
    don't forget demo_windows.py
    update MANIFEST.in to include demo_windows.py and not include the demo
    keys (they're in tests/ now).  clean up the README to explain the demo
    scripts better now, since there are so many of them.  then fix up the
    demo scripts to look in tests/ for the keys.
    
    demo_windows.py doesn't need to call get_pty() (in fact, i think that's
    blowing openssh's mind) and was executing the wrong command.

commit 1d1a60047c1c7b09dd49c0444c2ea88183be3872
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 1 07:07:48 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-99]
    use getpass
    convert raw_input to getpass as suggested many weeks ago.

commit 6eb59a2b533fa61566ff01865a784b6c720db51b
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 1 03:54:01 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-98]
    don't unlink a Channel until the server closes it too
    when close()'ing a Channel, don't immediately unlink it from the Transport.
    instead, wait for the server to send a close message.
    
    this should fix a bug where doing close() on an EOF'd channel would cause
    the entire transport to be killed, because the server would send an
    'exit-status' and 'close' message for a channel that we no longer had a
    record of.

commit d7caa20213130445f5631e7b0aebfc5fb1507ec6
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 1 03:43:28 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-97]
    better debugging, improve subsytem handler
    add a list of ssh packet names for debugging.  improve the server-mode
    subsystem handler so it can take extra parameters (list or keyword) and
    pass them to the subsystem constructor.  remove a misleading comment
    about rekeying (which was already implemented).

commit 44d07583bb08f97a1859908d2ae4fdab77f3d9bc
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 1 03:37:42 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-96]
    remove key.valid check
    oops!  'key.valid' no longer works -- catch the SSHException instead, and log
    it.

commit a73413c5886dd411aeb65c941797516c8bc240a4
Author: Robey Pointer <robey at lag.net>
Date:   Sat Oct 23 07:36:23 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-95]
    ivysaur 0.9
    update ivysaur release date, and add the list of changes to the README
    file.

commit 6caf15b4256c969ca0e0970281d3deb21e29bb62
Author: Robey Pointer <robey at lag.net>
Date:   Wed Oct 20 16:52:51 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-94]
    start testing Transport
    the beginnings of tests for Transport.  only the bare minimum is there right
    now.
    
    also started doc'ing things up to ivysaur.

commit 2939b6936b50d207048d9e245c202c6a7c705643
Author: Robey Pointer <robey at lag.net>
Date:   Mon Oct 18 04:54:27 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-93]
    switch Transport.connect() to using a Pkey object for the host key
    i suddenly realized that passing "hostkeytype" and "hostkey" as strings to
    Transport.connect() was pretty silly since i went to all the effort of making
    a class specifically for holding keys.  so Transport.connect() now just takes
    host-key argument: "hostkey" as a PKey object.
    
    updated the demos to use PKey objects when reading the host key file, and to
    use the new "hostkey" argument.

commit e1639180f99a381e879b29c2ca25cbe02fe09f02
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 25 22:07:59 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-92]
    add rsa/dss key object unit tests
    add tests for rsa/dss key objects -- yay!

commit ec3df4cc0d04a62de33faa0c8e7bb0eb4be75289
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 25 22:03:48 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-91]
    fix test.py to use options instead of env vars, sftp tests default off
    fix up the test framework so that the sftp unit tests aren't always run (you
    have to ask for them explicitly) and they take their configuration from
    command-line options.  they still require a remote server.

commit a5f6a984ee445588d273e1c4cf71fa604ad6018f
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 25 21:58:11 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-90]
    fix __init__
    fix __init__ to export BufferedFile and randpool, and to catch up with the
    changes from a week or 2 ago where sftp_attr & friends were split off.

commit 12269c0c9b0fc84f5b52134b48001d33f784bb3a
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 25 21:47:19 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-89]
    fix some Transport docs
    document that Transport also would like close() and settimeout() to exist
    on the socket-like object passed to the constructor.

commit 3e644a94f17fbf0a683bf298f865cd62694add19
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 25 21:32:53 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-88]
    add Message.rewind()
    add rewind() method to Message, which just resets the pointer so you can
    start reading from the beginning again.  this is useful for some tests.

commit 12287b3e0e95664a383902b69a0881775b550feb
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 25 21:28:23 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-87]
    clean up pkey interface
    change the pkey interface so that it's no longer possible to have a pkey
    that doesn't represent a valid key.  (ie: no more "blank" key objects.)
    also add "get_bits" and "can_sign" methods to determine the key bit length
    and whether it can sign things (contains the "private parts") respectively.

commit 0737ea2ca410a70f0aa574daa3c4d2b5b1a1226e
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 11 21:01:32 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-86]
    unit tests for Message
    spanking new unit tests for Message.  i'm trying to fix the embarrassment
    of having so little of paramiko testable.  next up is Transport!

commit 4cac30252a9aebccc87c76f5671a16d5b0b9b57a
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 11 20:56:01 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-85]
    move SFTPFile and SFTPAttributes into their own files
    move SFTPFile and SFTPAttributes into their own files.

commit 3a4ca74e0a16d07296fc51391d466819b2ca3dad
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 11 20:50:39 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-84]
    add sftp.normalize
    kevin c. dorff pointed out that it would be nice to expose a way to
    determine the server's "current working directory", so this new method
    (normalize) directly maps to REALPATH.

commit 5176b1ab85703e8f6faaa15f4c4809634fd47cb0
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 11 20:43:09 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-83]
    tweak Message.add() in the key exchanges
    use the new Message.add() behavior to make a little code here much easier
    to read.

commit 0e66dd47acdd63dbe251edb651f09dcb20a0ade7
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 11 20:40:08 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-82]
    doc fixes
    fix "string" -> "str" in types when documenting BufferedFile.

commit 0e96d4a7e2495e4409fd1d9d629a77e41043e75e
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 11 20:37:59 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-81]
    more unit tests
    add test for BufferedFile.read(-1) and sftp.normalize().

commit 8c9add1a6beba4a6fce6febe173130d3de328be5
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 11 20:36:49 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-80]
    move SubsystemHandler to server.py
    move SubsystemHandler into server.py where it makes more sense (it's part of
    the server interface).
    
    also fix up paramiko's "version string" used in ssh2 negotiation to stop
    saying "pyssh" and start saying "paramiko". :)

commit 026425c117d37793450a9dc4bfcb05a55fbde888
Author: Robey Pointer <robey at lag.net>
Date:   Sat Sep 11 20:35:19 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-79]
    Message.add() can take many args
    a bit of cleanup to Message:  add() can now take any number of params, and
    will add them all in order (using type guessing).

commit caa1f881056b8378cb7058bf98769d2e36b59ada
Author: Robey Pointer <robey at lag.net>
Date:   Thu Sep 9 01:36:45 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-78]
    fix rbuffer -> _rbuffer in 3 places i missed
    fix 3 places where "rbuffer" hadn't been converted to "_rbuffer".  thanks to
    kevin c. dorff for the bug report.

commit ff6ff88209e35ceb26d7044e1cdb687f52401feb
Author: Robey Pointer <robey at lag.net>
Date:   Tue Sep 7 06:56:49 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-77]
    docs for SubsystemHandler
    add documentation to constructor for SubsystemHandler.

commit 7946f33769f4658da1aa5d0b5222a8c1005ab4f3
Author: Robey Pointer <robey at lag.net>
Date:   Tue Sep 7 06:54:31 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-76]
    add sftp_client.py
    i retardedly forgot to import this file a few days ago: it's the split-out
    client mode for sftp.  it now also has some changes to adapt it to the
    improved SFTPAttributes object API.

commit 574c0dd3682a4fa850efc4fde8a55869ded59b5f
Author: Robey Pointer <robey at lag.net>
Date:   Tue Sep 7 06:51:03 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-75]
    clean up SFTPAttributes
    add english descriptions to the FX_* error codes of sftp.  clean up (and
    document) SFTPAttributes since it's exported now, and make it simple to
    generate one from a python os.stat object.  make "_pythonize" the default --
    that is, just use the same field names as python does for os.stat.  (i'm not
    sure why i didn't do it that way in the first place; probably ignorance.)
    also add str() method that converts the SFTPAttributes into a string suitable
    for use in ls (used in an obscure way in sftp servers).

commit 4cbbc57c6b68cdc731e55b8e81b38bec8da4aab3
Author: Robey Pointer <robey at lag.net>
Date:   Tue Sep 7 06:45:53 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-74]
    note pycrypto 2.0 in README
    update the README to note that pycrypto 2.0 works (i just tried it).  also
    fix the name from pyCrypt back to pycrypto -- that project is having trouble
    making up its mind about naming. :)

commit 39732652642d0faa0328ce671e6e6ca9a2983b5f
Author: Robey Pointer <robey at lag.net>
Date:   Sun Sep 5 07:44:03 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-73]
    split sftp into sftp, sftp_client; renamed SFTP -> SFTPClient
    add sftp_client file, and split out the common code (sftp) from stuff specific
    to client mode (sftp_client).  renamed SFTP class to SFTPClient, but left an
    alias so old code will still work.
    
    renamed a bunch of sftp constants now that they're better hidden from epydoc.

commit 8dbab502339064816a391ba45463c87360e88e80
Author: Robey Pointer <robey at lag.net>
Date:   Sun Sep 5 07:41:45 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-72]
    some framework for adding subsystem handlers in server mode
    you can now register a subsystem with a Transport by passing in the name
    (like "sftp") and a class (like a hypothetical SFTPServer).  the default
    ServerInterface.check_channel_request_subsystem now checks this table in
    Transport, and if it finds a match, it creates a new thread for the handler
    and calls into it.  a new class SubsystemHandler is added for this purpose
    (to be subclassed).

commit 6cef2f12591f5384f92457aa8cc49e153348d07b
Author: Robey Pointer <robey at lag.net>
Date:   Sun Sep 5 07:37:40 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-71]
    remove redundant 'auth_complete' member
    remove the redundant 'auth_complete' field and just use 'authenticated' for
    both client and server mode.  this makes the repr() string look correct in
    server mode instead of always claiming that the transport is un-auth'd.

commit aba7e37a383fc3d7ffedc6d9e433f65223ac5fe2
Author: Robey Pointer <robey at lag.net>
Date:   Fri Sep 3 22:39:20 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-70]
    clean up server interface; no longer need to subclass Channel
    - export AUTH_*, OPEN_FAILED_*, and the new OPEN_SUCCEEDED into the paramiko
      namespace instead of making people dig into paramiko.Transport.AUTH_* etc.
    - move all of the check_* methods from Channel to ServerInterface so apps
      don't need to subclass Channel anymore just to run an ssh server
    - ServerInterface.check_channel_request() returns an error code now, not a
      new Channel object
    - fix demo_server.py to follow all these changes
    - fix a bunch of places where i used "string" in docstrings but meant "str"
    - added Channel.get_id()

commit 440b3de06abfd358e93e698fde178ef0c5c85939
Author: Robey Pointer <robey at lag.net>
Date:   Tue Aug 31 02:44:56 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-69]
    clean up SecurityOptions
    the preferences are now tuples in Transport, and passed as tuples out of
    SecurityOptions, so that the options can't be modified without setting them
    back to the options field again.  the algorithm lists in Transport are used
    to validate the fields.

commit aebe186c3e2810387e0234b2a41ce3051d567c47
Author: Robey Pointer <robey at lag.net>
Date:   Mon Aug 30 20:22:10 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-68]
    added Transport.get_security_options()
    just something i wanted to play with:
    added Transport.get_security_options() which returns a SecurityOptions object.
    this object is a kind of proxy for the 4 "preferred_*" fields in Transport,
    and lets me avoid exposing those fields directly in case i change my mind
    later about how they should be stored.
    
    added some docs to Channel explaining that the request methods now return
    True/False, and fixed up docs in a few other places.

commit 5598a8f88f5854d792428739ca7e67b67993f330
Author: Robey Pointer <robey at lag.net>
Date:   Sat Aug 28 04:21:12 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-67]
    replay patch 63 (missing channel changes)
    i'm still getting the hang of tla/arch, obviously.
    
    replay patch 63, which was meant to be part of the later mega-patch, but
    apparently when i reversed it, i lost it entirely.

commit c86c4f3949e2cc6db3c09828b9518e27c6c3a304
Author: Robey Pointer <robey at lag.net>
Date:   Fri Aug 27 00:57:40 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-66]
    new ServerInterface class, outbound rekey works, etc.
    a bunch of changes that i'm too lazy to split out into individual patches:
    * all the server overrides from transport.py have been moved into a separate
      class ServerInterface, so server code doesn't have to subclass the whole
      paramiko library
    * updated demo_server to subclass ServerInterface
    * when re-keying during a session, block other messages until the new keys
      are activated (openssh doensn't like any other traffic during a rekey)
    * re-key when outbound limits are tripped too (was only counting inbound
      traffic)
    * don't log scary things on EOF

commit 34d975b9722236ae946c02a5c23d7231e67fc4e1
Author: Robey Pointer <robey at lag.net>
Date:   Fri Aug 27 00:28:33 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-65]
    add settimeout/gettimeout/setblocking, some bugfixes.
    hide the command and response codes in sftp so they aren't exported.
    add settimeout/gettimeout/setblocking that just wrap calls to the underlying
    socket or channel.  fix _read_all to not catch timeout exceptions.

commit 32afce8d495a19fd8cb535f3258ef3f022e0db41
Author: Robey Pointer <robey at lag.net>
Date:   Fri Aug 27 00:26:35 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-64]
    reverse messed-up patch
    Patches applied:
    
     * robey at lag.net--2003-public/secsh--dev--1.0--base-0
       initial import
    
     * robey at lag.net--2003-public/secsh--dev--1.0--patch-1
       no changes

commit 3eb52a18ab35be9b362c478d7b1f24a309524988
Author: Robey Pointer <robey at lag.net>
Date:   Fri Aug 27 00:06:42 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-63]
    add settimeout/gettimeout/setblocking, some bugfixes.
    hide the command and response codes in sftp so they aren't exported.
    add settimeout/gettimeout/setblocking that just wrap calls to the underlying
    socket or channel.  fix _read_all to not catch timeout exceptions.

commit c6a61c2a0140131636c0da3d0cf0a9b5b6d26651
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jun 27 20:14:15 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-62]
    version -> horsea
    up version to horsea.

commit 690a05fff87d7a8dac6c5b1cb1fbc0be3c6adc0f
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jun 10 18:12:00 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-61]
    no more Foobar
    fix "Foobar" to be "Paramiko" in the one place i missed it in all the gpl
    headers.  sigh. :)

commit 146417c56c3a9911b0c4f4eec212e69d2d994455
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jun 10 18:08:50 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-60]
    limit read/write requests to 32KB, advertise 32KB max packet size
    one of the unit tests was failing because the openssh sftp server was dropping
    the connection without any error.  turns out they have a maximum allowed write
    size (possibly around 64KB).  the sftp rfcs have a small hint that some servers
    may drop read/write requests of greater than 32KB.
    
    so, all reads are limited to 32KB, and all writes > 32KB are now chopped up
    and sent in 32KB chunks.  this seems to keep openssh happy.
    
    also, we now advertise 32KB max packet size instead of 8KB (the speed
    improves a lot), and log when we read/write a packet.  and sftp files are
    flushed on seek.

commit f0ba3c482eb937a450cac99b578a6197ed54101b
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jun 10 18:02:13 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-59]
    speed up parts of BufferedFile
    BufferedFile uses cStringIO for the write buffer now (i don't actually notice
    any speed difference so this might revert later) and the default buffer size
    has been upped from 1KB to 8KB.
    
    when scanning for linefeeds (when writing to a line-buffered file), only scan
    the newly-written bytes, since we know all the previously buffered data is
    linefeed-free.  this was the #1 slowdown on the 1MB-file unit test.
    
    also, limit the buffering on line-buffered files to whatever the default
    buffer size is.  there's no reason to buffer 1MB waiting for a linefeed.

commit cba104ce3f83ef7844ae9598502a974a36ce8682
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jun 10 17:55:17 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-58]
    some Channel fixes for max packet size & blocking on zero window
    some clean-ups and fixes to channels:
    * when send() is blocked on a zero-width window, check that the channel is
      still open.  this was causing some lockups.
    * set a lower bound to the "maximum packet size" we accept from the remote
      host.  if they tell us anything less than 1KB, assume they meant 1KB.  (it's
      not reasonable to fragment below that.)
    * leave a little padding instead of cutting right up to the maximum packet
      size: some space will be taken up by protocol overhead.
    * turn off some of the debug log lines unless "ultra_debug" is on (nobody
      cares about the feed info)

commit 1144a5d3d9232535d722d9ccded40ad28dbf341d
Author: Robey Pointer <robey at lag.net>
Date:   Thu Jun 10 17:35:30 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-57]
    more unit tests
    add a unit test for sending a large (1MB) file with line buffering but no
    linefeeds (this triggered several bugs and inefficiencies), and another test
    to verify that the write buffer is flushed on seek.

commit 9baa2b361eb5dce72f80bac5936615853d0b2fbb
Author: Robey Pointer <robey at lag.net>
Date:   Mon May 31 23:48:10 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-56]
    add forward.py demo script; bump to gyarados
    add a demo script to show how to do local port forwarding.
    
    add gyarados to all the docs and bump the version number everywhere.

commit 4d30633457015d53baebb95d3945e1e72618e85a
Author: Robey Pointer <robey at lag.net>
Date:   Sat May 29 18:58:11 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-55]
    add an sftp unit test for making 100 files
    create 100 files on the remote server, set their mode with chmod, then verify
    that they're all there and contain the right data.  valeriy is reporting that
    sometimes he's getting stuck after 20 and though i'm not seeing it, i want to
    add a test to try to pin it down.

commit af8cfeced90cd1b9630b262b18d0b8773dade491
Author: Robey Pointer <robey at lag.net>
Date:   Sat May 29 18:56:10 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-54]
    add direct-tcpip ability to open_channel
    open_channel can now be given a dest_addr and src_addr, which are filled in
    if the channel type is "forwarded-tcpip" or "direct-tcpip".  these channel
    types are used in remote & local port forwarding, respectively.  i've only
    tested "direct-tcpip" but i think if one works, they both should work.
    
    also fixed a bug in connect where it was still assuming the old meaning for
    get_remove_server_key() (oops!) and changed the sense of a send() failure
    from <= 0 to < 0 since it may be possible for send() to return 0 and it not
    be an EOF error.

commit 6ea60572afe6bb2fc30b197946ea653451fc240e
Author: Robey Pointer <robey at lag.net>
Date:   Sat May 29 18:48:23 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-53]
    add note about utf8 encodings
    add info to the README about what to do if python complains about missing
    encodings.  veleriy pogrebitskiy ran into this and had advice.

commit ed77581d7a8a36af5a141d8bac41213aa9ef750a
Author: Robey Pointer <robey at lag.net>
Date:   Mon May 17 07:41:50 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-52]
    fix deadlock in closing a channel
    closing a channel would enter an odd codepath where the lock was grabbed,
    some stuff was done, then another function was called where the lock was
    grabbed again.  unfortunately python locks aren't monitors so this would
    deadlock.  instead, make the smaller function lock-free with an explicit
    notice that you must be holding the lock before calling.

commit 36a867a01767485106e91d8046314bd8f45331f8
Author: Robey Pointer <robey at lag.net>
Date:   Mon May 17 00:43:43 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-51]
    fix utf8, raise packet size, log exceptions, be more lax with sfp servers
    explicitly import utf8 encodings for "freezing" (and also because not all
    platforms come with utf8, apparently).  raise the max acceptable packet size
    to 8kB, cuz 2kB was too low.  log exceptions at error level instead of debug
    level.  and don't reject older sftp servers.

commit 4d774d62a5f32be58e56e7aedba685f353da31e8
Author: Robey Pointer <robey at lag.net>
Date:   Fri Apr 23 22:55:16 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-50]
    fearow date and last-minute fixes
    update release date of fearow to 23apr.  fix channel._set_closed() to grab
    the lock before notifying the in/out buffers that the channel is closed.
    try roger's trick for finding the home folder on windows.

commit 2feddf8ef78c8cfc05862d723b230f2baabdada3
Author: Robey Pointer <robey at lag.net>
Date:   Thu Apr 8 06:31:08 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-49]
    fix doc typos

commit 11799765e2c95cfd11109b3e6653f1e5803b4953
Author: Robey Pointer <robey at lag.net>
Date:   Thu Apr 8 05:48:16 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-48]
    set version number to fearow
    set version number to fearow.

commit 7a3323118e64064f788942c0303bf90e22c87676
Author: Robey Pointer <robey at lag.net>
Date:   Thu Apr 8 05:12:20 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-47]
    add socket.timeout for py22
    oops, forgot this vital part of the py22 patches.  roger binns sent me a
    code patch that included this snip.

commit 5691415af1c35fc6dc931d274726a9b336137483
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 7 16:05:48 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-46]
    README update notes
    added notes on what's new, what to watch out for in py22.  added a "since:
    fearow" to all the relevant API calls that are new.

commit 17acfb5d28be4c5fec3253ef0f55ebc8007c1863
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 7 15:52:07 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-45]
    add set_keepalive()
    add set_keepalive() to set an automatic keepalive mechanism.  (while waiting
    for a packet on a connection, we periodically check if it's time to send a
    keepalive packet.)

commit 1af636000743dcd43f17ad79d5b59aa83e1bc384
Author: Robey Pointer <robey at lag.net>
Date:   Wed Apr 7 06:07:29 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-44]
    add get_username() method for remembering who you auth'd as
    add get_username() method for remembering who you auth'd as.  also, fix these
    bugs:
    * "continue" auth response counted as a failure (in server mode).
    * try to import 'logging' in py22 before falling back to the fake logger,
      in case they have a backported version of 'logger'
    * raise the right exception when told to read a private key from a file that
      isn't a private key file
    * tell channels to close when the transport dies

commit 68c8a9b2e69f0d5f4f350b26ac1998d26a22dac4
Author: Robey Pointer <robey at lag.net>
Date:   Tue Apr 6 22:03:21 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-43]
    fix encrypted private key files
    the random byte padding on private key files' BER data was confusing openssh,
    so switch to null-byte padding, which is slightly less secure but works with
    crappy old openssh.  also, enforce the mode when writing the private key
    file.  we really really want it to be 0600.  (python seems to ignore the
    mode normally.)

commit 945a41dd3d2cf7f3d37012c588d8eb07bcc296b2
Author: Robey Pointer <robey at lag.net>
Date:   Tue Apr 6 08:16:02 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-42]
    support py22, more or less
    add roger binns' patches for supporting python 2.2.  i hedged a bit on the
    logging stuff and just added some trickery to let logging be stubbed out for
    python 2.2.  this changed a lot of import statements but i managed to avoid
    hacking at any of the existing logging.
    
    socket timeouts are required for the threads to notice when they've been
    deactivated.  worked around it by using the 'select' module on py22.
    
    also fixed the sftp unit tests to cope with a password-protected private key.

commit ed72847ad1e392af6bb8920176c30548c68ddb23
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 5 22:32:03 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-41]
    make get_remote_server_key() return a PKey object
    a good suggestion from roger binns: make get_remote_server_key() just return
    a pkey object instead of a tuple of strings.  all the strings can be extracted
    from the pkey object, as well as other potentially useful things.

commit c6d5ba9c5225b119bd718b4fbc1523dc9b3a3926
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 5 19:36:40 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-40]
    add dss key generation too, and fix some bugs
    added the ability to generate dss keys and write private dss key files,
    similar to rsa.  in the process, fixed a couple of bugs with ber encoding
    and writing password-encrypted key files.  the key has to be padded to the
    iblock size of the cipher -- it's very difficult to determine how the others
    do this, so i just add random bytes to the end.
    
    fixed the simple demo to use Transport's (host, port) constructor for
    simplicity, and fixed a bug where the standard demo's DSS login wouldn't
    work.
    
    also, move the common logfile setup crap into util so all the demos can just
    call that one.

commit 70faf02f3eb9ecd6d33f23881fca9b9057ff297f
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 5 10:37:18 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-39]
    add global request mechanism
    add transport.global_request() to make a global-style request (usually an
    extension to the protocol -- like keepalives) and handle requests from the
    remote host.  incoming requests are now handled and responded to correctly,
    which should make openssh-style keepalives work.  (before, we would silently
    ignore them, which was wrong.)

commit c9d301b782f972eaabbbb8dbaadb28781599aed6
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 5 10:24:33 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-38]
    add common.py file
    missing from previous change because tla doesn't like to add files in some
    situations. (frown)

commit 01bf5477a04cbb34974aae92f6c5965572800b63
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 5 10:16:31 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-37]
    can now generate rsa keys (not dss yet)
    added functionality to ber to create ber streams.  added some common methods
    to PKey to allow dumping the key to base64 (the format used by openssh for
    public key files and host key lists), and a factory for creating a key from
    a private key file, and a common way to save private keys.  RSAKey luckily
    didn't have to change that much.
    
    also added a factory method to RSAKey to generate a new key.

commit 8fafd1aa1716bdf50575c4c3f98e46a2c7e73f8c
Author: Robey Pointer <robey at lag.net>
Date:   Mon Apr 5 10:12:59 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-36]
    add common.py for commonly used constants and globals
    common.py now stores the constants and globals.
    lots of renaming because of this.

commit d757f90ac52d5a98b8b7db98297a50f6e53a81d0
Author: Robey Pointer <robey at lag.net>
Date:   Fri Apr 2 02:41:43 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-35]
    add send_ignore
    add send_ignore() call to allow for sending garbage ignored packets to the
    remote side.

commit f8a3a6213650fd8b8473d1301918ca343678ce22
Author: Robey Pointer <robey at lag.net>
Date:   Tue Mar 16 07:33:09 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-34]
    fix some arcana in unpacking private keys
    "!= type([])" is a pretty obscure way to say it.  let's try "is not list"
    which is a lot more readable.
    
    (mostly this is a test to make sure tla is working okay on my laptop.)

commit 0ae801447ede34b113663f09b5903c00b3644fb1
Author: Robey Pointer <robey at lag.net>
Date:   Tue Mar 9 01:09:17 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-33]
    include tests in manifest
    include the tests in the manifest for dist, and remove some outdated notes in
    NOTES about the exported API (this is doc'd wayyy better in epydoc now).

commit 14f2193d3979c910d205282a43ca2da8f85f3915
Author: Robey Pointer <robey at lag.net>
Date:   Mon Mar 8 17:54:19 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-32]
    add unit tests
    add unit tests for BufferedFile and SFTP (it's a start).  remove the demo sftp
    client because it was 99% copied from the other demos, which makes it kinda
    confusing.  the unit tests are a much better example.

commit 7cd7fced6e89b92ceecb2209a6351f22d602abbf
Author: Robey Pointer <robey at lag.net>
Date:   Mon Mar 8 17:52:25 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-31]
    bump version number to eevee
    bump the version number to eevee in a few places and talk about the unit
    tests.

commit e5193fb23f2c8bb9821a064c64a46a0defb26699
Author: Robey Pointer <robey at lag.net>
Date:   Mon Mar 8 17:50:49 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-30]
    finish up client sftp support
    added 'stat' to SFTPFile and SFTP, documented 'open' and 'listdir', and added
    'rmdir', 'lstat', 'symlink', 'chmod', 'chown', 'utime', 'readlink'.
    
    turned off ultra debugging now that the unit tests are all working.

commit 9f6bbb651997eac01f5385419f78c26144712548
Author: Robey Pointer <robey at lag.net>
Date:   Mon Mar 8 17:45:44 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-29]
    fix some docs and BufferedFile.readline
    fix some documentation and fix readline()'s universal newline support to
    always return strings ending with '\n', regardless of how they were in the
    original file.  (this is an obvious feature of python's universal newline
    support that i somehow missed before.)

commit c565d66e390f613f776146665bebbe63a163b0e2
Author: Robey Pointer <robey at lag.net>
Date:   Mon Mar 8 09:47:47 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-28]
    fix lingering thread bug
    this bug has been in there forever and i could never figure out a workaround
    till now.
    
    when the python interpreter exits, it doesn't necessarily destroy the
    remaining objects or call __del__ on anything, and it will lock up until all
    threads finish running.  how the threads are supposed to notice the exiting
    interpreter has always been sort of a mystery to me.
    
    tonight i figured out how to use the 'atexit' module to register a handler
    that runs when the interpreter exits.  now we keep a list of active threads
    and ask them all to exit on shutdown.  no more going to another shell to
    kill -9 python!  yeah!!

commit 3e31771637cb87e2cae2092121562b47ea13cd6e
Author: Robey Pointer <robey at lag.net>
Date:   Thu Mar 4 08:21:45 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-27]
    add BufferedFile abstraction
    SFTP client mode is mostly functional.  there are probably still some bugs
    but most of the operations on "file" objects have survived my simple tests.
    
    BufferedFile wraps a simpler stream in something that looks like a python
    file (and can even handle seeking if the stream underneath supports it).
    it's meant to be subclassed.  most of it is ripped out of what used to be
    ChannelFile so i can reuse it for sftp -- ChannelFile is now tiny.
    
    SFTP and Message are now exported.
    
    fixed util.format_binary_line to not quote spaces.

commit d5995709055c6319b4f02c322bb5b0bfc2c584b7
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jan 27 02:04:59 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-26]
    Transport constructor can take hostname or address tuple
    part of an ongoing attempt to make "simple" versions of some of the API calls,
    so you can do common-case operations with just a few calls:
    
    Transport's constructor will now let you pass in a string or tuple instead
    of a socket-like object.  if you pass in a string, it assumes the string is
    a hostname (with optional ":port" segment) and turns that into an address
    tuple.  if you pass in a tuple, it assumes it's an address tuple.  in both
    cases, it then creates a socket, connects to the given address, and then
    continues as if that was the socket passed in.
    
    the idea being that you can call Transport('example.com') and it will do
    the right thing.

commit 27869f1d7ad953d2262b36e2692d784c906a40d2
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jan 27 02:00:19 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-25]
    pkey no longer raises binascii.Error
    catch binascii.Error in the private key decoder and convert it into an
    SSHException.  there's no reason people should have to care that it was a
    decoding error vs. any of the other million things that could be wrong in
    a corrupt key file.

commit ea8c1378e8f12e75796d4019aeafe517547b9379
Author: Robey Pointer <robey at lag.net>
Date:   Tue Jan 27 01:45:44 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-24]
    document more of Message; add get_int64
    all of the get_* methods are now documented, but there's a bit more to do.
    get_int64 added for eventual sftp support.

commit 35ed1035727647c0a1443a147971dc5749e6fc2b
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jan 4 10:33:05 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-23]
    quick doc fix.
    fix broken cross-link in kex_gex docs.

commit 02322f6621c40d86cf5b14020fde04a6e7abc316
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jan 4 10:26:00 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-22]
    fix MANIFEST.in, change version numbers to 0.9-doduo, fix LPGL notices
    fixed MANIFEST.in to include the demo scripts, LICENSE, and ChangeLog.
    upped everything to version 0.9-doduo.
    
    fixed the copyright notice, and added the LGPL banner to the top of every
    python file.

commit 5470b26a83ce73245bd50291519a2d76e1bf171e
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jan 4 10:07:35 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-21]
    MANIFEST -> MANIFEST.in, fix setup.py.
    out with MANIFEST, in with MANIFEST.in.

commit 988c6abda08dd7380da37cfc74b9642437afe1ae
Author: Robey Pointer <robey at lag.net>
Date:   Sun Jan 4 09:29:13 2004 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-20]
    more docs, and password-protected key files can now be read
    lots more documentation, some of it moved out of the README file, which is
    now much smaller and less rambling.
    
    repr(Transport) now reports the number of bits used in the cipher.
    
    cleaned up BER to use util functions, and throw a proper exception (the new
    BERException) on error.  it doesn't ever have to be a full BER decoder, but
    it can at least comb its hair and tuck in its shirt.
    
    lots of stuff added to PKey.read_private_key_file so it can try to decode
    password-protected key files.  right now it only understands "DES-EDE3-CBC"
    format, but this is the only format i've seen openssh make so far.  if the
    key is password-protected, but no password was given, a new exception
    (PasswordRequiredException) is raised so an outer layer can ask for a password
    and try again.

commit 3a8887a42083dda796f50e1e9b32f625abcb5d5a
Author: Robey Pointer <robey at lag.net>
Date:   Wed Dec 31 06:31:43 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-19]
    renamed auth_key -> auth_publickey; more docs.
    renamed Transport.auth_key to auth_publickey for consistency.  and lots more
    documentation.

commit daa8a2ec0d6d3706ea3864fcab5ed56597f3612a
Author: Robey Pointer <robey at lag.net>
Date:   Tue Dec 30 22:24:21 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-18]
    added public-key support to server mode, more docs
    added public-key support to server mode (it can now verify a client signature)
    and added a demo of that to the demo_server.py script (user_rsa_key).  in the
    process, cleaned up the API of PKey so that now it only has to know about
    signing and verifying ssh2 blobs, and can be hashed and compared with other
    keys (comparing & hashing only the public parts of the key).  keys can also
    be created from strings now too.
    
    some more documentation and hiding private methods.

commit 48c7d888a22a6810a32f6d25cdd6b561803166cd
Author: Robey Pointer <robey at lag.net>
Date:   Tue Dec 30 07:18:20 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-17]
    lots more documentation, and added Transport.connect()
    renamed demo_host_key to demo_rsa_key.  moved changelog to a separate file,
    and indicated that future changelog entries should be fetched from tla.
    tried to clean up "__all__" in a way that makes epydoc still work.
    
    added lots more documentation, and renamed many methods and vars to hide
    them as private non-exported API.
    
    Transport's ModulusPack is now a static member, so it only has to be loaded
    once, and can then be used by any future Transport object.
    
    added Transport.connect(), which tries to wrap all the SSH2 negotiation and
    authentication into one method.  you should be able to create a Transport,
    call connect(), and then create channels.

commit 36d6d95dc6db1f47d187b87ab1c1a10c1d30558f
Author: Robey Pointer <robey at lag.net>
Date:   Sun Dec 28 03:20:42 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-16]
    hook up server-side kex-gex; add more documentation
    group-exchange kex should work now on the server side.  it will only be
    advertised if a "moduli" file has been loaded (see the -gasp- docs) so we
    don't spend hours (literally. hours.) computing primes.  some of the logic
    was previously wrong, too, since it had never been tested.
    
    fixed repr() string for Transport/BaseTransport.  moved is_authenticated to
    Transport where it belongs.
    
    added lots of documentation (but still only about 10% documented).  lots of
    methods were made private finally.

commit eb4c279ec4392d23c5dd7271458299fb3196f8d4
Author: Robey Pointer <robey at lag.net>
Date:   Sat Dec 27 02:03:44 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-15]
    fix up new paramiko/ folder.
    moved SSHException to a new file (ssh_exception.py) and turned paramiko.py
    into an __init__.py file.  i'm still not entirely sure how this normally
    works, so i may have done something wrong, but it's supposed to work the
    same as before.

commit 877cd974b8182d26fa76d566072917ea67b64e67
Author: Robey Pointer <robey at lag.net>
Date:   Sat Dec 27 01:49:19 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-14]
    move the paramiko files into a paramiko/ folder.
    just moving the files into a folder.  it won't build this way yet.

commit f6e1e84d60ae75cd28030b4c41856ec768566a46
Author: Robey Pointer <robey at lag.net>
Date:   Wed Dec 24 22:09:43 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-13]
    fix a deadlock/race in handle_eof & close
    (patch from fred gansevles)
    add locking around the eof handler and the close() call, so we can't be in
    both simultaneously.

commit 02319afd5ac24ebeed0d4f671179128c4fc39596
Author: Robey Pointer <robey at lag.net>
Date:   Wed Dec 24 20:49:38 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-12]
    fix dss key signing
    (expanded on a patch from fred gansevles)
    add a demo dss key for server mode, and fix some bugs that had caused the dss
    signing stuff to never work before.  the demo_server is a bit more verbose
    now, too.  both key types (RSAKey & DSSKey) now have a function to return the
    fingerprint of the key, and both versions of read_private_key_file() now raise
    exceptions on failure, instead of just silently setting "valid" to false.

commit e7715095b649fd9582de4dff9930d9ee42013a6e
Author: Robey Pointer <robey at lag.net>
Date:   Tue Dec 23 06:44:56 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-11]
    in server mode, don't offer keys we don't have
    (from Paolo Losi) in server mode, when advertising which key methods we
    support, don't list methods that we don't have any existing keys for.

commit 11815d4d837314a51ebf919c1a61cb0f68a3c02b
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 10 08:49:50 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-9]
    rename secsh -> paramiko
    also, rename SecshException back to SSHException.  sigh. :)

commit 2ff9f467517e1ff8916e1adbdaf342d0468b4ebb
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 10 06:52:35 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-8]
    doc changes

commit aad7b859f194451a0529c4d8aa20cdc724ae33a2
Author: Robey Pointer <robey at lag.net>
Date:   Mon Nov 10 04:54:02 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-7]
    cleaned up server code, renamed some files & classes
    renamed demo-server.py and demo-host-key to demo_server.py and
    demo_host_key, just to be consistent.
    
    renamed SSHException -> SecshException.
    
    generalized the mechanism where Channel decides whether to allow
    different channel requests: 4 of the main ones (pty, window-change,
    shell, and subsystem) go through easily override-able methods now.
    you could probably make an actual ssh shell server.
    
    gave ChannelFile a repr().
    
    turned off ultra debugging in the demos.  demo_server creates a
    subclass of Channel to allow pty/shell and sets an event when the
    shell request is made, so that it knows when it can start sending
    the fake bbs.
    
    renamed to charmander and updated some of the distutils files.

commit 0e1ef2c65c80bd76eb62f5dfd953cb987d36ce3a
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 9 21:16:35 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-6]
    notes about the exported api
    just wrote some quick notes (for a few of the classes) about which
    methods are intended to be the exported API.  python has no decent
    way of distinguishing private vs public.

commit 5a4871439498fdd0cb8ea391852fc604470b2668
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 9 21:14:21 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-5]
    big chunk of work which makes server code 95% done
    fixed auth check methods to return just a result (failed, succeeded,
    partially succeeded) and always use get_allowed_auths to determine the
    list of allowed auth methods to return.
    
    channel's internal API changed a bit to allow for client-side vs.
    server-side channels.  we now honor the "want-reply" bit from channel
    requests.  in server mode (for now), we automatically allow pty-req
    and shell requests without doing anything.
    
    ChannelFile was fixed up a bit to support universal newlines.  readline
    got rewritten: the old way used the "greedy" read call from ChannelFile,
    which won't work if the socket doesn't have that much data buffered and
    ready.  now it uses recv directly, and tracks the different newlines.
    
    demo-server.py now answers to a single shell request (like a CLI ssh
    tool will make) and does a very simple demo pretending to be a BBS.
    
    transport: fixed a bug with parsing the remote side's banner.  channel
    requests are passed to another method in server mode, to determine if
    we should allow it.  new allowed channels are added to an accept queue,
    and a new method 'accept' (with timeout) will block until the next
    incoming channel is ready.

commit 79fecc456499cc12e56e373871991cf804468a9d
Author: Robey Pointer <robey at lag.net>
Date:   Sun Nov 9 20:59:51 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-4]
    change kex-gex server code to generate primes by hand
    added a util function "generate_prime" to compare to the incredibly slow C
    version, but it's no faster of course.  i think kex-gex from the server is
    just not going to be feasible without having a separate thread generate some
    primes in the background to have handy when a request comes in.  so in short,
    this still doesn't work.
    
    also i put bit_length into util and a tb_strings function which gets stack
    traceback info and splits it into a list of strings.

commit 7d4d90a8c52a722accd7bfedb84d5a6c62d3fc97
Author: Robey Pointer <robey at lag.net>
Date:   Fri Nov 7 10:36:42 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-3]
    remove some leftover garbage from dsskey
    leftover from a cut & paste i was doing a few days ago.  bad robey.

commit 14d7a745a7c42877545f2621459877da1c72a765
Author: Robey Pointer <robey at lag.net>
Date:   Thu Nov 6 07:34:27 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-2]
    add a demo host key and point demo-server at it.
    also, temporarily comment out the nonfunctional kex-gex method.

commit 3b9901a602085fdee66249b14f83c158864b5f33
Author: Robey Pointer <robey at lag.net>
Date:   Tue Nov 4 08:50:22 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--patch-1]
    no changes
    why aren't my log messages kept?

commit 51607386c7609a483568ad935083c9668fe6241b
Author: Robey Pointer <robey at lag.net>
Date:   Tue Nov 4 08:34:24 2003 +0000

    [project @ Arch-1:robey at lag.net--2003-public%secsh--dev--1.0--base-0]
    initial import
    
    (automatically generated log message)

-----------------------------------------------------------------------


hooks/post-receive
-- 
python-paramiko.git (Debian package python-paramiko)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "python-paramiko.git" (Debian package python-paramiko).




More information about the x2go-commits mailing list