pike issueshttps://git.lysator.liu.se/pikelang/pike/-/issues2009-04-16T14:11:39Zhttps://git.lysator.liu.se/pikelang/pike/-/issues/3064The int type might leak2009-04-16T14:11:39ZPeter BortasThe int type might leakImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3064
Reported by Martin Stjernholm <mast@roxen.com>
Running mkpeep.pike in a pike with debug-malloc shows the attached leak.Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3064
Reported by Martin Stjernholm <mast@roxen.com>
Running mkpeep.pike in a pike with debug-malloc shows the attached leak.Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/3060Line number problem with machine code and PIKE_FRAME_RETURN_INTERNAL2009-04-16T14:11:39ZPeter BortasLine number problem with machine code and PIKE_FRAME_RETURN_INTERNALImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3060
Reported by Martin Stjernholm <mast@roxen.com>
void x (mixed val)
{
}
class X
{
void create() {error ("foo\n");}
}
object rx = class ...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3060
Reported by Martin Stjernholm <mast@roxen.com>
void x (mixed val)
{
}
class X
{
void create() {error ("foo\n");}
}
object rx = class {}(); // Line 10
```
int main()
{
x (rx->x);
rx = X(); // Line 15
}
```
When using machine code (at least on ia32), the backtrace generated in the
program above says the line for the X call in main() is 10, which is
clearly wrong.
The reason for the bogus line numbers is that the opcodes in
interpret_functions.h that use PIKE_FRAME_RETURN_INTERNAL change
Pike_fp->pc. That doesn't work well together with machine code that
increments it relatively.
Afaics it's either necessary to add FLUSH_CODE_GENERATOR_STATE after those
opcodes, or use another place than Pike_fp->pc to store the return address.
A testsuite test has been added.Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/3056Hilfe dies of some widestring errors.2009-04-16T14:11:39ZPeter BortasHilfe dies of some widestring errors.Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3056
Reported by @grubba
```
Pike v7.3 release 31 running Hilfe v3.3 (Incremental Pike Frontend)
> object o = compile_string("void foo(){ error(\"Foo!\\n\");
}","\x4141")...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3056
Reported by @grubba
```
Pike v7.3 release 31 running Hilfe v3.3 (Incremental Pike Frontend)
> object o = compile_string("void foo(){ error(\"Foo!\\n\");
}","\x4141")();
> o->foo();
Stdio.File->write(): cannot output wide strings.
module.c:57.files.Fd: write("Foo!\n\40501:1: foo()\n")
/home/grubba/src/Pike/7.3/lib/modules/Tools.pmod/Hilfe.pmod:1684:
HilfeEvaluator->evaluate("mixed ___HilfeWrapper() { return (___hilfe->
o)->foo(); ; }",1)
/home/grubba/src/Pike/7.3/lib/modules/Tools.pmod/Hilfe.pmod:1458:
HilfeEvaluator->parse_expression(Expression(({ /* 6 elements */
"(___hilfe->o)",
"->",
"foo",
"(",
")",
";"
})))
/home/grubba/src/Pike/7.3/lib/modules/Tools.pmod/Hilfe.pmod:1092:
HilfeEvaluator->add_buffer("o->foo();")
/home/grubba/src/Pike/7.3/lib/modules/Tools.pmod/Hilfe.pmod:1047:
HilfeEvaluator->add_input_line("o->foo();")
/home/grubba/src/Pike/7.3/lib/modules/Tools.pmod/Hilfe.pmod:1791:
HilfeEvaluator->create()
Hilfe: StdinHilfe()
```Pike 7.4https://git.lysator.liu.se/pikelang/pike/-/issues/3030Unicode test 1332 fails.2009-04-16T14:11:39ZPeter BortasUnicode test 1332 fails.Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3030
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
Part0: Specific cases
Done. 138 tests.
Part1: Character by character test
Test 1332/NFC failed:
expected:...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3030
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
Part0: Specific cases
Done. 138 tests.
Part1: Character by character test
Test 1332/NFC failed:
expected: 2ADD 0338
got: 2ADC
input: 2ADC
Test 1332/NFC failed:
expected: 2ADD 0338
got: 2ADC
input: 2ADD 0338
Test 1332/NFKC failed:
expected: 2ADD 0338
got: 2ADC
input: 2ADC
Done. 97890 tests.
Part2: Canonical Order Test
Done. 3924 tests.
Summary: 3/101952 tests failedPike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/3024Hilfe parse error on function invocation with array literal2009-04-16T14:11:39ZPeter BortasHilfe parse error on function invocation with array literalImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3024
Reported by Johan H Sundström, IDA <jhs@pike.ida.liu.se>
```
Pike v7.3 release 31 running Hilfe v3.3 (Incremental Pike Frontend)
> void nop(mixed m){};
> nop(({}));
...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3024
Reported by Johan H Sundström, IDA <jhs@pike.ida.liu.se>
```
Pike v7.3 release 31 running Hilfe v3.3 (Incremental Pike Frontend)
> void nop(mixed m){};
> nop(({}));
Compiler Error: 1:parse error
Compiler Error: 1:Missing ';'.
Compiler Error: 2:parse error
Compiler Error: 2:Missing ')'.
Compiler Error: 3:Missing ';'.
Compiler Error: 3:Unexpected end of file.
Compiler Error: 3:Missing '}'.
Compiler Error: 3:Unexpected end of file.
```Pike 7.4https://git.lysator.liu.se/pikelang/pike/-/issues/3023Hilfe says a defined variable is undefined.2009-04-16T14:11:39ZPeter BortasHilfe says a defined variable is undefined.Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3023
Reported by Mikael Brandström <mikael@brandstrom.org>
```
Pike v7.3 release 31 running Hilfe v3.3 (Incremental Pike Frontend)
> int n=0; foreach(({1,2}), int m){n+=m...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3023
Reported by Mikael Brandström <mikael@brandstrom.org>
```
Pike v7.3 release 31 running Hilfe v3.3 (Incremental Pike Frontend)
> int n=0; foreach(({1,2}), int m){n+=m;}
Ok.
> int n=0; foreach(({1,2,3}), int m){n+=m;}
Compiler Error: 1:'n' undefined.
>
```Pike 7.4https://git.lysator.liu.se/pikelang/pike/-/issues/3014Dumping test fail (Need to port the new encode_value() from Pike 7.2)2009-04-16T14:11:39ZPeter BortasDumping test fail (Need to port the new encode_value() from Pike 7.2)Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3014
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
```
testsuite: Test 570 (shift 0) (CRNL) failed.
1: mixed a() {
2: class Test
3: {
4: class Cod...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3014
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
```
testsuite: Test 570 (shift 0) (CRNL) failed.
1: mixed a() {
2: class Test
3: {
4: class Codec
5: {
6: mixed nameof (mixed what)
7: {
8: return ([])[0];
9: }
10: }
11:
12: int main()
13: {
14: object o = compile_string (#"
15: constant x = ({0});
16: int f() {return 17;}
17: int g() {return x[0]();}
18: ")();
19: o->x[0] = o->f;
20: function e=encode_value;
21: function d=decode_value;
22: o = d (e (o, Codec()), Codec());
23: return function_object (o->x[0]) == o;
24: }
25: };
26: return Test()->main();
27: ; }
28: mixed b() { return 1; }
Error: Failed to encode object.
testsuite: Test 570 (shift 0) (CRNL):22: main()
```Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/3013Dumping test fail2009-04-16T14:11:39ZPeter BortasDumping test failImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3013
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
```
testsuite: Test 569 (shift 2) failed.
1: mixed a() {
2: class Test
3: {
4: class Resolver (...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3013
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
```
testsuite: Test 569 (shift 2) failed.
1: mixed a() {
2: class Test
3: {
4: class Resolver (array c)
5: {
6: mixed resolv (string id)
7: {
8: if (id == "c") return c;
9: }
10: }
11:
12: class Codec
13: {
14: mixed fooof (string name) {return all_constants()[name];}
15: function objectof = fooof;
16: function functionof = fooof;
17: function programof = fooof;
18:
19: string nameof (mixed what)
20: {
21: if (string name = search (all_constants(), what)) return name;
22: return ([])[0];
23: }
24: }
25:
26: mixed main()
27: {
28: array c = ({"subres"});
29: object o = compile (
30: #"string res() {return `+(@c());}
31: string subres() {return \"foo\";}",
32: Resolver (c))();
33: for (int i = 0; i < sizeof (c); i++)
34: if (stringp (c[i])) c[i] = o[c[i] ];
35: #ifdef DEBUG
36: #define D ,1
37: #else
38: #define D
39: #endif
40: function e=encode_value;
41: function d=decode_value;
42: return d (e (o, Codec() D), Codec() D)->res();
43: }
44: };
45: return Test()->main();
46: ; }
47: mixed b() { return "foo"; }
Error: Failed to encode object.
testsuite: Test 569 (shift 2):42: main()
```Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/3005Line number error on Sparc2009-04-16T14:11:39ZPeter BortasLine number error on SparcImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3005
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
The line numbers are not working on the sparc platform.Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3005
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
The line numbers are not working on the sparc platform.Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/3004Line number error on IA322009-04-16T14:11:39ZPeter BortasLine number error on IA32Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3004
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
From the testsuite:
```
testsuite: Test 9971 (shift 2) Line numbering failed.
1: object(LR.parser) p=LR...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3004
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
From the testsuite:
```
testsuite: Test 9971 (shift 2) Line numbering failed.
1: object(LR.parser) p=LR.Grammar_parser.make_parser("foo : bar;foo :
foo bar;bar : \"a\";"); int pos; array(string) data="aaaaaaaaa"/""; string
scan() { if (pos < sizeof(data)) return(data[pos++]); else return ""; } int
a() { return(p->parse(scan) == "a"); }
2: int __cpp_line=__LINE__; int __rtl_line=[int]backtrace()[-1][1];
CPP lines: 2
RTL lines: 1
Actual lines: 2
```Pike 7.4https://git.lysator.liu.se/pikelang/pike/-/issues/2997Oracle LONG limitation bug.2009-04-16T14:11:39ZPeter BortasOracle LONG limitation bug.Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2997
Reported by @grubba
```
From: eric lindvall <eric@5stops.com>
To: "pike@roxen.com" <pike@roxen.com>
Date: Thu, 11 Apr 2002 08:50:43 +0200 (MEST)
Subject: oracle patc...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2997
Reported by @grubba
```
From: eric lindvall <eric@5stops.com>
To: "pike@roxen.com" <pike@roxen.com>
Date: Thu, 11 Apr 2002 08:50:43 +0200 (MEST)
Subject: oracle patch
```
the oracle module assumes that all strings should be converted to LONGs.
unfortunatly, you can't have more than one LONG in a given row, or in a
select.
this fixes the problems with having more than one bind variable that is a
string. it also manifested itself in spitting out:
Oracle:code=-1:ORA-01460: unimplemented or unreasonable conversion
requested
when using more than one bind variable or more than one escaped entry.
hope this helps.
e.
-----------
```
Index: src/modules/Oracle/oracle.c
===================================================================
RCS file: /cvs/Pike/7.2/src/modules/Oracle/oracle.c,v
retrieving revision 1.59
diff -u -u -r1.59 oracle.c
--- src/modules/Oracle/oracle.c 2002/02/07 16:55:19 1.59
+++ src/modules/Oracle/oracle.c 2002/04/11 06:32:10
@@ -1735,7 +1735,13 @@
case T_STRING:
addr = (ub1 *)value->u.string->str;
len = value->u.string->len;
- fty = SQLT_LNG;
+ if (len < 4000)
+ {
+ rlen = 4000;
+ fty = SQLT_CHR;
+ }
+ else
+ fty = SQLT_LNG;
break;
```
case T_FLOAT:Pike 7.0https://git.lysator.liu.se/pikelang/pike/-/issues/2995Calendar.parse doesn't parse 1999-03-28 23:00:00 through 23:59:592009-04-16T14:11:39ZPeter BortasCalendar.parse doesn't parse 1999-03-28 23:00:00 through 23:59:59Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2995
Reported by Johan H Sundström, IDA <jhs@pike.ida.liu.se>
```
Pike v7.3 release 16 running Hilfe v3.1 (Incremental Pike Frontend)
> Calendar.parse("%Y-%M-%D %h:%m:%s"...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2995
Reported by Johan H Sundström, IDA <jhs@pike.ida.liu.se>
```
Pike v7.3 release 16 running Hilfe v3.1 (Incremental Pike Frontend)
> Calendar.parse("%Y-%M-%D %h:%m:%s", "1999-03-28 22:59:59");
Result 1: Second(Sun 28 Mar 1999 22:59:59 MEST)
> Calendar.parse("%Y-%M-%D %h:%m:%s", "1999-03-28 23:00:00");
Result 2: 0
> Calendar.parse("%Y-%M-%D %h:%m:%s", "1999-03-28 23:59:59");
Result 3: 0
> Calendar.parse("%Y-%M-%D %h:%m:%s", "1999-03-29 00:00:00");
Result 4: Second(Mon 29 Mar 1999 0:00:00 MEST)
```
Calendar.dwim_time, by implication, doesn't either.Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/2987"Edit external visibility" wizard skews time2009-04-16T14:11:39ZPeter Bortas"Edit external visibility" wizard skews timeImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2987
Reported by Fredrik Noring, Roxen Internet Software <noring@roxen.com>
Using the "Edit external visibility" wizard to set a given time
does not work properly. Settin...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2987
Reported by Fredrik Noring, Roxen Internet Software <noring@roxen.com>
Using the "Edit external visibility" wizard to set a given time
does not work properly. Setting e.g. 15:15 gives 16:15, i.e. a
one hour skew. It may have something to do with daylight saving
time.Pike 7.2Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/2976Hilfe history bug2009-04-16T14:11:39ZPeter BortasHilfe history bugImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2976
Reported by Leif Stensson <leif@roxen.com>
Doing "set history 0" in Hilfe gives the following error message when
trying to evaluate the next expression:
```
Attempt...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2976
Reported by Leif Stensson <leif@roxen.com>
Doing "set history 0" in Hilfe gives the following error message when
trying to evaluate the next expression:
```
Attempt to index the empty array with 0.
installed/megalon/pike/7.3.18/lib/modules/ADT.pmod/History.pike:41:
HilfeHistory(0/10)->push(1)
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:1396:
HilfeEvaluator->evaluate("1",1)
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:1163:
HilfeEvaluator->parse_expression(Expression(({ /* 2 elements
*/
```
"1",
";"
```
})))
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:874:
HilfeEvaluator->add_buffer("1;")
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:829:
HilfeEvaluator->add_input_line("1;")
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:1496:
```
HilfeEvaluator->create()
Hilfe: StdinHilfe()
With "set history 1", a different but similar error occurs:
```
Attempt to index the empty array with 9.
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:724:
HilfeHistory(1/10)->`[](-1)
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:1303:
HilfeEvaluator->hilfe_compile("mixed ___HilfeWrapper() { return 0; ;
}",0)
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:1362:
HilfeEvaluator->evaluate("mixed ___HilfeWrapper() { return 0; ;
}",1)
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:1163:
HilfeEvaluator->parse_expression(Expression(({ /* 2 elements
*/
```
"0",
";"
```
})))
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:874:
HilfeEvaluator->add_buffer("0;")
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:829:
HilfeEvaluator->add_input_line("0;")
installed/megalon/pike/7.3.18/lib/modules/Tools.pmod/Hilfe.pmod:1496:
```
HilfeEvaluator->create()
Hilfe: StdinHilfe()Pike 7.4https://git.lysator.liu.se/pikelang/pike/-/issues/2941Back-referencing single-statement declarations don't work in Hilfe2009-04-16T14:11:39ZPeter BortasBack-referencing single-statement declarations don't work in HilfeImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2941
Reported by Johan H Sundström, IDA <jhs@pike.ida.liu.se>
```
Pike v7.3 release 18 running Hilfe v3.2 (Incremental Pike Frontend)
> int i=5, j=2*i;
Compiler Error: 1:...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2941
Reported by Johan H Sundström, IDA <jhs@pike.ida.liu.se>
```
Pike v7.3 release 18 running Hilfe v3.2 (Incremental Pike Frontend)
> int i=5, j=2*i;
Compiler Error: 1:'i' undefined.
>
```Pike 7.4https://git.lysator.liu.se/pikelang/pike/-/issues/2858String.Buffer appears to hang under some circumstances2009-04-16T14:11:39ZPeter BortasString.Buffer appears to hang under some circumstancesImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2858
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
It appears that `+= on a String.Buffer object sometimes hangs Pike.
Replacing all += operations with the ad...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2858
Reported by Martin Nilsson, IDA <nilsson@pike.ida.liu.se>
It appears that `+= on a String.Buffer object sometimes hangs Pike.
Replacing all += operations with the add method solves the problem. I have
only encountered this in complex code, so I have no minimized test case. A
huge testcase is to rewrite the render_xml method in Parser.XML.Tree to use
String.Buffer instead of string concatenation (about 8 lines need to be
changed) and build a refdoc manual with the new Parser.XML.Tree.Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/2846Hilfe v3 fails to access global variables from functions2009-04-16T14:11:39ZPeter BortasHilfe v3 fails to access global variables from functionsImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2846
Reported by Marcus Agehall <agehall@roxen.com>
```
In hilfe v2.0 the code below works:
> int i=0;
Result: 0
> void foo() { i++; };
> foo();
Result: 0
> i;
Result: 1
...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2846
Reported by Marcus Agehall <agehall@roxen.com>
```
In hilfe v2.0 the code below works:
> int i=0;
Result: 0
> void foo() { i++; };
> foo();
Result: 0
> i;
Result: 1
```
However, when the same code is run in hilfe v3, i is not incremented when
foo() is executed.Pike 7.4https://git.lysator.liu.se/pikelang/pike/-/issues/2829sprintf("%X") fails for bignums2009-04-16T14:11:39ZPeter Bortassprintf("%X") fails for bignumsImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2829
Reported by @grubba
From the Roxen chat:
```
19:34 Grendel guys, a quickie about sprintf in
Pike
19:35 Grendel Pike v7.2 release 298 running Hilfe v2.0 (Increme...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2829
Reported by @grubba
From the Roxen chat:
```
19:34 Grendel guys, a quickie about sprintf in
Pike
19:35 Grendel Pike v7.2 release 298 running Hilfe v2.0 (Incremental Pike
Frontend)
> int i =
0xFFFFFFFF;
Result:
4294967295
> sprintf("%X",
i);
Result:
"ffffffff"
> sprintf("%X",
0xFFFFFFFF);
Result:
"ffffffff"
> sprintf("%X",
0xFFFFFFF);
Result:
"FFFFFFF"
```
>
19:36 Grendel is this behavior
expected/desired?
19:37 Genesys you mean %X on an integer being lowercase? that looks
wrongPike 7.2Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/2820PATCH: Support for dynamic modules on MacOS X2009-04-16T14:11:39ZPeter BortasPATCH: Support for dynamic modules on MacOS XImported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2820
Reported by @grubba
```
From: Bill Welliver <hww3@riverweb.com>
To: "pike@roxen.com" <pike@roxen.com>
Date: Tue, 5 Mar 2002 18:22:25 -0500
Subject: Revised patch for...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2820
Reported by @grubba
```
From: Bill Welliver <hww3@riverweb.com>
To: "pike@roxen.com" <pike@roxen.com>
Date: Tue, 5 Mar 2002 18:22:25 -0500
Subject: Revised patch for Darwin/MacOSX
```
Here's a revised patch for pike 7.3.16 to get dynamic modules working on
MacOSX/Darwin. After considerable fiddling, it appears that it will be
necessary to use the flat namespace when compiling for Darwin (ask me
offline if you need specific examples and reasons). The attached patch
provides the necessary changes for configure.in.
That said, there are some other problems that I've identified (but don't
have patches for):
1. the configure script for the Java module always fails complaining
about not having a working ls. There is no relevant information in
config.log for me to be able to determine what the problem really is,
though I'm sure it's a simple fix.
2. If I install X11 and GTK (from fink if that's helpful), it's
necessary to use the -traditional-cpp flag to get the GTK module to
compile. I'm pretty sure the flag is set in the main configure script
but it doesn't seem to propagate.
Hope this helps!
Bill
--- configure.in.orig Thu Feb 28 20:23:12 2002
+++ configure.in Tue Mar 5 18:08:03 2002
@@ -1318,6 +1318,7 @@
# Foundation framework needed by JavaVM.framework. The OS X 10.1
linker
# no longer includes indirect dependencies so we need to add them
here.
AC_SYS_COMPILER_FLAG(-framework Foundation,
framework_Foundation, LDFLAGS)
+ AC_SYS_COMPILER_FLAG(-framework System, framework_System, LDFLAGS)
```
# -flat_namespace only needed for linking with libMallocDebug
# AC_SYS_COMPILER_FLAG(-flat_namespace, flat_namespace, LDFLAGS)
@@ -5435,7 +5436,7 @@
fi
;;
Darwin*)
- LDSHARED="ld -bundle -bind_at_load -undefined suppress -lbundle1.o"
+ LDSHARED="ld -bundle -bind_at_load -flat_namespace -undefined
suppress -lbundle1.o"
;;
IRIX*)
if test "$GCC" = yes ; then
```Pike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbströmhttps://git.lysator.liu.se/pikelang/pike/-/issues/2817getpwnam() does not honour nisplus/nscd for sp_pwdp (passwords.c)2009-04-16T14:11:39ZPeter Bortasgetpwnam() does not honour nisplus/nscd for sp_pwdp (passwords.c)Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2817
Reported by Wilhelm Köhler, Technical University Berlin <wk@cs.tu-berlin.de>
Henrik,
with Solaris 8, passwd map in nisplus and nscd enabled all authentication
via t...Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2817
Reported by Wilhelm Köhler, Technical University Berlin <wk@cs.tu-berlin.de>
Henrik,
with Solaris 8, passwd map in nisplus and nscd enabled all authentication
via the System user database module (.htaccess and <auth-required>) fails
for Pike v7.2 release 259, Roxen WebServer 2.2.252 running as root.
Reproducable with hilfe and stopping nscd helps:
```
(22)root@pompa> /home/adm/roxen/server-2.2.252/pike/bin/pike
Pike v7.2 release 259 running Hilfe v2.0 (Incremental Pike Frontend)
> getpwnam("willi2");
Result: ({ /* 7 elements */
"willi2",
"*NP*",
21065,
13,
"Wilhelm Köhler",
"/home/w/willi2",
"/usr/local/bin/bash"
})
>
[1]+ Stopped /home/adm/roxen/server-2.2.252/pike/bin/pike
(23)root@pompa> /etc/init.d/nscd stop
(24)root@pompa> fg
/home/adm/roxen/server-2.2.252/pike/bin/pike
getpwnam("willi2");
getpwnam("willi2");
Result: ({ /* 7 elements */
"willi2",
"pPTbgDt5Ebnx6",
21065,
13,
"Wilhelm Köhler",
"/home/w/willi2",
"/usr/local/bin/bash"
})
Terminal closed.
```
Probably in passwords.c (line 126) "*NP*" should also be checked.
Cheers,
WilliPike 7.4Henrik (Grubba) GrubbströmHenrik (Grubba) Grubbström