Browse source

Changelog

Query
From:
To:
Branch:
Path:
Message:
BugID:
User: +
Format:
: 1 checkin (+59/-56) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 3 checkins (+12/-2) by 2 people : 25 checkins (+418/-328) by 4 people : 5 checkins (+55/-1) by 2 people : 11 checkins (+326/-53) by 5 people : 2 checkins (+6/-6) by 2 people : 1 checkin (+4/-0) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 8 checkins (+179/-35) by 3 people : 22 checkins (+257/-127) by 2 people : 79 checkins (+692/-464) by 4 people : 50 checkins (+585/-652) by 4 people : 38 checkins (+334/-261) by 5 people : 90 checkins (+623/-4192) by 5 people : 9 checkins (+203/-118) by 3 people : 104 checkins (+527/-5557) by 2 people : 19 checkins (+276/-141) by 2 people : 4 checkins (+374/-154) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 18 checkins (+225/-236) by 5 people : 13 checkins (+86/-55) by 5 people : 30 checkins (+405/-352) by 4 people : 2 checkins (+64/-12) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 7 checkins (+46/-530) by 2 people : 19 checkins (+309/-88) by 3 people : 27 checkins (+168/-677) by 2 people : 21 checkins (+158/-58) by 2 people : 54 checkins (+3317/-462) by 2 people : 31 checkins (+370/-245) by 3 people : 5 checkins (+186/-77) by 2 people : 8 checkins (+31/-15) by 2 people : 56 checkins (+434/-396) by 4 people : 20 checkins (+79/-40) by 2 people : 32 checkins (+239/-79) by 5 people : 38 checkins (+616/-514) by 2 people : 37 checkins (+900/-284) by 2 people : 8 checkins (+394/-170) by 2 people : 2 checkins (+98/-4) by Henrik Grubbström (Grubba) <grubba@grubba.org> : 10 checkins (+53/-56) by 2 people : 21 checkins (+220/-33) by 4 people : 73 checkins (+1997/-2718) by 5 people : 22 checkins (+151/-269) by 3 people : 34 checkins (+366/-472) by 4 people Lines added/removed recently

Today; Friday 31 October 2014

2014-10-31 18:44:21 (5 hours ago) by Martin Nilsson <nilsson@opera.com>

Move to GMP 4.1 (2002-05-23) as requirement. Import is always supported forward.

2014-10-31 18:40:49 (5 hours ago) by Stephen R. van den Berg <srb@cuci.nl>

pgsql: finetuning, cleanup, improved error response behaviour.

2014-10-31 18:26:11 (5 hours ago) by Martin Nilsson <nilsson@opera.com>

Use mpz_init2 as identifier or GMP 4.0

2014-10-31 18:20:13 (5 hours ago) by Martin Nilsson <nilsson@opera.com>

mpz_set_si works in GMP 4.0 and forward.
mpz_getlimbn works correctly in GMP 4.0 and forward.

2014-10-31 18:07:53 (5 hours ago) by Arne Goedeke <el@laramies.com>

_Roxen.http_decode_string: dont leak on error

Move the check for correct hexadecimal sequences into the first loop,
which calculates the length. This prevents the string builder to leak
on error. Also, the length checks for hexadecimal sequences can be
removed from the second loop, as they are already done in the first.

2014-10-31 17:44:31 (6 hours ago) by Martin Nilsson <nilsson@opera.com>

Check GMP_NUMB_BITS only once in mpz_glue.

2014-10-31 17:39:58 (6 hours ago) by Martin Nilsson <nilsson@opera.com>

mpz_export exists in GMP 4.0 and forward.

2014-10-31 17:03:54 (7 hours ago) by Martin Nilsson <nilsson@opera.com>

qalloc isn't used.

2014-10-31 16:41:53 (7 hours ago) by Martin Nilsson <nilsson@opera.com>

Fixed error message.
Trimmed error messages.
Trimmed error messages.
Removed unused macro.

2014-10-31 16:26:17 (7 hours ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

ZXID: Added check for zxid_cgi.uri_path.
ZXID: Added check for zxid_cgi.uri_path.
ZXID: Added check for zxid_cgi.uri_path.

2014-10-31 15:38:53 (8 hours ago) by Martin Nilsson <nilsson@opera.com>

backzone has been added
backzone has been added

2014-10-31 01:18:59 (22 hours ago) by Martin Nilsson <nilsson@opera.com>

Adjust to current _Roxen behavior. We may chose to reverse this later.
Make illegal percent encodings throw exception, as per testsuite.

Yesterday; Thursday 30 October 2014

2014-10-30 16:32:57 (1 day ago) by Per Hedbor <ph@opera.com>

Fixed for(i;i<x;i++); crash

The code will no longer generate invalid F_LT/GT etc nodes when asked
to, instead it will generate a function call to the correct efun.

I still do not know why this worked in pike 7.8.

Next step: Make treeopt.in F_LT match CALL(&f_lt,ARGS(...))

(cherry picked from commit 89424bfaa34ee5639b0ab2fedccebec96703ffa8)
Fixed for(i;i<x;i++); crash

The code will no longer generate invalid F_LT/GT etc nodes when asked
to, instead it will generate a function call to the correct efun.

I still do not know why this worked in pike 7.8.

Next step: Make treeopt.in F_LT match CALL(&f_lt,ARGS(...))

2014-10-30 14:44:39 (1 day ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.23 by export.pike
release number bumped to 8.0.22 by export.pike

2014-10-30 14:36:38 (1 day ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build [win32]: Some compilers (eg cl) don't like __attribute__.
Build [win32]: Some compilers (eg cl) don't like __attribute__.

2014-10-30 13:46:48 (1 day ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

ZXID: Some more forward compat.

The variable zx_debug was renamed to errmac_debug on 2013-11-13.

The fields wsp_localpdp_obl_req and wsc_localpdp_obl_accept in
struct zxid_conf are no longer strings but arrays.

These changes seem to be sufficient to be able to link against
current libzxid.
ZXID: Some more forward compat.

The variable zx_debug was renamed to errmac_debug on 2013-11-13.

The fields wsp_localpdp_obl_req and wsc_localpdp_obl_accept in
struct zxid_conf are no longer strings but arrays.

These changes seem to be sufficient to be able to link against
current libzxid.

2014-10-30 13:39:58 (1 day ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

ZXID: Some more forward compat.

The variable zx_debug was renamed to errmac_debug on 2013-11-13.

The fields wsp_localpdp_obl_req and wsc_localpdp_obl_accept in
struct zxid_conf are no longer strings but arrays.

These changes seem to be sufficient to be able to link against
current libzxid.

2014-10-30 03:50:38 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Removed stray undef.

2014-10-30 03:41:42 (2 days ago) by Per Hedbor <ph@opera.com>

gmp.h defines c++ things if compiling with a c++ compiler.

However, pike include files have to be included inside an extern "C".

So, use extern "C++" when including gmp.h from pike includes.

2014-10-30 03:41:13 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Don't include gmp.h directly. Use bignum.h

2014-10-30 03:34:52 (2 days ago) by Martin Nilsson <nilsson@opera.com>

GMP is required for Pike.

2014-10-30 03:16:03 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Less AUTO_BIGNUM

Wednesday 29 October 2014

2014-10-29 20:27:10 (2 days ago) by Stephen R. van den Berg <srb@cuci.nl>

Sql.pgsql: New and improved full threaded version.

Lower latencies, increased parallelism, theoretical
elimination of all race conditions, simplified code,
uses Stdio.Buffer, no C-helper anymore, less filling.

As a new feature, introduces: send_row(),
fetch_row_array() for increased efficiency,
set_result_callback() and set_result_array_callback()
for event driven database queries.
Stdio.Buffer: Support all types for add_hstring.
Simplify code.
Stdio.Buffer: Support offset parameter for add_hstring/read_hstring.
Simplify code.

2014-10-29 19:54:21 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Inlining is_bignum_object is both faster and smaller.

2014-10-29 19:47:41 (2 days ago) by Martin Nilsson <nilsson@opera.com>

string_from_bignum wasn't used, and just a proxy for digits.

2014-10-29 19:30:47 (2 days ago) by Martin Nilsson <nilsson@opera.com>

push_longest is not better than push_int64. int128 doesn't work, as an example.

2014-10-29 19:19:44 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Move INT64 check into bignum.h for reduce_stack_top_bignum.

2014-10-29 19:01:19 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Remove get_auto_bignum_program

2014-10-29 18:55:47 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Access bignum_program directly.

2014-10-29 18:36:04 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Use bignum_program instead of auto_bignum_program.
Removed prototypes for removed functions.

2014-10-29 18:35:22 (2 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

ZXID: Some support for ZXID 1.19 and later.

Some fields in struct zxid_conf changed names in ZXID 1.19:2013-12-04.
ZXID: Some support for ZXID 1.19 and later.

Some fields in struct zxid_conf changed names in ZXID 1.19:2013-12-04.
ZXID: Some support for ZXID 1.19 and later.

Some fields in struct zxid_conf changed names in ZXID 1.19:2013-12-04.

2014-10-29 17:27:16 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Removed get_auto_bignum_program_or_zero
Removed bignum include.

2014-10-29 17:13:50 (2 days ago) by Martin Nilsson <nilsson@opera.com>

auto_bignum_program is always set when pike code is running.
Clean up the init/exit of auto_bignum_program code.
Refactor away the hook_in_gmp_funcs, now that Gmp is a static module.
No need to cleanup auto_bignum_program twice. It's also done in Gmp module, where it is set.
Whitespace changes.

2014-10-29 16:00:50 (2 days ago) by Martin Karlgren <marty@roxen.com>

Fix bug where the write callback could be dropped if 0 bytes were written.

Conflicts:
lib/modules/Protocols.pmod/HTTP.pmod/Query.pike
Fix bug where the write callback could be dropped if 0 bytes were written.

2014-10-29 15:57:54 (2 days ago) by Martin Karlgren <marty@roxen.com>

Fix bug where the write callback could be dropped if 0 bytes were written.

2014-10-29 15:31:31 (2 days ago) by Per Hedbor <ph@opera.com>

gmp.h defines c++ things if compiling with a c++ compiler.

However, pike include files have to be included inside an extern "C".

So, use extern "C++" when including gmp.h from pike includes.

2014-10-29 15:24:20 (2 days ago) by Martin Nilsson <nilsson@opera.com>

Updated touch syntax. From Magnus Holmgren

2014-10-29 12:35:46 (2 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.21 by export.pike
release number bumped to 8.0.20 by export.pike

2014-10-29 12:26:41 (2 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

ZXID: More build fixes.

Missed a few spots...
ZXID: More build fixes.

Missed a few spots...

2014-10-29 11:38:50 (2 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.18 by export.pike
release number bumped to 8.0.19 by export.pike

2014-10-29 11:13:41 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

ZXID: Fixed some build issues.

One use of parent_storage() was missed when the API was changed.

Some places where missed when the precompiler started prefixing
symbols with the module name.

2014-10-29 11:11:35 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

ZXID: Fixed some build issues.

One use of parent_storage() was missed when the API was changed.

Some places where missed when the precompiler started prefixing
symbols with the module name.

2014-10-29 10:12:51 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.17 by export.pike
release number bumped to 8.0.16 by export.pike

Tuesday 28 October 2014

2014-10-28 23:28:28 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: Improved support for --disable-binary.

Don't attempt to make depend in post_modules when cross-compiling
or --disable-binary, since a fresh pike is needed to generate the
sources there.

Fixes issues with source dists generated with --disable-binary
and an old system pike, where broken files would show up in
the resulting archive and not be regenerated on actual build.

2014-10-28 23:24:39 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: Improved support for --disable-binary.

Don't attempt to make depend in post_modules when cross-compiling
or --disable-binary, since a fresh pike is needed to generate the
sources there.

Fixes issues with source dists generated with --disable-binary
and an old system pike, where broken files would show up in
the resulting archive and not be regenerated on actual build.

2014-10-28 20:11:46 (3 days ago) by Per Hedbor <ph@opera.com>

Added minimal argument checking to cast()
Changed cast in Gmp.mpz from private to protected.
Added minimal argument checking to cast()

2014-10-28 20:05:28 (3 days ago) by Per Hedbor <ph@opera.com>

Changed cast in Gmp.mpz from private to protected.

2014-10-28 18:04:44 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.15 by export.pike
release number bumped to 8.0.14 by export.pike

2014-10-28 17:51:21 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio: Fix compilation issues on OSes without dirfd(3C).

Some operating systems (like eg Solaris 10) do not have dirfd(3C).
Fallback to indexing the DIR with dd_fd or d_fd to get the fd.

2014-10-28 17:48:27 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio: Fix compilation issues on OSes without dirfd(3C).

Some operating systems (like eg Solaris 10) do not have dirfd(3C).
Fallback to indexing the DIR with dd_fd or d_fd to get the fd.
Stdio: Fix linking issues with static libgmp.

Linking of Pike failed with "undefined reference to `__gmpz_import'"
when libgmp was a static library (due to the Gmp module being linked
into the pike binary before the _Stdio module).

This fixes the issue by also linking _Stdio with libgmp.

2014-10-28 17:46:21 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio: Fix linking issues with static libgmp.

Linking of Pike failed with "undefined reference to `__gmpz_import'"
when libgmp was a static library (due to the Gmp module being linked
into the pike binary before the _Stdio module).

This fixes the issue by also linking _Stdio with libgmp.

2014-10-28 16:03:44 (3 days ago) by Martin Nilsson <nilsson@opera.com>

Updated touch syntax. From Magnus Holmgren

2014-10-28 15:07:31 (3 days ago) by Chris Angelico <rosuav@gmail.com>

Hilfe: Reference correct variable name in guard

2014-10-28 14:55:34 (3 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 8.0.12 by export.pike
release number bumped to 8.0.13 by export.pike

2014-10-28 13:12:12 (3 days ago) by Chris Angelico <rosuav@gmail.com>

Hilfe: Reference correct variable name in guard

Monday 27 October 2014

2014-10-27 19:13:13 (4 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Gdbm: Fixed minor leak on exit.

The Gdbm.Iterator program leaked on exit.
Gdbm: Fixed minor leak on exit.

The Gdbm.Iterator program leaked on exit.

2014-10-27 18:54:08 (4 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Tools.*.features: Fixed some feature checks.

Adds "Crypto.AES.GCM" and "Crypto.ECC.Curve" to Tools.Install.features.

Replaces the check for (the nonexistant) "Crypto.GCM" with "Crypto.AES.GCM"
in Tools.Standalone.features.
Tools.*.features: Fixed some feature checks.

Adds "Crypto.AES.GCM" and "Crypto.ECC.Curve" to Tools.Install.features.

Replaces the check for (the nonexistant) "Crypto.GCM" with "Crypto.AES.GCM"
in Tools.Standalone.features.

2014-10-27 18:05:51 (4 days ago) by Martin Nilsson <nilsson@opera.com>

Remove remnants of aborted (stalled?) SHARED_NODES_MK2 project.

2014-10-27 18:01:26 (4 days ago) by Martin Nilsson <nilsson@opera.com>

Canonical code generation.

2014-10-27 17:53:35 (4 days ago) by Martin Nilsson <nilsson@opera.com>

Abstract the debug a bit, for more readable code.

2014-10-27 01:17:50 (5 days ago) by Martin Nilsson <nilsson@opera.com>

Added simple, failing test.

Sunday 26 October 2014

2014-10-26 19:38:05 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Backend: Added some C-level documentation.

All PMOD_EXPORTed functions in the backend should now have some
(minimal) documentation.

2014-10-26 19:31:52 (5 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Backend: Added some C-level documentation.

All PMOD_EXPORTed functions in the backend should now have some
(minimal) documentation.

Saturday 25 October 2014

2014-10-25 13:00:58 (6 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Backend: Make a few more internal functions static.

This makes several CFRUNLOOP-related functions static.

2014-10-25 12:58:37 (6 days ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Backend: Make a few more internal functions static.

This makes several CFRUNLOOP-related functions static.
Backend: Added some linebreaks.

Also rephrases some fatal errors.
Backend: Added some linebreaks.

Also rephrases some fatal errors.

2014-10-25 11:09:58 (7 days ago) by Arne Goedeke <el@laramies.com>

hash_value: fix hashing of trampolines

Two trampolines are equal if there are the same function and created in
the same scope. This patch makes sure hash_svalue is compatible and
trampolines can now be reliably used as hash keys.

Thanks to Stefan Gluszek <stefang@opera.com> for reporting this issue.
hash_value: fix hashing of trampolines

Two trampolines are equal if there are the same function and created in
the same scope. This patch makes sure hash_svalue is compatible and
trampolines can now be reliably used as hash keys.

Thanks to Stefan Gluszek <stefang@opera.com> for reporting this issue.

Friday 24 October 2014

2014-10-24 17:57:42 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Updated to tzdata2014i.

2014-10-24 17:54:51 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Updated to tzdata2014i.

2014-10-24 17:52:24 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Updated to tzdata2014i.

2014-10-24 14:28:23 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Nettle.MAC: Added some function pointer casts to reduce warnings.

Gcc complains about function pointer variables with arguments wanting
void * being assigned with functions wanting specific struct pointers.

Typical example: A pike_nettle_hash_update_func variable being assigned
to umac64_update, which will be complained about because the former has
a void * as the first argument, and the latter a struct umac64_ctx *.

2014-10-24 14:20:37 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Nettle.MAC: Added some function pointer casts to reduce warnings.

Gcc complains about function pointer variables with arguments wanting
void * being assigned with functions wanting specific struct pointers.

Typical example: A pike_nettle_hash_update_func variable being assigned
to umac64_update, which will be complained about because the former has
a void * as the first argument, and the latter a struct umac64_ctx *.

2014-10-24 10:55:19 (1 week ago) by Arne Goedeke <el@laramies.com>

Nettle: compat with nettle < 2.7

the second argument of nettle_random_func was changed (along with many
other parameters) to size_t. Use the compat type pike_nettle_size_t.

2014-10-24 08:52:54 (1 week ago) by Arne Goedeke <el@laramies.com>

Nettle: compat with nettle < 2.7

the second argument of nettle_random_func was changed (along with many
other parameters) to size_t. Use the compat type pike_nettle_size_t.

Thursday 23 October 2014

2014-10-23 10:30:50 (1 week ago) by Arne Goedeke <el@laramies.com>

Standards.JSON: fix -Wuninitialized warnings

GCC complains about the variables m and a to be used uninitialized.
This is not correct, so we silence the warning.
Standards.JSON: keep the validation flag in a local variable
Standards.JSON: fix a ragel file

Commit 623497f223629c11556479c1f49b665a96a7e136 changed json_parser.c
and json_parser.rl inconsistently. I assume the compiled one was
actually tested, so this commit makes sure the .rl file compile into
the same code as before this commit.

2014-10-23 10:16:55 (1 week ago) by Arne Goedeke <el@laramies.com>

Standards.JSON: fix -Wuninitialized warnings

GCC complains about the variables m and a to be used uninitialized.
This is not correct, so we silence the warning.
Standards.JSON: fix a ragel file

Commit 623497f223629c11556479c1f49b665a96a7e136 changed json_parser.c
and json_parser.rl inconsistently. I assume the compiled one was
actually tested, so this commit makes sure the .rl file compile into
the same code as before this commit.

2014-10-23 09:56:28 (1 week ago) by Arne Goedeke <el@laramies.com>

Standards.JSON: keep the validation flag in a local variable

2014-10-23 08:59:43 (1 week ago) by Arne Goedeke <el@laramies.com>

Nettle.BlockCipher: make sure block_size is positive
Nettle.BlockCipher: make sure block_size is positive

2014-10-23 08:45:38 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Constants: Minor documentation change.
SSL.Constants: Minor documentation change.

2014-10-23 00:26:20 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Fixed warning.

Wednesday 22 October 2014

2014-10-22 18:19:23 (1 week ago) by Arne Goedeke <el@laramies.com>

Fix -Wglobbered warnings.

One of them was actually legitimate.
Fix -Wglobbered warnings.

One of them was actually legitimate.

2014-10-22 17:39:21 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Standards.URI: Reduce DWIM.

Fixes issues with Roxen.
Standards.URI: Reduce DWIM.

Fixes issues with Roxen.

2014-10-22 16:36:31 (1 week ago) by Arne Goedeke <el@laramies.com>

FSEvents: misplaced ifdef
FSEvents: misplaced ifdef

2014-10-22 16:07:08 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Calendar: Added some more doc.
Calendar: Added some more doc.

2014-10-22 15:35:18 (1 week ago) by Per Hedbor <ph@opera.com>

release number bumped to 8.0.10 by export.pike
release number bumped to 8.0.11 by export.pike

2014-10-22 14:25:28 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL: Added some more Autodoc.

2014-10-22 14:23:00 (1 week ago) by Jonas Wallden <jonasw@roxen.com>

release number bumped to 897 by export.pike
release number bumped to 896 by export.pike

2014-10-22 13:41:33 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL: Fix "Invalid description".

Some alerts were missing from ALERT_description.

2014-10-22 10:43:07 (1 week ago) by Per Hedbor <ph@opera.com>

Updated char tests
Allow character constants of any size
Bignumns always exists, step 1.

Always include gmp.h, it always exists now.

2014-10-22 10:40:58 (1 week ago) by Per Hedbor <ph@opera.com>

Updated char tests

2014-10-22 10:34:49 (1 week ago) by Per Hedbor <ph@opera.com>

Allow character constants of any size
Bignumns always exists, step 1.

Always include gmp.h, it always exists now.

2014-10-22 10:17:12 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Constants: Make the PROTOCOL_* constants forward compatible.

As these values have a tendency to get stuck in configuration files
and the like, make sure that they are forward-compatible with Pike 8.0.

2014-10-22 10:07:03 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.handshake: Support setting the minimum required version.

The SSL 3.0 protocol can now be disabled by setting min_version in
the context to SSL.Constants.PROTOCOL_TLS_1_0.

Backported API from Pike 8.0. Note that the constants differ
from Pike 8.0 and later, so use the provided symbolic values.

Tuesday 21 October 2014

2014-10-21 15:06:39 (1 week ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

release number bumped to 895 by export.pike
release number bumped to 894 by export.pike

2014-10-21 14:52:46 (1 week ago) by Martin Nilsson <nilsson@opera.com>

Have division by zero constant be compilation error on all platforms and not just amd64.
Limit character constants to four bytes to be 32 bit architecture compatible.
Limit character constants to four bytes to be 32 bit architecture compatible.

2014-10-21 09:12:14 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Nettle.DES: Added notes about some temporary leaks.
Nettle.DES: Added notes about some temporary leaks.

2014-10-21 02:35:01 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

snprintf is used lower cased in several places. Use snprintf instead of SNPRINTF.

2014-10-21 02:20:59 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Safer STRCASECMP and VSNPRINTF macros.

2014-10-21 01:41:22 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Remove forgotten prototype.
Nothing here depends on stralloc.h

2014-10-21 01:39:18 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Different Nettle libs have very different limits on the different DSA parameters. Attempt harder to provoke illegal parameters.
Different Nettle libs have very different limits on the different DSA parameters. Attempt harder to provoke illegal parameters.

Monday 20 October 2014

2014-10-20 18:59:00 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Always generate compile time error when divide by zero.

2014-10-20 18:43:18 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Adjusted tests for new key size.

2014-10-20 18:40:02 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Adjusted tests for new key size.

2014-10-20 18:36:29 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Nettle.DES{,3}: Fixed parity in make_key().

Fixes semi-infinite loop in make_key() (loop on bad parity),
that tended to run out of Pike stack.
Nettle.DES{,3}: Fixed parity in make_key().

Fixes semi-infinite loop in make_key() (loop on bad parity),
that tended to run out of Pike stack.

2014-10-20 18:17:29 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Allow for even lower precision in the test.
Allow for even lower precision in the test.

2014-10-20 18:11:53 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Adjustable precision.

2014-10-20 18:09:28 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Adjustable precision.

2014-10-20 18:00:43 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fix for systems without ECC.
Fix for systems without ECC.

2014-10-20 17:49:15 (2 weeks ago) by Per Hedbor <ph@opera.com>

Use the feature flag instead of api_version.
Added explicit defines for some precompile features
Survive if Stdio.Buffer is compiled with an old precompile

This removes some of the tests if the compilation is done using a
precompile.pike that lacks support for mapping sub-struct members to
pike variables.

Or, as the tests were done previously, if the new precompiler was run
using a pike that lacks support for prefix-cpp mode.

2014-10-20 17:40:13 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

GTK2: gtk_scale_{add_mark,clear_marks}() were added in GTK 2.16.

Fixes linking issues with old gtk.
GTK2: gtk_scale_{add_mark,clear_marks}() were added in GTK 2.16.

Fixes linking issues with old gtk.

2014-10-20 17:34:45 (2 weeks ago) by Per Hedbor <ph@opera.com>

Fixed the name of the rewind_on_error and rewind_key functions

2014-10-20 17:29:58 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Oracle: Updated to the new parent_storage() API.
Oracle: Updated to the new parent_storage() API.

2014-10-20 17:27:48 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Oracle: Removed fallback code for Pike 7.1.
Oracle: Removed fallback code for Pike 7.1.

2014-10-20 17:11:39 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Survive some missing hashes and ciphers.
When assignment runs code you'll get weird bugs like this.
Nettle 2.0 have 489 bits as minimum key size.
Survive some missing hashes and ciphers.
When assignment runs code you'll get weird bugs like this.

2014-10-20 17:09:18 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

smartlink [sh]: Support Linux kernel 3 and later...
smartlink [sh]: Support Linux kernel 3 and later...

2014-10-20 16:55:57 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Nettle 2.0 have 489 bits as minimum key size.

2014-10-20 16:45:24 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fix for systems without ECC
Fix for systems without SHA384 or SHA512
Fix for systems without ECC

2014-10-20 16:30:30 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fix for systems without ECC
Fix for systems without SHA384 or SHA512
Fix for systems without ECC

2014-10-20 15:25:48 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

No need for hashprimes in stralloc.
count_bits doesn't exists.

2014-10-20 14:51:50 (2 weeks ago) by Per Hedbor <ph@opera.com>

release number bumped to 8.0.8 by export.pike
release number bumped to 8.0.9 by export.pike

2014-10-20 14:34:57 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

sqrt is C89 and 5x faster than my_sqrt.

2014-10-20 14:14:12 (2 weeks ago) by Per Hedbor <ph@opera.com>

Fixed the libsane configure test

(cherry picked from commit 5c5a796b72d295280d571f74ca58a2b0f2f839ef)
Fixed the libsane configure test

2014-10-20 13:48:48 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Testsuite: test object _sprintf handling in sprintf()

2014-10-20 13:48:48 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Use Math.log2

2014-10-20 13:48:10 (2 weeks ago) by Arne Goedeke <el@laramies.com>

Testsuite: test object _sprintf handling in sprintf()

2014-10-20 13:34:24 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Added Crypto.Random changes.

2014-10-20 13:29:12 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Mostly word wrapping.

2014-10-20 13:15:38 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Grammar
Backports

2014-10-20 01:59:53 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Added doxygen files to export list.

Sunday 19 October 2014

2014-10-19 16:20:20 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Updated the source export dependencies.
--wihtout-bignums/--without-gmp isn't possible.
Whitespace changes.

2014-10-19 13:24:43 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Fd: Fixed minor race in write().

There were some (uncommon) cases where the backend poll flags
weren't reset after a successful write.

2014-10-19 13:20:57 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Fd: Fixed minor race in write().

There were some (uncommon) cases where the backend poll flags
weren't reset after a successful write.

2014-10-19 13:18:21 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Buffer: Fixed some documentation typos.
Stdio.Buffer: Fixed some documentation typos.

Saturday 18 October 2014

2014-10-18 23:25:30 (2 weeks ago) by Chris Angelico <rosuav@gmail.com>

Enhance Process.run() to be able to accept handler functions for stdout/stderr

2014-10-18 22:48:22 (2 weeks ago) by Chris Angelico <rosuav@gmail.com>

GTK2: Implement TreeView()->set_model()

Thanks to Pawel Tomak for the patch.

2014-10-18 21:51:39 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Doc: Added some Doxygen markup for C-level APIs.

2014-10-18 08:41:36 (2 weeks ago) by Chris Angelico <rosuav@gmail.com>

Enhance Process.run() to be able to accept handler functions for stdout/stderr

2014-10-18 08:32:48 (2 weeks ago) by Chris Angelico <rosuav@gmail.com>

Fix docs typos in Process.run()

2014-10-18 00:10:47 (2 weeks ago) by Arne Goedeke <el@laramies.com>

sprintf: fix last argument handling with _sprintf lfuns

Since I broke this in 7fdf942f6b5344b7d52c141441913f283661006a, sprintf
did not properly keep track of the last argument when calling _sprintf
lfuns.
sprintf: fix last argument handling with _sprintf lfuns

Since I broke this in 7fdf942f6b5344b7d52c141441913f283661006a, sprintf
did not properly keep track of the last argument when calling _sprintf
lfuns.

Friday 17 October 2014

2014-10-17 23:19:48 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Tools.Standalone.autodoc_to_html: Improved robustness.

Fixed NULL-deref in output_from_type().
Tools.Standalone.autodoc_to_html: Improved robustness.

Fixed NULL-deref in output_from_type().

2014-10-17 20:40:45 (2 weeks ago) by Arne Goedeke <el@laramies.com>

String.Buffer: completed the removal of addat
String.Buffer: completed the removal of addat

2014-10-17 20:36:42 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Tools.Standalone.git_export_autodoc: Improved robustness.
Tools.Standalone.git_export_autodoc: Improved robustness.

2014-10-17 20:15:01 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Buffer: Use the correct macro...

2014-10-17 20:12:43 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: Fixed some typos in pervious commit.
Build: Fixed some typos in pervious commit.

2014-10-17 20:08:13 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: SOL_TCP is called IPPROTO_TCP in Solaris.

Fixes compilation issues on Solaris 11.
Build: SOL_TCP is called IPPROTO_TCP in Solaris.

Fixes compilation issues on Solaris 11.

2014-10-17 19:46:06 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Tools.Standalone.git_export_autodoc: Speed up repeated runs.

Persisting of the export state for commits lacking documentation was
lost in the non-doc detection commit. This caused some commits lacking
documentation to be reprocessed every run of the extractor, and slowed
down such runs from completing in a few seconds to taking ~ an hour.
Tools.Standalone.git_export_autodoc: Speed up repeated runs.

Persisting of the export state for commits lacking documentation was
lost in the non-doc detection commit. This caused some commits lacking
documentation to be reprocessed every run of the extractor, and slowed
down such runs from completing in a few seconds to taking ~ an hour.

2014-10-17 13:43:04 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL: Added some notes about destroy().
SSL: Added some notes about destroy().

2014-10-17 13:19:30 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

_Roxen: Fixed buffer overrun in http_decode_string().

Also increases the strictness of a few related testsuite tests.

2014-10-17 13:12:42 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

_Roxen: Fixed buffer overrun in http_decode_string().

Also increases the strictness of a few related testsuite tests.

2014-10-17 09:32:52 (2 weeks ago) by Jonas Wallden <jonasw@roxen.com>

release number bumped to 893 by export.pike
release number bumped to 892 by export.pike

Thursday 16 October 2014

2014-10-16 21:46:49 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Calendar: Added some further tzdata files.

The tzdata directory should now be fully in sync with the tzdata2014h dist.
Calendar: Added some further tzdata files.

The tzdata directory should now be fully in sync with the tzdata2014h dist.

2014-10-16 21:42:23 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Updated to tzdata2014h.

2014-10-16 21:39:59 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Calendar.mkrules: Added some more files to ignore.

2014-10-16 21:28:15 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Updated to tzdata2014h.
Calendar.mkrules: Added some more files to ignore.
Updated to tzdata2014h.

2014-10-16 21:22:46 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Calendar.mkrules: Added some more files to ignore.

2014-10-16 19:14:55 (2 weeks ago) by Arne Goedeke <el@laramies.com>

decode_value: fix memory leak in PIKE_DEBUG

free_decode_data() might throw errors in PIKE_DEBUG with
!free_after_error, so keep the error handler around to prevent decode
data from leaking.

This is currently triggered when decoding SSL.State and SSL.Session.

2014-10-16 17:49:27 (2 weeks ago) by Arne Goedeke <el@laramies.com>

typo in testsuite comment

2014-10-16 17:39:33 (2 weeks ago) by Arne Goedeke <el@laramies.com>

_Roxen.http_decode_string: do not overflow

2014-10-16 15:24:51 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Image.PNG: Fixed leak of arrays in __decode().
Image.PNG: Minor change.

Use the proper SET_SVALUE_ macro instead of accessing the fields directly.
Image.PNG: Fixed leak of arrays in __decode().

2014-10-16 15:22:45 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Image.PNG: Fixed leak of arrays in __decode().

2014-10-16 08:44:31 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Fixed autodoc markup error.

2014-10-16 08:41:50 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Fixed autodoc markup error.

Wednesday 15 October 2014

2014-10-15 21:52:42 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Testsuite: SSL 3.0 doesn't support ECC...
SSL.Session: Survive the client asking for ECC without curves.
SSL.ClientConnection: Don't send extensions in SSL 3.0.

SSL 3.0 doesn't have the concept of protocol extensions,
so don't send any.

In the ServerConnection case, we assume that a client
that has sent extensions will accept extensions regardless
of the negotiated protocol version.
Testsuite: SSL 3.0 doesn't support ECC...

2014-10-15 21:35:28 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Session: Survive the client asking for ECC without curves.

2014-10-15 21:15:16 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.ClientConnection: Don't send extensions in SSL 3.0.

SSL 3.0 doesn't have the concept of protocol extensions,
so don't send any.

In the ServerConnection case, we assume that a client
that has sent extensions will accept extensions regardless
of the negotiated protocol version.

2014-10-15 18:19:34 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed a few GMP tests.
Some backports from 8.1

2014-10-15 17:55:30 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed a few GMP tests.

2014-10-15 14:53:51 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Ignore generated file wnotify_config.h.in.
Ignore generated file wnotify_config.h.in.

2014-10-15 13:25:46 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL: Support TLS_fallback_scsv in SSLv2 handshake too.

2014-10-15 13:08:44 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL: Added server-side support for TLS_fallback_scsv.

This implements some protection against TLS 1.0 ==> SSL 3.0
downgrade attacks. cf "This POODLE Bites: Exploiting The
SSL 3.0 Fallback": https://www.openssl.org/~bodo/ssl-poodle.pdf

2014-10-15 10:17:44 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Fix several issues in destroy().

destroy() still had several workarounds for the old backend approach
(with update_internal_state() et al), when attempting to close the
connection. Remove the workarounds and update the code to the new
backend approach.

Fixes issue with destroy() hanging in the local backend/throwing errors
due to non-existant local backend.

Also fixes a "Cannot access variables in destructed object." when
a read_callback destructs the SSL.File object.

Thanks to Tobias S. Josefowitz <tobij@tobij.de> for the report.

Fixes [LysLysKOM 21005505].

2014-10-15 10:07:13 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Fix several issues in destroy().

destroy() still had several workarounds for the old backend approach
(with update_internal_state() et al), when attempting to close the
connection. Remove the workarounds and update the code to the new
backend approach.

Fixes issue with destroy() hanging in the local backend/throwing errors
due to non-existant local backend.

Also fixes a "Cannot access variables in destructed object." when
a read_callback destructs the SSL.File object.

Thanks to Tobias S. Josefowitz <tobij@tobij.de> for the report.

Fixes [LysLysKOM 21005505].

Tuesday 14 October 2014

2014-10-14 18:18:49 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

The PRIME_LIMIT is assumed to be 1024 in other parts of the code. Make it constant.

2014-10-14 18:13:28 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

UX improvements.

2014-10-14 18:09:00 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Require GMP 4.0 or newer to be installed.

2014-10-14 17:09:33 (2 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Propagate fatal alerts to close and write callbacks.

SSL did not call the close_callback on SSL.File()s that connect outgoing
and abort the handshake by sending fatal alerts to the server.

Fatal alerts generated locally (ie due to broken data from peer)
are now signalled on the close and write callbacks with errno set
to ECONNABORTED and fatal alerts received from the peer have errno
set to ECONNRESET.

Thanks to Tobias S. Josefowitz <tobij@tobij.de> for the report.

Tentative fix for [LysLysKOM 21005266].
SSL.File: Propagate fatal alerts to close and write callbacks.

SSL did not call the close_callback on SSL.File()s that connect outgoing
and abort the handshake by sending fatal alerts to the server.

Fatal alerts generated locally (ie due to broken data from peer)
are now signalled on the close and write callbacks with errno set
to ECONNABORTED and fatal alerts received from the peer have errno
set to ECONNRESET.

Thanks to Tobias S. Josefowitz <tobij@tobij.de> for the report.

Tentative fix for [LysLysKOM 21005266].

2014-10-14 16:38:00 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Some bugfixes and optimizations of small_factor().

2014-10-14 16:32:08 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

p is always larger than 2. Don't add 1.

2014-10-14 16:18:10 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed support for non-fPic-compiled libgcc on 1997-era Solaris.

2014-10-14 13:48:39 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Make TLS 1.0 loweset default TLS in Pike 8.0 too.

2014-10-14 13:11:37 (2 weeks ago) by Martin Nilsson <nilsson@opera.com>

Document rsa_unpad return value.

2014-10-14 11:34:50 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.State: The AEAD length field is gone in TLS 1.3.

Monday 13 October 2014

2014-10-13 18:02:42 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Some trivial TLS 1.3 changes.

2014-10-13 17:41:19 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

ADT.struct: Added missing deprecated symbols buffer and index.
ADT.struct: Added missing deprecated symbols buffer and index.

2014-10-13 17:36:21 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

TLS 1.3 renames NamedCurve into NamedGroup
Simple tests of DH groups.

2014-10-13 12:34:02 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Updated rsa_unpad doc.

2014-10-13 12:21:08 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed sscanf flags tendrils.

2014-10-13 11:52:59 (3 weeks ago) by Jonas Wallden <jonasw@roxen.com>

release number bumped to 890 by export.pike
release number bumped to 891 by export.pike

2014-10-13 00:48:17 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Put the default lower version at TLS 1.0. IE users on pre XP need to upgrade.

Sunday 12 October 2014

2014-10-12 19:55:42 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Don't import Standards.PKCS.

2014-10-12 19:12:47 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Got rid of gz_test. Just use AC_CHECK_LIB instead. Could possibly benefit from using AC_SEARCH_LIBS instead.
Fixed some issues when zlib isn't present.

2014-10-12 18:54:00 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Buffer: Fixed return type for sprintf().
Stdio.Buffer: Fixed return type for sprintf().

Saturday 11 October 2014

2014-10-11 11:35:57 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Buffer: Added try_output().
Stdio.Buffer: Added try_output().

Friday 10 October 2014

2014-10-10 16:56:19 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Wnotify: Use the canonical case for WIN32 header files.
Wnotify: Use the canonical case for WIN32 header files.

2014-10-10 16:52:29 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Wnotify: Added missing template for FindFirstChangeNotification().

Fixes (re-)generation of wnotify_config.h.

Also remove wnotify_config.h from version control, since it
is generated from acconfig.h.
Wnotify: Added missing template for FindFirstChangeNotification().

Fixes (re-)generation of wnotify_config.h.

Also remove wnotify_config.h from version control, since it
is generated from acconfig.h.

2014-10-10 14:57:09 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed warning.

(cherry picked from commit 0994f941f38b9b5361a653bf01b9453bd3500e7c)

Conflicts:
src/signal_handler.c (trivial memset/MEMSET issue)
Fixed warning.

(cherry picked from commit 0994f941f38b9b5361a653bf01b9453bd3500e7c)

2014-10-10 14:44:51 (3 weeks ago) by Per Cederqvist <cederp@opera.com>

set_priority(): Use SCHED_IDLE for priority "lowest".

On systems with sched_setscheduler and where SCHED_IDLE is defined,
use it when setting the priority to "lowest".

(cherry picked from commit 23e8e5699409887476005611ec6e6ce341a87f00)
set_priority(): Raise an error on unsupported priorities.

Previously, the were handled as "normal".

(cherry picked from commit 1f8eb4566cc6b5e23e1d7084ec3d4f30f739145a)
set_priority(): Fix going from realtime to normal priorities.

The following code sequence (and many others) used to fail on systems
that have both the sched_setscheduler() and setpriority() syscalls:

set_priority("realtime");
set_priority("lower");

The first call would set the policy to SCHED_FIFO. The second call
would not touch the policy, but just use setpriority(). The result is
that the process continues to run with realtime priority.

Fix by ensuring that the code calls both sched_setscheduler() and
setpriority() when SCHED_OTHER is in effect.

At the same time, reorganize the code somewhat to be more readable.

(cherry picked from commit 48aa6ad98e390fb68e2055fa67f951e5fb32159f)

Conflicts:
src/signal_handler.c (trivial memset/MEMSET conflict)

2014-10-10 14:42:48 (3 weeks ago) by Per Cederqvist <cederp@opera.com>

Indent preprocessor directives in set_priority().

(cherry picked from commit 56a199cd3f0d7b2866e59e4562c23d8c4449b6e4)
set_priority(): simplify code.

Simplify an expression by removing a multiply-by-0 part of an
expression.

(cherry picked from commit f91b7e2e5519ca66700fee7ddc56f3e7b2c764a9)
set_priority(): add "normal" as a priority.

This makes it possible to return to the default priority in a
documented way.

(cherry picked from commit 2d3e79777cd88b5c708447fba1b68783136539a0)

2014-10-10 14:36:39 (3 weeks ago) by Per Cederqvist <cederp@opera.com>

Indent preprocessor directives in set_priority().

(cherry picked from commit 56a199cd3f0d7b2866e59e4562c23d8c4449b6e4)
set_priority(): add "normal" as a priority.

This makes it possible to return to the default priority in a
documented way.

(cherry picked from commit 2d3e79777cd88b5c708447fba1b68783136539a0)
set_priority(): Use SCHED_IDLE for priority "lowest".

On systems with sched_setscheduler and where SCHED_IDLE is defined,
use it when setting the priority to "lowest".

(cherry picked from commit 23e8e5699409887476005611ec6e6ce341a87f00)
set_priority(): simplify code.

Simplify an expression by removing a multiply-by-0 part of an
expression.

(cherry picked from commit f91b7e2e5519ca66700fee7ddc56f3e7b2c764a9)
set_priority(): Fix going from realtime to normal priorities.

The following code sequence (and many others) used to fail on systems
that have both the sched_setscheduler() and setpriority() syscalls:

set_priority("realtime");
set_priority("lower");

The first call would set the policy to SCHED_FIFO. The second call
would not touch the policy, but just use setpriority(). The result is
that the process continues to run with realtime priority.

Fix by ensuring that the code calls both sched_setscheduler() and
setpriority() when SCHED_OTHER is in effect.

At the same time, reorganize the code somewhat to be more readable.

(cherry picked from commit 48aa6ad98e390fb68e2055fa67f951e5fb32159f)
set_priority(): Raise an error on unsupported priorities.

Previously, the were handled as "normal".

(cherry picked from commit 1f8eb4566cc6b5e23e1d7084ec3d4f30f739145a)

2014-10-10 14:08:33 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Mysql: Improved library detection.

MariaDB is often installed without the mariadb client library
(but with the mysql client library), so search for the mysql
client library if the mariadb client library can't be found.

Also adds searching for reentrant versions of the client libraries.

Fixes compilation issues on machines with MariaDB server but
not MariaDB client.
Mysql: Improved library detection.

MariaDB is often installed without the mariadb client library
(but with the mysql client library), so search for the mysql
client library if the mariadb client library can't be found.

Also adds searching for reentrant versions of the client libraries.

Fixes compilation issues on machines with MariaDB server but
not MariaDB client.

2014-10-10 14:03:39 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Mysql: Improved library detection.

MariaDB is often installed without the mariadb client library
(but with the mysql client library), so search for the mysql
client library if the mariadb client library can't be found.

Also adds searching for reentrant versions of the client libraries.

Fixes compilation issues on machines with MariaDB server but
not MariaDB client.

2014-10-10 11:35:07 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Image.PNG: Minor change.

Use the proper SET_SVALUE_ macro instead of accessing the fields directly.

2014-10-10 11:35:05 (3 weeks ago) by Per Hedbor <ph@opera.com>

Two somewhat related fixes to the PNG decoder

1: Handle any number of PNG chunks (up to the available memory)

2: Stop decoding once the IEND chunk has been processed.

This fixes opera bug TURBO2-767:
Crash when decoding http://extrafahaz.hu/fotok/image052e.png

The image in the bug has a lot of data appended after the IEND chunk,
and in total after decoding there was 339017 chunks.

Since the decoder used the stack to build the array this meant that it
had a tendency ran out of stack space, and caused fairly random
crashes.

Fixed by simply avoiding the stack, instead an array is built
directly.

Also, the PNG format says that the file ends after the IEND chunk, the
decoder now enforces that, which makes the file decode significantly
faster (now ~60 chunks instead of 339k).

2014-10-10 11:32:41 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Image.PNG: Minor change.

Use the proper SET_SVALUE_ macro instead of accessing the fields directly.

2014-10-10 11:23:03 (3 weeks ago) by Per Hedbor <ph@opera.com>

Two somewhat related fixes to the PNG decoder

1: Handle any number of PNG chunks (up to the available memory)

2: Stop decoding once the IEND chunk has been processed.

This fixes opera bug TURBO2-767:
Crash when decoding http://extrafahaz.hu/fotok/image052e.png

The image in the bug has a lot of data appended after the IEND chunk,
and in total after decoding there was 339017 chunks.

Since the decoder used the stack to build the array this meant that it
had a tendency ran out of stack space, and caused fairly random
crashes.

Fixed by simply avoiding the stack, instead an array is built
directly.

Also, the PNG format says that the file ends after the IEND chunk, the
decoder now enforces that, which makes the file decode significantly
faster (now ~60 chunks instead of 339k).

2014-10-10 11:18:24 (3 weeks ago) by Per Hedbor <ph@opera.com>

Two somewhat related fixes to the PNG decoder

1: Handle any number of PNG chunks (up to the available memory)

2: Stop decoding once the IEND chunk has been processed.

This fixes opera bug TURBO2-767:
Crash when decoding http://extrafahaz.hu/fotok/image052e.png

The image in the bug has a lot of data appended after the IEND chunk,
and in total after decoding there was 339017 chunks.

Since the decoder used the stack to build the array this meant that it
had a tendency ran out of stack space, and caused fairly random
crashes.

Fixed by simply avoiding the stack, instead an array is built
directly.

Also, the PNG format says that the file ends after the IEND chunk, the
decoder now enforces that, which makes the file decode significantly
faster (now ~60 chunks instead of 339k).

Thursday 09 October 2014

2014-10-09 21:35:41 (3 weeks ago) by Jonas Wallden <jonasw@roxen.com>

release number bumped to 889 by export.pike
release number bumped to 888 by export.pike

2014-10-09 14:01:38 (3 weeks ago) by Stephen R. van den Berg <srb@cuci.nl>

Stdio.Buffer: Fix NOP call.
Stdio.Buffer: Fix NOP call.

2014-10-09 13:22:58 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed warning.

2014-10-09 12:49:52 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Buffer: Handle UNDEFINED nbytes in input_from().

The nbytes argument may be UNDEFINED (typically when the once argument
has been specified). Handle it as if nbytes hasn't been specified.

Thanks to Stephen R. van den Berg <srb@cuci.nl> for the report.

Fixes some of [LysLysKOM 20998397]/[Pike mailinglist 14064].
Stdio.Buffer: Handle UNDEFINED nbytes in input_from().

The nbytes argument may be UNDEFINED (typically when the once argument
has been specified). Handle it as if nbytes hasn't been specified.

Thanks to Stephen R. van den Berg <srb@cuci.nl> for the report.

Fixes some of [LysLysKOM 20998397]/[Pike mailinglist 14064].

2014-10-09 10:19:56 (3 weeks ago) by Per Cederqvist <cederp@opera.com>

set_priority(): Use SCHED_IDLE for priority "lowest".

On systems with sched_setscheduler and where SCHED_IDLE is defined,
use it when setting the priority to "lowest".
set_priority(): Raise an error on unsupported priorities.

Previously, the were handled as "normal".
set_priority(): Fix going from realtime to normal priorities.

The following code sequence (and many others) used to fail on systems
that have both the sched_setscheduler() and setpriority() syscalls:

set_priority("realtime");
set_priority("lower");

The first call would set the policy to SCHED_FIFO. The second call
would not touch the policy, but just use setpriority(). The result is
that the process continues to run with realtime priority.

Fix by ensuring that the code calls both sched_setscheduler() and
setpriority() when SCHED_OTHER is in effect.

At the same time, reorganize the code somewhat to be more readable.
set_priority(): simplify code.

Simplify an expression by removing a multiply-by-0 part of an
expression.
set_priority(): add "normal" as a priority.

This makes it possible to return to the default priority in a
documented way.
Indent preprocessor directives in set_priority().

Wednesday 08 October 2014

2014-10-08 19:17:12 (3 weeks ago) by unknown <unknown user@unknown>

Fix warning message, and list Pike version in comment to help troubleshooting precompile issues.
Fix warning message, and list Pike version in comment to help troubleshooting precompile issues.

2014-10-08 18:19:05 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

_Roxen: Fixed bug in http_decode_string().

Due to forward patching...
_Roxen: Fixed bug in http_decode_string().

Due to forward patching...

2014-10-08 17:43:31 (3 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed warning.

2014-10-08 17:30:32 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

_Roxen: http_decode_string() now supports wide strings.

Wide strings may show up in URLs in eg tag attributes.

Fixes [bug 7318].
_Roxen: http_decode_string() now supports wide strings.

Wide strings may show up in URLs in eg tag attributes.

Fixes [bug 7318].

2014-10-08 17:25:34 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

_Roxen: http_decode_string() now supports wide strings.

Wide strings may show up in URLs in eg tag attributes.

Fixes [bug 7318].

2014-10-08 17:02:45 (3 weeks ago) by Arne Goedeke <el@laramies.com>

Stdio: typo in documentation

Buffer does not start with a vowel anymore.

2014-10-08 16:39:03 (3 weeks ago) by Arne Goedeke <el@laramies.com>

Stdio: typo in documentation

Buffer does not start with a vowel anymore.

2014-10-08 15:25:57 (3 weeks ago) by Per Hedbor <ph@opera.com>

The instruction names are only used in debug mode.

Saves about 7k binary and 4k bss.

(cherry picked from commit 8eb452133a657e38cb0b71b4dff569dde9aac9b9)
PIKE_NEW_MULTISETS is anything but. Also, it is not used

(cherry picked from commit 39830fea86ebe83ff880879b6ff8c75d9fe51d50)

2014-10-08 15:21:29 (3 weeks ago) by Per Hedbor <ph@opera.com>

The instruction names are only used in debug mode.

Saves about 7k binary and 4k bss.
PIKE_NEW_MULTISETS is anything but. Also, it is not used

Tuesday 07 October 2014

2014-10-07 16:34:57 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Constants: Moved implementation notes to separate file.

Also adds some notes about the workings of SSL.File.

2014-10-07 16:32:34 (3 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Constants: Moved implementation notes to separate file.

Also adds some notes about the workings of SSL.File.

Monday 06 October 2014

2014-10-06 18:00:00 (4 weeks ago) by Per Hedbor <ph@opera.com>

Revert "Do not consider a function to be implemented if it's just a prototype."

This reverts commit 1881b02893eb681b6b18b9363410364509abb2ec.

It did not really work, since the 'implements' function is used in other places
where the prototype checking should not really be done.

As an example, defining a variable that was of type A to be type B.

It would not work if B had prototypes that were in A.

2014-10-06 17:45:16 (4 weeks ago) by Per Hedbor <ph@opera.com>

Save 4 bytes on the struct identifier struct size
Do not consider a function to be implemented if it's just a prototype.

This changes typechecking in an incompatible manner.

Currently the SSL code does not compile.

2014-10-06 16:09:45 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Nettle: Reference the programs being inherited.

Make sure that there's a local symbol in the parent for the
programs that we inherit. Otherwise the parent_identifier in
the generated inherit may point back to some later override.

This happens frequently when inheriting the State class.

This fixes infinite recursion in eg Program.all_inherits()
when called with several of the Crypto and Nettle classes.
Nettle: Reference the programs being inherited.

Make sure that there's a local symbol in the parent for the
programs that we inherit. Otherwise the parent_identifier in
the generated inherit may point back to some later override.

This happens frequently when inheriting the State class.

This fixes infinite recursion in eg Program.all_inherits()
when called with several of the Crypto and Nettle classes.

Sunday 05 October 2014

2014-10-05 22:49:40 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed some old compat code.

2014-10-05 22:43:06 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed environment compat and some other old leftovers.

2014-10-05 22:12:29 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed compat flags from sprintf and sscanf.

2014-10-05 21:45:32 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Remove remaining explicit 7.6 compat.
Always hide empty modules.

2014-10-05 20:07:23 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed sprintf_76 tests.

2014-10-05 20:02:12 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed warning.
Removed f_sscanf_76 and f_sprintf_76.

2014-10-05 19:53:51 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

nomask is deprecated. Release the reserved token.
Ops. Didn't check in the last changes.

2014-10-05 19:25:29 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed sscanf_76_type_string
Test #pike 8.1

2014-10-05 19:22:21 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Removed SSCANF_FLAG_76_COMPAT.
Removed some useless version checks. Only relevant if you would moce the code to an older Pike binary.

2014-10-05 19:12:34 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Remove 7.6 compat. Add 7.8 compat master.

2014-10-05 19:09:37 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Remove 7.6 compat files.

2014-10-05 12:59:48 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Pass ::write to Stdio.Buffer::output_to() et al.

This fixes infinite recursion when using Stdio.FILE with output buffers.
Stdio.Buffer: output_to() et al now support functions.

This reduces the need for proxy objects in higher level code
using Stdio.Buffer internally.

Also adds support for subtyped objects and multiple inheritance
of Stdio.Fd et al.

2014-10-05 12:26:14 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Pass ::write to Stdio.Buffer::output_to() et al.

This fixes infinite recursion when using Stdio.FILE with output buffers.
Stdio.Buffer: output_to() et al now support functions.

This reduces the need for proxy objects in higher level code
using Stdio.Buffer internally.

Also adds support for subtyped objects and multiple inheritance
of Stdio.Fd et al.

Saturday 04 October 2014

2014-10-04 14:02:39 (4 weeks ago) by Chris Angelico <rosuav@gmail.com>

Fix autodoc formatting

2014-10-04 12:35:45 (4 weeks ago) by Arne Goedeke <el@laramies.com>

block_allocator: use Valgrind macros in the right order

When sorting the free list during ba_walk(), the Valgrind macros were
used in the wrong order. This led to spurious Valgrind warnings.
block_allocator: use Valgrind macros in the right order

When sorting the free list during ba_walk(), the Valgrind macros were
used in the wrong order. This led to spurious Valgrind warnings.

2014-10-04 09:26:25 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Disconnect the old output buffer properly.
Stdio.File: Disconnect the old output buffer properly.

2014-10-04 09:23:10 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Added query_buffer_mode().
Stdio.File: Added query_buffer_mode().

2014-10-04 09:07:03 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Name space cleanups.

Multiple symbols in Stdio.File are now protected:

* {in,out}buffer

* ___{read,write,close,read_oob,write_oob,fs_event}_callback

* ___id

Moved the {read,write}_callback_t types to the Stdio module proper.

Also adds a do {} while(0) wrapper to the CHECK_OPEN() macro.
Stdio.File: Name space cleanups.

Multiple symbols in Stdio.File are now protected:

* {in,out}buffer

* ___{read,write,close,read_oob,write_oob,fs_event}_callback

* ___id

Moved the {read,write}_callback_t types to the Stdio module proper.

Also adds a do {} while(0) wrapper to the CHECK_OPEN() macro.

Friday 03 October 2014

2014-10-03 23:26:11 (4 weeks ago) by unknown <unknown user@unknown>

Fix "make bin_export" on OS X to not include phantom resource fork file.
Fix "make bin_export" on OS X to not include phantom resource fork file.

2014-10-03 17:28:40 (4 weeks ago) by unknown <unknown user@unknown>

Fixed yet another Clang warning.
Fixed yet another Clang warning.

2014-10-03 17:23:30 (4 weeks ago) by unknown <unknown user@unknown>

Fix a bunch of Clang warnings.
Fix compile errors in emulated accept4() added in 236e8efea9.
Fix compile errors in emulated accept4() added in 236e8efea9.
Fix a bunch of Clang warnings.

2014-10-03 17:16:13 (4 weeks ago) by Per Hedbor <ph@opera.com>

Removed security system (on this branch)

2014-10-03 17:14:05 (4 weeks ago) by Per Hedbor <ph@opera.com>

Removed the spider module (deprecated since it was created).
Removed some spider references while waiting for removal of 7.6 compat

2014-10-03 16:23:54 (4 weeks ago) by Arne Goedeke <el@laramies.com>

Mysql.list_fields(): support more field flags
Nettle: moved rsa_unpad() to nettle.cmod

rsa_unpad() does not actually depend on hogweed and is used without it.
This fixes the Crypto module when compiled with old nettle versions
(without hogweed).
CHANGES: one typo
Nettle: moved rsa_unpad() to nettle.cmod

rsa_unpad() does not actually depend on hogweed and is used without it.
This fixes the Crypto module when compiled with old nettle versions
(without hogweed).

2014-10-03 16:17:31 (4 weeks ago) by Arne Goedeke <el@laramies.com>

Mysql.list_fields(): support more field flags

2014-10-03 15:36:49 (4 weeks ago) by Per Hedbor <ph@opera.com>

Some changes to CHANGES.

Mainly rewording things, added some notes about Stdio.Buffer

2014-10-03 15:13:04 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Support buffering in write().

Stdio.File()->write() now buffers in the output buffer if there is one,
and then to the actual fd.

2014-10-03 15:10:59 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Changed to 8.1

2014-10-03 15:08:41 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

release number bumped to 8.0.7 by export.pike
release number bumped to 8.0.6 by export.pike

2014-10-03 15:07:47 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Support buffering in write().

Stdio.File()->write() now buffers in the output buffer if there is one,
and then to the actual fd.

2014-10-03 14:38:45 (4 weeks ago) by Per Hedbor <ph@opera.com>

No changes for 8.1 yet
Pike 8.1 branched off

Thursday 02 October 2014

2014-10-02 22:32:13 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Simplified debug a bit. data is always an array here.
Re-add early exit if not a full write was accepted. This is most often an optimazation.

2014-10-02 21:09:56 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

No need to limit data to write here.

2014-10-02 21:05:00 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

While any data can be sent, continue sending.
Don't corrupt send counter on error.

2014-10-02 20:57:52 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fixed output_to nbytes feature for non-file objects.

2014-10-02 20:48:52 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

io_rewind is already applied in io_call_write. Don't do it again in output_to.

2014-10-02 19:17:53 (4 weeks ago) by Per Hedbor <ph@opera.com>

Stdio.Buffer now works on 32bit systems

2014-10-02 18:57:02 (4 weeks ago) by Per Hedbor <ph@opera.com>

Optimized case for array += ({..}) when refs==2.

This was sort of done before, but it first assigned the lvalue
to 0, then assigned it back to the array once done.

This new version is about 2x faster, improving the "append array"
benchmark by about 60%.
Added a simple append_mapping instruction.

Much like append_array, but for mappings. This speeds up the append
mapping benchmark by about (currently) 1000x.

However, that is somewhat misleading since the refs optimization is
not done currently since the wrong assignment operator ends up being
used.

Even when that is fixed the speedup should is still more than 2x,
however.

2014-10-02 18:28:23 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Whitespace changes

2014-10-02 17:36:41 (4 weeks ago) by Per Hedbor <ph@opera.com>

Removed MAX_FD configure test

It only returns the current max anyway, which is usually
smaller than the max if you are running as root, and can
also be changed at any time at runtime.

Instead, use sysconf(_SC_OPEN_MAX) when available if needed, and as a
last resort a hardcoded value (on Windows), but as a secondary change
all uses except two was removed:

o Stdio.get_all_active_fd - On systems without /dev/fd and
/proc/self/fd.

o On NT, the size of FD_SET is now set to a hardcoded value (64k).

The rewrite of get_all_active_fd also speeds it up a lot. Not that it
is a frequently used function.

2014-10-02 15:35:06 (4 weeks ago) by Per Hedbor <ph@opera.com>

Do not test each and every file in ABI dirs

Once we know that the directory fulfills the search conditions, stop
running file on the files. Saves about 30 seconds on a full configure
run for me.

2014-10-02 15:20:33 (4 weeks ago) by Per Hedbor <ph@opera.com>

Fixed a few typos
Whitespace changes only

2014-10-02 14:59:58 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Silence release script warnings.

2014-10-02 14:31:41 (4 weeks ago) by Build system <distmaker@roxen.com>

release number bumped to 886 by export.pike
release number bumped to 887 by export.pike

2014-10-02 14:24:01 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: More race fixes in connect() [bug 7293].

It seems the backend on Linux sometimes may trigger before the connect(2)
is done with POLLIN and a state where read(2) fails with ENOTCONN.

Reduce the race condition by inhibiting backend callbacks on the
fd during connect(2).

2014-10-02 14:20:23 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: More race fixes in connect() [bug 7293].

It seems the backend on Linux sometimes may trigger before the connect(2)
is done with POLLIN and a state where read(2) fails with ENOTCONN.

Reduce the race condition by inhibiting backend callbacks on the
fd during connect(2).

2014-10-02 11:45:29 (4 weeks ago) by Build system <distmaker@roxen.com>

release number bumped to 884 by export.pike
release number bumped to 885 by export.pike

2014-10-02 09:10:53 (4 weeks ago) by Martin Karlgren <marty@roxen.com>

install.pike: Update CXX smartlink path to installed path as well.
install.pike: Update CXX smartlink path to installed path as well.

Wednesday 01 October 2014

2014-10-01 22:36:38 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fix typos.

2014-10-01 19:15:35 (4 weeks ago) by Per Hedbor <ph@opera.com>

Change from 10 to 0.5 second timeout in OOB testing.

If we have not received the data we are sending to ourselves in .5 seconds
it is higly unlikely we will get it any time in the next 9.5 seconds.
Added "this" to the list of predefined strings
Unified the automatic bash selection

We already did select bash in the toplevel makefile to run configure
if desired, we now set the CONFIG_SHELL variable there as well.

This makes the test in configure.in 100% instead of 99.9% redundant.
static X -> protected X in autodocs
Avoid getting the precompile output twice in the same file

Sometimes pike crashes when exiting (mainly with cleanup on exit
enabled). If so, it might be that the precompiler already genereated
output.

When the next pike is then tried we get the precompile output multiple
times in the generated file
Added note about this:: to CHANGES

2014-10-01 17:29:23 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Fix warnings

2014-10-01 17:05:14 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Destruct the mutex after we stopped using it.

2014-10-01 16:31:37 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Don't leak at exit.

2014-10-01 15:38:48 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Stdio.IOBuffer -> Stdio.Buffer (part 2)

2014-10-01 15:34:26 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Stdio.IOBuffer -> Stdio.Buffer (part 1)

2014-10-01 15:14:51 (4 weeks ago) by Martin Nilsson <nilsson@opera.com>

Don't fail twice.
Now even workier.

2014-10-01 15:12:08 (4 weeks ago) by Build system <distmaker@roxen.com>

release number bumped to 882 by export.pike
release number bumped to 883 by export.pike

2014-10-01 15:09:48 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Java: Fixed compilation issues with JNIs not having UNUSED().

Many (most?) <jni.h> header files don't define UNUSED(), so the
macro doesn't always exist as we've undefined it before including
<jni.h>. Use the new PIKE_UNUSED() macro instead.

2014-10-01 15:03:12 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Build: Added macro PIKE_UNUSED to avoid name-clash.

2014-10-01 14:51:56 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Fixed race condition in nonblocking connect().

Potential fix for [bug 7293].

2014-10-01 14:39:29 (4 weeks ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Fixed race condition in nonblocking connect().

Potential fix for [bug 7293].

2014-10-01 12:34:20 (1 month ago) by Martin Nilsson <nilsson@opera.com>

_Image_WebP now compiles.

2014-10-01 07:57:58 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

IOBuffer: Propagate read errors in input_from().

input_from() now returns -1 on read error.

Also minor optimization to avoid extra read(2) call when
reading a multiple of 4096 bytes.

Tuesday 30 September 2014

2014-09-30 20:22:38 (1 month ago) by Per Hedbor <ph@opera.com>

Commited forgotten support function

2014-09-30 20:18:39 (1 month ago) by Per Hedbor <ph@opera.com>

[precompiler] Use the correct types for classes and objects

This includes programs in the cmod file and external programs.

This makes the typechecker less odd, as an example the IOBuffer class
functions that return an IOBuffer will not give warnings along the lines
of "object of type IOBuffer can not be returned from a function
returning object(IOBuffer=__Stdio()->IOBuffer)".

You can also use any object type as arguments and return types, although
you still have to use object(X.Y) in most places due to the parser.
Stricter types for Image.WebP.

2014-09-30 20:14:45 (1 month ago) by Per Hedbor <ph@opera.com>

Stricter types in buffer.cmod
Removed the a-bit-too-generic PROG_BUFFER_ID.

2014-09-30 18:47:24 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Reworked some of the debug code.

2014-09-30 18:15:42 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Only attempt to import PEM CERTIFICATE parts.

2014-09-30 17:57:14 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Somewhat more unwieldy parts interface for single messages, but easier for e.g. certificate chains.

2014-09-30 17:35:39 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Clean up debug code a bit.

2014-09-30 17:20:55 (1 month ago) by Martin Nilsson <nilsson@opera.com>

this_program:: -> this::

2014-09-30 17:01:18 (1 month ago) by Per Hedbor <ph@opera.com>

Do not count programs without storage as gmp.mpz objects.

2014-09-30 16:52:12 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Optimizer: Fixed over-optimization of F_ASSIGN_SELF nodes.

F_ASSIGN_SELF nodes weren't marked as OPT_ASSIGNMENT, so they
could sometimes be removed by the optimizer.

Also fixes some related optimizer and type-checker issues.

Thanks to Chris Angelico <rosuav@gmail.com> for the report.

Fixes [LysLysKOM 20983743].

2014-09-30 16:29:57 (1 month ago) by Per Hedbor <ph@opera.com>

[precompiler] Generate the various *_num variables conditionally.

If default_cmod_storage is allowed to default to static, and the
variables are not used, do not generate them at all.

This rather significantly shrinks the init functions for large classes,
and saves 8 bytes of ram per function at least.

2014-09-30 16:26:44 (1 month ago) by Per Hedbor <ph@opera.com>

Support this::x for variables in this object.

This is equivalent to this_program::x, but shorter to write. And,
incidentally, more logical and more like other languages.

2014-09-30 16:21:54 (1 month ago) by Marcus Cromnow <marcusc@opera.com>

Don't backtrace when local_backend is missing.

2014-09-30 13:15:26 (1 month ago) by Per Hedbor <ph@opera.com>

Also support objects that inherit mpz objects as inherit 0 as mpz objects.

2014-09-30 01:13:13 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Simple testcase for secure_der_decode.

2014-09-30 01:04:44 (1 month ago) by Martin Nilsson <nilsson@opera.com>

No, I had it right the first time. (Though DSA wasn't.)

2014-09-30 00:55:47 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Verify that no additional payload is hidden in ASN.1 structures.

2014-09-30 00:37:11 (1 month ago) by Martin Nilsson <nilsson@opera.com>

No parameters means one element less, not a Null element.

2014-09-30 00:32:15 (1 month ago) by Martin Nilsson <nilsson@opera.com>

No parameters means one element less, not a Null element.

Monday 29 September 2014

2014-09-29 15:18:41 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Support dates beyond 2050.
Support initialization from calendar object.

2014-09-29 14:47:37 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Added GeneralizedTime.

2014-09-29 13:27:15 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Fixed warning.
Fixed warning.
We don't test for C89 functions anymore.

2014-09-29 08:37:00 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Support buffering in read().

Stdio.File()->read() now reads from the input buffer if there is one,
and then from the actual fd.

2014-09-29 01:10:17 (1 month ago) by Martin Nilsson <nilsson@opera.com>

All deprecated last.

2014-09-29 01:08:09 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Corrected comment.
Make make_key_usage_flags internal for now.
Removed one level of indirection and inherit SSL.Port directly into SSLPort.

2014-09-29 00:26:47 (1 month ago) by Chris Angelico <rosuav@gmail.com>

Document Program.all_inherits and give an example

Sunday 28 September 2014

2014-09-28 23:37:36 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Tidy up the signature verification a little.
Added validation method and _sprintf.
Set keyAgreement flag on ECDSA certificates.
Verify DH parameters.

2014-09-28 20:11:31 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Fd: Map _errno.

Make it possible to set the errno for a Stdio.File from Pike code.

Also added some minimal documentation for the other mapped fields
in Stdio.Fd, as well as moving the documentation for the low-level
functions from Stdio.File to Stdio.Fd.

2014-09-28 02:08:47 (1 month ago) by Chris Angelico <rosuav@gmail.com>

Rework Program.all_inherits to be recursive

Saturday 27 September 2014

2014-09-27 14:03:47 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.File: Support UNDEFINED as the first argument to read().

Friday 26 September 2014

2014-09-26 20:43:38 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler: Improved diagnostics.

The fatal "Internal error: Not allowed to add more identifiers during
second compiler pass" now informs about what the identifier was.

2014-09-26 14:52:27 (1 month ago) by Martin Nilsson <nilsson@opera.com>

NPN is removed. ALPN is added.

Thursday 25 September 2014

2014-09-25 21:46:16 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Cipher: Improved debug message.

2014-09-25 16:48:08 (1 month ago) by Per Hedbor <ph@opera.com>

Added rewind_key, much like rewind_on_error, but not automatic.

Also speed up read_cstring about a factor of two.

2014-09-25 16:26:16 (1 month ago) by Per Hedbor <ph@opera.com>

Added read_hint and add_hint

They read and add integers encoded like hstrings, first a length then the number.

2014-09-25 15:41:43 (1 month ago) by Per Hedbor <ph@opera.com>

Survive the SSL.File read callback closing the file.

2014-09-25 15:06:40 (1 month ago) by Tobias S. Josefowitz <tobij@tobij.de>

Stdio.IOBuffer.UnwindKey: allow explicit ->rewind()

2014-09-25 13:20:42 (1 month ago) by Per Hedbor <ph@opera.com>

Added Stdio.IOBuffer::rewind_on_error.

Use this function to cause the buffer to be rewound to the location
it was at when the function was called if the object it returs
goes out of scope.

2014-09-25 08:23:55 (1 month ago) by Arne Goedeke <el@laramies.com>

Stdio.IOBuffer: bad return type of add_int32()

2014-09-25 03:57:33 (1 month ago) by Chris Angelico <rosuav@gmail.com>

De-hackify (slightly) the GTK2 constants guard

2014-09-25 03:43:02 (1 month ago) by Chris Angelico <rosuav@gmail.com>

Typo fixes in GTK2.ScrolledWindow docs

Wednesday 24 September 2014

2014-09-24 20:02:16 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Don't print out connection close.

2014-09-24 17:41:42 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Runtime: Added check and fallback for accept4(2).

accept4(2) is a system call available on current Linux and many BSDs,
that allows for setting the close-on-exec and non-blocking flags
on the resulting fd.

Tuesday 23 September 2014

2014-09-23 18:41:22 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Pad non-pkcs signatures to key size.
Removed debug.

2014-09-23 18:15:24 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Pre-commit c-t.

2014-09-23 18:11:20 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Moved the compat generate_key into the deprecated section.

2014-09-23 18:04:45 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Some refactoring.

2014-09-23 17:43:34 (1 month ago) by Martin Nilsson <nilsson@opera.com>

Continue to read if there is more than Stdio.DATA_CHUNK_SIZE data available.

2014-09-23 17:31:17 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.File: Preparations for adding the new IOBuffer APIs.

This renames read_buffer to user_read_buffer and adds
(unused for now) user_write_buffer.

This is to make it clearer to see on which side of the
encryption the buffers are.
Stdio.File: Some minor documentation updates.

2014-09-23 17:13:03 (1 month ago) by Arne Goedeke <el@laramies.com>

Protocols.WebSocket: use Stdio.IOBuffer

2014-09-23 17:04:59 (1 month ago) by Arne Goedeke <el@laramies.com>

Stdio.File: removed notify()

This API has never been completed and does not work as advertised.
Also, dnotify has has been superseded by inotify in 2005 which is
supported as System.Inotify.

2014-09-23 16:54:27 (1 month ago) by Per Hedbor <ph@opera.com>

Fixed branch

2014-09-23 15:14:26 (1 month ago) by Per Hedbor <ph@opera.com>

Fixed error in F_SIZEOF_LOCAL_STRING when the argument is not actually a string

2014-09-23 15:12:23 (1 month ago) by Per Hedbor <ph@opera.com>

Added F_SIZEOF_STRING and F_SIZEOF_LOCAL_STRING

We really should pass on the type to the code generator instead, I
think.

There should also be a "#pragma promise_correct_types" or something
that would guarantee that the types are correct, and crash and burn if
they are not.

The generated code would be significantly smaller and faster.
Do not warn about deprecations in 7.8-compat

2014-09-23 11:54:37 (1 month ago) by Per Hedbor <ph@opera.com>

Added more direct mapping to seek.

Also added SEEK_DATA and SEEK_HOLE support if they are supported by
the OS (solaris, freebsd, linux).

In order to keep compatibility the SEEK_<whatever> constants are
actually strings.

Deprecated the old seek( offset, multiplier, adder ) version of seek
(which was, according to the documentation, obsolete before year
2000).

2014-09-23 10:58:49 (1 month ago) by Per Hedbor <ph@opera.com>

Added F_NOT amd64 edition.

Monday 22 September 2014

2014-09-22 18:26:02 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

Strings: Added comment.

2014-09-22 16:13:04 (1 month ago) by Martin Nilsson <nilsson@opera.com>

The TLS padding extension is implemented. The actual extension ID is still undecided, but doesn't matter.

Sunday 21 September 2014

2014-09-21 13:20:55 (1 month ago) by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.Constants: Converted list of RFCs into a checklist.

This is to make it easier to keep track of what has been
implemented or not.

FIXME: Should we move this to a separate file
(eg implementation-notes.txt)?

[permalink]

Bugs mentioned

  1024RESOLVEDInitial variables broken
  1997RESOLVEDString.pmod.o:-: Warning: Decode failed:
  2000ASSIGNEDJAVA_HOME hangs while configuring Pike 7.2/7.3
  2002RESOLVEDInstallation fails on Redhat 7.1 box
  2005RESOLVEDBacktrace in Admin Interface
  2050RESOLVED2.1.265 - Install Fails
  7293RESOLVEDftp state-machine unstable
  7318RESOLVEDcimg fails to decode (some) non-latin-1 chars
  882ASSIGNEDManual PDF:s unfinished
  883RESOLVEDOvercaching of <define container>+<emit>+<strlen>+<insert file>
  884RESOLVEDClient entities user, password and authenticated generate backtraces
  885RESOLVEDStreaming Gz module gives incorrect results
  886RESOLVEDLost characters in Pers checkin
  889RESOLVEDMore info on prestates in the programming manual.
  890RESOLVEDAdmin manual lacks description of module level security
  891RESOLVEDWrapped lines.
  892RESOLVEDCreator manual lacks alpha sorted tag index
  896RESOLVEDAutobuild does not detect checkins.
  897ASSIGNEDinternal-docs not accessible from outside the Roxen network
Bugs? Suggestions?