NEWS 16.8 KB
Newer Older
Niels Möller's avatar
Niels Möller committed
1 2 3 4 5 6 7 8 9
News for the 1.3.3 release:

	Simplified the internal command definition machinery.

	Fixed bug in lsshg; it crashed if given a host name argument
	with strange characters.

	Updates to SRP support, to get it closer to the latest draft.
	
Niels Möller's avatar
Niels Möller committed
10
News for the 1.3.2 release:
Niels Möller's avatar
Niels Möller committed
11

Niels Möller's avatar
Niels Möller committed
12 13
	Suspend works better, and is bound to the escape sequence
	RET ~ ^Z.
Niels Möller's avatar
Niels Möller committed
14 15
	
News for the 1.3.1 release:
Niels Möller's avatar
Niels Möller committed
16

Niels Möller's avatar
Niels Möller committed
17
	Repackaged the low-level crypto functions as the "nettle"
Niels Möller's avatar
Niels Möller committed
18
	library. Bugfixes for serpent.
Niels Möller's avatar
Niels Möller committed
19

Niels Möller's avatar
Niels Möller committed
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
News for the 1.3.0 release:

	Bugfixes (same as in 1.2.2).

	constness fixes.

	Deleted the complex streamed sexp-parser.

	Verbose messages at KEXINIT and NEWKEYS.

	Tolerate empty atoms (like in "3des-cbs,,aes256-cbc,").

	If compiled with --debug-alloc, all strings are counted and
	leaks detected. Fixed some minor leaks.

	Changed conventions for packet handlers, all packets are freed
	by connection_handle_packet, so individual packet handlers
	shouldn't do that.

	Handle the TSTP signal. Backgrounding still doesn't work quite
	right, though.
Niels Möller's avatar
Niels Möller committed
41 42 43

	Rewrote parts of the gaba.scm preprocessor.
		
Niels Möller's avatar
Niels Möller committed
44 45 46 47 48
News for the 1.2.0 release:

	Added the lcp copying script to the distribution (although it
	isn't installed automatically). No other changes.
	
Niels Möller's avatar
Niels Möller committed
49 50 51 52 53
News for the 1.1.9 release:

	Some code cleanup. Removed a dozen files, four classes and
	about 1k lines of code. Useful tools are make class-map and
	./configure --enable-gcov.
Niels Möller's avatar
Niels Möller committed
54 55 56 57

	To get gcov to work properly when running several processes in
	parallell, you may also want to apply misc/libgcc2.c-patch to
	gcc. The patch adds locking for the output *.da files.
Niels Möller's avatar
Niels Möller committed
58
	
Niels Möller's avatar
Niels Möller committed
59 60 61 62 63 64
News for the 1.1.8 release:

	Updated the scsh support for scsh-0.5.2. Note that scsh is now
	free software; the "non-commercial use" restrictions were
	removed in the 0.5.2 release.

Niels Möller's avatar
Niels Möller committed
65 66 67 68 69 70 71 72 73
	Updated the channel close logic to be compatible with other
	ssh implementations.

	Handle POLLERR; the previous version went into a busy loop if
	poll set the POLLERR flag on any fd.

	--cvs-workaround=e is now on by default. New option
        --no-cvs-workaround to disable it.

Niels Möller's avatar
Niels Möller committed
74 75 76 77 78 79 80 81 82
News for the 1.1.7 release:

	More bug fixes, most of them related to the EOF handling.

	Added testcase for lshg -L, fixed the exposed bugs.

	Don't output the "Userauth successful" message unless in
	verbose mode.
	
Niels Möller's avatar
Niels Möller committed
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
News for the 1.1.6 release:

	Fixed a bug in the testsuite framework, and discovered and
	fixed a few new and old bugs (mostly related to the EOF and
	channel close logic).

	Improved handling of POLLHUP on Linux.
	
	Fixed bug in lshd password authentication, which sometimes
	crashed lshd.

	Support for RSA keys, according to
	draft-ietf-secsh-transport-09.txt. Wrote a test case for RSA
	hostkeys, and fixed a bug in the ssh-rsa public key decoder.

	Added support for OpenSSH style RSA keys to ssh-conv.

	Changed unix_random.c to be more quiet.

	Changed tcpip forwarding code to call shutdown() when it
	receives an SSH_MSG_CHANNEL_EOF.

	Updated the manual.
	
Niels Möller's avatar
Niels Möller committed
107 108 109 110 111 112 113 114
News for the 1.1.5 release:

	Fixed bug in random generator seeding (spotted by jps).

	More argp fixes.

	Work on rsync, but still not used.
	
Niels Möller's avatar
Niels Möller committed
115 116 117 118 119 120
News for the 1.1.4 release:

	Fixes for encrypted private keys (thanks to jps).

	Updated argp, and ripped out its dependencies on getopt.
	
Niels Möller's avatar
Niels Möller committed
121 122 123 124 125 126
News for the 1.1.3 release:

	Support for encrypted private keys (not tested).

	The lshg gateway client works.
	
Niels Möller's avatar
Niels Möller committed
127 128
News for the 1.1.2 release:

Niels Möller's avatar
Niels Möller committed
129
	New experimental option to lsh: --cvs-workaround. Using this
Niels Möller's avatar
Niels Möller committed
130 131 132 133 134 135 136 137 138 139 140
	option causes lsh to fork off a few extra processes to handle
	its stdio file descriptors, and avoid setting them in
	nonblocking mode. One can also use for instance
	--cvs-workaround=o to fork only for stdout; the optional
	argument can be any combination of the characters 'i' (stdin),
	'o' (stdout) and 'e' (stderr). If this turns out to be useful,
	the option will probably be renamed and perhaps made the
	default.

	Implemented window change messages in the client.
						
Niels Möller's avatar
Niels Möller committed
141 142 143 144 145 146 147 148
	Added signal handlers to io_backend.

	Reorganized the code a little to make the lshg binary smaller.
	
	Some work on an "interactive" class, encapsulating the
	oparations one may want to do on the user's tty, including
	subscription for window change events.
	
Niels Möller's avatar
Niels Möller committed
149 150 151 152 153 154 155 156 157 158 159
News for the 1.1.1 release:

	First try for the gateway mode. New option -G for lsh, and a
	new program lshg for talking to the gateway.

	lshd forks of a new process and changes its uid for reading
	user files. The only file read in this way, so far, is
	~/.lsh/srp-verifier.

	Improved randomness framework.
	
Niels Möller's avatar
Niels Möller committed
160 161 162 163 164 165 166 167 168 169 170
News for the 1.1.0 release:

	First, note that the 1.1.x series should be considered
	experimental.

	New program lsh-export-key (contributed by jps, and then
	hacked some more by me).

	Some of the methods for public-key operations have been
	improved and generalized.
	
Niels Möller's avatar
Niels Möller committed
171 172 173 174 175 176 177 178 179 180 181 182 183 184 185
News for the 1.0.6 release

	Fixed bug in ssh-dss bug-compatibility.
	
	Experimental kerberos support. New lshd option
	--kerberos-passwords. Compiles with heimdal, MIT kerberos not yet
	tested. 

	Improved handling of serialized userauth requests (not yet
	used by kerberos password functions).

	Hacked serpent code to support variable size keys.

	Added rijndael test cases. No working serpent testcases yet.
	
Niels Möller's avatar
Niels Möller committed
186 187
News for the 1.0.5 release

Niels Möller's avatar
Niels Möller committed
188 189 190
	Experimental support for RSA, using spki-style keys and
	signatures. 

Niels Möller's avatar
Niels Möller committed
191 192
	Some reorganization of signature algorithms, to support
	spki-style signatures (including rsa) properly.
Niels Möller's avatar
Niels Möller committed
193 194 195

	Fix for key renegotiation bug reported by jps.

Niels Möller's avatar
Niels Möller committed
196 197 198 199 200
	New algorithms bulk encryption algorithms: serpent and
	rijndael. Rijndael implementation and lsh glue code
	contributed by Rafael R. Sevilla. Serpent implementation by
	Ross Anderson, Eli Biham, and Lars Knudsen.

Niels Möller's avatar
Niels Möller committed
201 202 203 204 205 206
	New option -call to use any supported bulk encryption
	algorithm; the default preference list is quite conservative.

	New option --hostkey-algorithm, to tune the hostkey algorithm
	preference list.

Niels Möller's avatar
Niels Möller committed
207 208 209
	Renamed lsh_keygen and lsh_writekey to lsh-keygen and
	lsh-writekey, respectively (actually happened in 1.0.4, but I
	forgot to mention that).
Niels Möller's avatar
Niels Möller committed
210
	
Niels Möller's avatar
Niels Möller committed
211 212 213 214 215 216 217 218 219
News for the 1.0.4 release

	Fixed yet another bug in the userauth logic.

	Some RSA support (so far, only lsh-keygen and lsh-writekey
	support RSA). 408 hours left...

	Support for the transport spki format in sexp_parser.c.

Niels Möller's avatar
Niels Möller committed
220 221 222 223 224 225 226 227
News for the 1.0.3 release

	Fixed bug in client userauth logic.

	Configure fix: put -L and -R flags in LDFLAGS, not LIBS.

	Portability fixes and some signed/unsigned cleanup.
	
228 229 230 231 232 233 234 235 236 237 238
News for the 1.0.2 release

	Fixed bug in lsh_writekey, and improved the error message when
	the outputfile already exists.

	Fixed bug in the poll emulation in jpoll.c (noticed by
	Jean-Pierre Stierlin).

	Portability bugs reported by Jean-Pierre Stierlin, for
	compiling on MacOS.
	
Niels Möller's avatar
Niels Möller committed
239 240 241 242 243 244 245
News for the 1.0.1 release

	Various bug fixes. Spelling and grammar fixes in the manual,
	contributed by Johan Myreen.
	Hacked lsh user authentication to stop asking for a password
	if the empty password is entered twice.

Niels Möller's avatar
Niels Möller committed
246 247 248 249 250 251
News for the 0.9.15 release

	Portability fixes. Fixed 32-bit bug in the memory allocation
	that appeared on alpha-linux. Fixes for HPUX compiler. Fixed
	make distclean, which failed when cleaning in src/symmetric.

Niels Möller's avatar
Niels Möller committed
252 253
News for the 0.9.14 release

Niels Möller's avatar
Niels Möller committed
254 255
	Added --stdin, --stdout and --stderr options to lsh.
	
Niels Möller's avatar
Niels Möller committed
256 257 258 259 260 261
	Implemented pretty-printing of s-expressions when using the
	advanced syntax.

	Renamed sexp_conv to sexp-conv.
	
	Fixed bug preventing forwarded connections from being closed
Niels Möller's avatar
Niels Möller committed
262
	properly. Reported by Daniel Prevett and Joseph Galbraith.
Niels Möller's avatar
Niels Möller committed
263

Niels Möller's avatar
Niels Möller committed
264 265
	New Getting Started chapter in the manual, and other
	documentation updates.
Niels Möller's avatar
Niels Möller committed
266
	
Niels Möller's avatar
Niels Möller committed
267 268
News for the 0.9.13 release

Niels Möller's avatar
Niels Möller committed
269
	New program lsh-decode-key and script ssh-conv, for converting
Niels Möller's avatar
Niels Möller committed
270 271 272 273 274 275 276 277 278 279 280
	OpenSSH/ssh2 keys to sexp format.

	Updated SRP support to the draft doc/srp-spec.txt.
	Made it possible to skip the userauth sub-protocol when using
	SRP. The proxy program was probably broken in the process.
	
	Fixed lsh-authorize, to use the right options to sexp_conv.

	Let $HOME override the home directory in the passwd database,
	when running as non-root.
	
Niels Möller's avatar
Niels Möller committed
281 282 283 284 285 286 287 288 289 290 291
News for the 0.9.10 release

	Fixed bug that caused buffered output to be lost at channel
	close.

	Experimental SRP support.

	New program srp-gen.
	
	Improved the hex dumps in debug output.

Niels Möller's avatar
Niels Möller committed
292 293 294 295 296 297 298
News for the 0.9.9 release

	autoconf fixes. Add -R-flags when appropriate. Recognize
	gmp-3.x. Added --with-lib-path option.

	Portability fixes.

Niels Möller's avatar
Niels Möller committed
299 300 301 302 303 304 305 306 307 308 309
News for the 0.9.7 release

	Experimental IPv6 support.

	Experimental support for encrypted private keys (for now, only
	in lsh_writekey).

	wtmp logging.

	Improved behaviour of --port and -z options.

Niels Möller's avatar
Niels Möller committed
310 311 312 313
News for the 0.9.2 release

	Improved support for shadow passwords.

Niels Möller's avatar
Niels Möller committed
314
	Some preparations for gateway mode.
Niels Möller's avatar
Niels Möller committed
315
	
Niels Möller's avatar
Niels Möller committed
316 317 318 319 320
News for the 0.9.1 release

	Support for remote commands directly on the lsh command line.
	New options -S and -E. More features in the proxy.

Niels Möller's avatar
Niels Möller committed
321 322 323 324
News for the 0.2.9 release

	Fixed bugs in the length checking of incoming packets.

325 326 327 328 329 330
News for the 0.2.8 release

	Reworked i/o and the CHANNEL_OPEN mechanism. Seems to fix the
	crash when requesting forwarding to a port that doesn't
	answer.

Niels Möller's avatar
Niels Möller committed
331 332
	Also close ports for local and remote forwarding properly. 

333 334
	Updated the proxy code.
 
Niels Möller's avatar
Niels Möller committed
335 336 337 338
News for the 0.2.7 release

	Bug fixes for compialtion on Solaris.

Niels Möller's avatar
Niels Möller committed
339 340 341 342 343 344 345 346
News for the 0.2.6 release

	Bugfixes for tcp forwarding functions.

	Some more tests for testsuite. To try them, you must first
	setup lsh so that you can login with no password. Then type
	"make check-more" in the testsuite subdirectory. 
	
347 348 349 350
News for the 0.2.5 release

	Bugfixes.

Niels Möller's avatar
Niels Möller committed
351 352 353 354 355 356 357 358
News for the 0.2.3 release

	Added lshd options --password, --no-password, --publickey and
	--no-publickey, for configuring the set of supported userauth
	methods.

	Changes to the proxy program (Bazsi).

Niels Möller's avatar
Niels Möller committed
359 360 361 362
News for the 0.2.2 release

	Bug fixes. Verbose messages on algorithm selection.

Niels Möller's avatar
Niels Möller committed
363 364 365 366 367
News for the 000.2 release

	Bugfixes. New --pty-support and --no-pty-support options for
	lshd.

Niels Möller's avatar
Niels Möller committed
368 369 370 371
News for the lsh-0.1.20 release

	Bugfixes. New test script for lsh_writekey.

Niels Möller's avatar
Niels Möller committed
372 373 374 375 376 377 378
News for the lsh-0.1.19 release

	Lots of bugfixes. Reading of ~/.lsh/known_hosts and
	~/.lsh/identity seems to work.

	New contrib sub-directory.
	
Niels Möller's avatar
Niels Möller committed
379 380 381 382 383 384 385 386 387
News for the lsh-0.1.18 release

	lsh now reads ACL:s from the ~/.lsh/known_hosts file.

	First attempt at a m4-based testsuite. It depends on m4 being
	able to handle the eight-bit quote characters » and «. If your
	m4 doesn't do that, get the latest beta of GNU m4 or recompile
	GNU m4-1.4 with CFLAGS=-funsigned-char.

Niels Möller's avatar
Niels Möller committed
388 389 390 391 392 393 394 395 396 397
News for the lsh-0.1.17 release

	More support for host authentication and SPKI.

	First version that includes Bazsi's work on an ssh-proxy (i.e.
	a program that implements the traditional Man-in-the-middle
	attack on the ssh2 protocol). Could be useful for people
	running firewalls, and also for those of us who want to point
	out that it's a bad idea to use unauthenticated hostkeys.

Niels Möller's avatar
Niels Möller committed
398 399 400 401
News for the lsh-0.1.16 release

	Some preparations for real host authentication.
	
Niels Möller's avatar
Niels Möller committed
402 403 404 405 406 407
News for the lsh-0.1.15 release

	Support for publickey user authentication.

	A new script lsh-authorize.

Niels Möller's avatar
Niels Möller committed
408 409 410 411 412 413 414 415 416 417 418 419 420
News for the lsh-0.1.14 release

	First try on daemonization support.

	Better tracing; try --trace to get some more information than
	with -v, but without all the boring information generated by
	--debug.

	Generally nicer options and help mesasges, thanks to argp.

	Better handling of i/o exceptions. lshd should no longer crash
	when connections behave unexpectedly.

Niels Möller's avatar
Niels Möller committed
421 422 423 424 425 426 427 428 429 430
News for the lsh-0.1.12 release

	Tried to fix bugs related to channel close. In the process,
	improved the resource mechanism, and let each channel
	have it's own list of resources.

	Fixed configure.in to handle systems with neither scsh or
	guile installed.
	

Niels Möller's avatar
Niels Möller committed
431 432 433 434 435
News for the lsh-0.1.11 release

	Support for other scheme implementations in the build process,
	in particular guile.
	
Niels Möller's avatar
Niels Möller committed
436

Niels Möller's avatar
Niels Möller committed
437 438 439 440 441 442 443
News for the lsh-0.1.10 release

	Fixed bug in sexp parser and lsh_writekey.

	Merged more of bazsis patches.
	

Niels Möller's avatar
Niels Möller committed
444 445 446 447 448 449 450 451
News for the lsh-0.1.9 release

	Lot's of bug fixes. This version actually seems to work.

	Bazsi's public key patches is in, although I haven't been able
	to test them.

	The SEXP parser is rewritten to use the new exception
Niels Möller's avatar
Niels Möller committed
452
	framework. The program that makes the most of of this right
Niels Möller's avatar
Niels Möller committed
453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478
	now is lsh_writekey. Its core reads like

     (params
       (private object io_write_file_info)
       (public object io_write_file_info))
     
     (lambda (backend)
       (let ((key (read (stdin backend))))
         (prog1 (transport (open backend public) (private2public key))
                ; FIXME: Add encryption here
                (canonical (open backend private) key))))))
	
	The sexptest program has been renamed to sexp_conv. It reads
	an sexp (for now, only canonical and transport syntax are
	supported) on stdin, and prints it using advanced, transport
	or canonical syntax. More features could be added.

	The --debug option now dumps both sent and received packets,
	and it includes a human readable name of the packet type.
	Packets of type SSH_MSG_USERAUTH_REQUEST are suppressed,
	however, because they typically contains user passwords.

	There is one known bug: Running without pty allocation (lsh
	-nt) doesn't work, at least not for me.

	
Niels Möller's avatar
Niels Möller committed
479 480 481 482 483 484 485 486 487 488 489
News for the lsh-0.1.8 release

	Reworked all the error handling to use exceptions. No new
	features, but lots of new bugs.

There are no official releases numbered 0.1.4 -- 0.1.7. However,
these version numbers are used for Bazsi's unofficial releases during
the summer. The unofficial releases feature public key user
authentication and better compatibility with Datafellow's ssh2
products. 

490 491 492 493
News for the lsh-0.1.3 release

	Local forwarding (-L) works. -R is slightly broken.

Niels Möller's avatar
Niels Möller committed
494 495 496 497 498 499 500 501 502 503 504 505
News for the lsh-0.1.2 release

	First user visible tcpforwarding (-L option). Not tested
	yet...

	Fixed flow control.

	DSA signatures should conform better both to the draft andd to
	the ssh-2.x implementations.

	Better handling of POLLHUP.
	
Niels Möller's avatar
Niels Möller committed
506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523
News for the lsh-0.1 release

	Added compiler.scm to the dist.

	Changed the session key generation to comply with the latest
	draft (pointed out by Joseph Galbraith).

	Added IDEA support (Bazsi).

	Fixes to pty handling and flow control (mostly Bazsi). 

	Fixed the client side handling of userauth failures.

	By default, if we are running with a pty, use the same fd for
	stdout and stderr. This workaround should make lsh more
	friendly to bash and other programs that expect stderr to be a
	tty.

Niels Möller's avatar
Niels Möller committed
524 525 526 527 528 529
NEWS for the 1999-04-25 snapshot:

	Fixed a few bugs in pty and eof handling. Should now work
	about as well as the 03-17 snapshot. Also removed most old
	#if:ed out code.

Niels Möller's avatar
Niels Möller committed
530 531 532 533 534
NEWS for the 1999-04-20 snapshot:

	Internal reorganization. Implemented the "control language".
	And some bug fixes. See ChangeLog for all the details.

Niels Möller's avatar
Niels Möller committed
535 536 537 538 539 540 541 542
NEWS for the 1999-03-17 snapshot

	CAST and TWFOFISH seem to work now.

	Includes a lambda->SK compiler.

	Bugfixes.

Niels Möller's avatar
Niels Möller committed
543 544 545 546 547 548 549 550 551 552 553
NEWS for the 1999-03-08 snapshot

	No user visible changes. Added a instance variable to keep
	track of the amount of buffered data in the write_buffer
	objects (needed to fix the broken flow control).

	Added a generic doubly linked list, currently used by the
	write_buffer and resource_list classes, but which will be
	needed for more things (see the CONTROL item on the TODO
        list). 

Niels Möller's avatar
Niels Möller committed
554 555 556 557 558 559 560 561 562 563 564 565 566 567
NEWS for the 1999-03-07 snapshot

	Improved CFMAKERAW. Ugly fix for the UNIX98-style pty:s
	support.

	Twofish support (not quite working).

	Started on tcp forwarding (Bazsi).

	Some support for broken ssh2 signatures (Baszi). Needs some
	more work.

	Various bugfixes.

Niels Möller's avatar
Niels Möller committed
568 569 570 571
NEWS for the 1999-02-28 snapshot

	Portability fixes for Solaris.

Niels Möller's avatar
Niels Möller committed
572 573 574 575 576 577 578 579
NEWS for the 1999-01-28 snapshot

	Some PTY support

	Integrated support for sshd1 fallback (not tested)

	Bug fixes.

Niels Möller's avatar
Niels Möller committed
580 581 582 583 584 585
NEWS for the 1999-01-14 snapshot

	Fixed off-by-one bug in dss_keygen.

	Some portability fixes (sys/poll.h, crypt.h, unistd.h).

Niels Möller's avatar
Niels Möller committed
586
NEWS for the 1999-01-08 snapshot:
Niels Möller's avatar
Niels Möller committed
587

Niels Möller's avatar
Niels Möller committed
588 589 590 591 592
	New program lsh_writekey.

NEWS for the 1999-01-05 snapshot:

	Command line options to select which algorithms to use.
Niels Möller's avatar
Niels Möller committed
593 594 595 596

	Various bug fixes. The 3des and blowfish support seems do work
	now. 

Niels Möller's avatar
Niels Möller committed
597 598
NEWS for the 1999-01-01 snapshot:

Niels Möller's avatar
Niels Möller committed
599 600
	ZLIB support. (Bazsi)
	Long key support (needed for 3DES) (Bazsi).
Niels Möller's avatar
Niels Möller committed
601 602 603
	Fixed configure test for shutdown().
	Various bug fixes (Ray).

Niels Möller's avatar
Niels Möller committed
604 605 606 607
NEWS for the 1998-12-26 snapshot:

	New lsh_keygen program.

Niels Möller's avatar
Niels Möller committed
608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624
NEWS for the 1998-12-21 snapshot:

Moved most objects in crypto.c and abstract_crypto.c into separate
files.

Added a workaround for Datafellows ssh2 client, which (contrary to the
specification) asks for protocol version 1.99.

Use /dev/urandom, if available.

Collect most object files into liblsh.a.

Started on a key generation program.

TASKLIST and NOTES files now included in the snapshot.


Niels Möller's avatar
Niels Möller committed
625 626
NEWS since the 1998-12-17 snapshot:

627
Support for md5 (by Balázs Scheidler).
Niels Möller's avatar
Niels Möller committed
628 629 630 631

Various bugfixes.


Niels Möller's avatar
Niels Möller committed
632 633 634 635 636 637 638 639 640 641 642 643
NEWS since the 1998-12-11 snapshot:

A resource mechanism (resource.[ch]) used by the server to cleanup
properly when a connection dies unexpectedly. Can be used to kill
child processes, close files and ports, etc.

Generic code for chaining ciphers (crypto_cbc()) and piping them
together (crypto_cascade()).

Some untested support for blowfish and 3DES. A -c command line option
is needed.

644
A few bugfixes. Thanks to J.H.M. Dassen (Ray) and Balázs Scheidler.