[GitHub] [logging-log4j1] lsimons closed pull request #17: Cleaned-up log4j 1.2 that disables scary networking (base=1.2.17, fully binary compatible)

2022-01-01 Thread GitBox


lsimons closed pull request #17:
URL: https://github.com/apache/logging-log4j1/pull/17


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[GitHub] [logging-log4j1] lsimons commented on pull request #17: Cleaned-up log4j 1.2 that disables scary networking (base=1.2.17, fully binary compatible)

2022-01-01 Thread GitBox


lsimons commented on pull request #17:
URL: https://github.com/apache/logging-log4j1/pull/17#issuecomment-1003669830


   Superceded by #18 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




Re: [DISCUSS][VOTE] Future of Log4j 1.x

2022-01-01 Thread Leo Simons
Hey,

Happy new year everyone!

On Wed, Dec 29, 2021 at 8:54 PM Ralph Goers 
wrote:

> Leo seemed interested at first but didn’t weigh in on the discussion
> thread.


I'm here. I did mention in a couple mails I'd be away. Real life happens :).

I think I made clear what I am interested in through several emails and in
code.
I've also pointed out what I wouldn't do (like step up as a maintainer on a
permanent basis, or incubate something).

I think all the relevant arguments on how to proceed with 1.x have been
made (a few times...).
I don't have anything new to add.
I'll accept the vote outcome.


Cheers!


Leo


[GitHub] [logging-log4j1] lsimons commented on pull request #17: Cleaned-up log4j 1.2 that disables scary networking (base=1.2.17, fully binary compatible)

2022-01-01 Thread GitBox


lsimons commented on pull request #17:
URL: https://github.com/apache/logging-log4j1/pull/17#issuecomment-1003669519


   The rationale is not found here because most discussion about what should 
happen with apache projects happens on mailing lists. In this case, the 
discussion can be followed (and joined!) on dev@logging.apache.org, archives at 
https://lists.apache.org/list.html?dev@logging.apache.org , more info at 
https://logging.apache.org/log4j/2.x/mail-lists.html .


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




Re: [VOTE] Future of Log4j 1.x

2022-01-01 Thread Matt Sicker
I’m +1 for option one. For projects that ignored published CVEs for multiple 
years and then ignored the EOL announcement, I don’t see any reason they’d 
bother updating their ancient copies. Given the release difficulty in making 
something that’s compatible with previous releases makes this even more of a 
waste of time.

—
Matt Sicker

> On Jan 1, 2022, at 11:20, Jochen Wiedmann  wrote:
> 
> On Sat, Jan 1, 2022 at 4:40 PM Xeno Amess  wrote:
> 
>>> People should migrate to log4j2.
>> good thinking, but what if they migrate to logback...
> 
> No, it's not (good thinking, that is).
> 
> Log4j1 is a part of basically *every* Java based server software, that
> I am aware of. People don't want to touch those. They need a drop-in
> replacement, not a successor. Over the last week, I was *really
> puzzled* about all the stuff that claims to be affected by the
> problems in log4j2. And that's the lesser used of the two...
> 
> Jochen
> 
> 
> 
> Philosophy is useless, theology is worse. (Industrial Desease, Dire Straits)


Re: [log4cxx] Short filename options

2022-01-01 Thread Stephen Webb
This is already provided by
```
#define LOG4CXX_LOCATION ::log4cxx::spi::LocationInfo()
#include 
```

On Sun, Jan 2, 2022 at 12:38 PM Robert Middleton 
wrote:

> The full path is already in the compiled code anyway, this would
> simply add the ability to get the filename from the full path(so
> another member to the LocationInfo class).  I can see certain
> circumstances where it is useful to have the full path, for example
> when you have two files named the same(please don't do this).
>
> That does bring up a good point though, is that if you don't want
> location info compiled in, we should have a preprocessor macro that
> will compile out all of the location info data.  We can already
> compile out log messages of certain levels, so hiding the location is
> just a natural extension of that.
>
> -Robert Middleton
>
> On Sat, Jan 1, 2022 at 7:50 PM Stephen Webb  wrote:
> >
> > I prefer option 2 if it is possible.
> >
> > I do not think it is useful to have the full path name (of the build
> > directory) in shipped binaries.
> >
> > On Sun, Jan 2, 2022 at 7:11 AM Robert Middleton 
> > wrote:
> >
> > > PR #75 adds a new option for displaying the short filename of the log
> > > location, which is probably a good idea to have, as in my experience,
> > > the whole path of the file is not that useful, especially when the
> > > binary is from a build server where the path is something like
> > > /var/lib/jenkins/project-name/src/main/directory/foo.cpp.
> > >
> > > The current PR does this with some string manipulation at runtime, and
> > > is different from the const char* that is currently used, so it
> > > doesn't fit that well with the rest of the class.  Since C++11 we can
> > > now do constexpr functions, so we should be able to do this at compile
> > > time(assuming you have optimizations turned on of course).
> > >
> > > We can do this one of several ways:
> > > 1. Take the PR as is(use strings and calculate at runtime)
> > > 2. Create a constexpr function that we control to calculate the
> > > filename at compile time as either an offset into the filename or a
> > > separate const char*.  The advantage to this is that it doesn't
> > > require any other libraries for pre-C++17 compilers.
> > > 3. Use std::string_view(for C++17) or boost::string_view(pre-c++17).
> > > The following would work for this solution:
> > > std::string_view str{"/foo/bar/what.cpp"};
> > > const int location = str.find_last_of( '/' ) + 1;
> > > printf( "fullPath: %s\n", str.data() );
> > > printf( "fileName: %s\n", [location] );
> > >
> > > Does anybody have a preference or a better way to do it?  I'm inclined
> > > to go with (3), since that does provide a good fallback for compilers
> > > that don't support C++17, and only requires boost for older compilers.
> > >
> > > -Robert Middleton
> > >
>


Re: [log4cxx] Short filename options

2022-01-01 Thread Robert Middleton
The full path is already in the compiled code anyway, this would
simply add the ability to get the filename from the full path(so
another member to the LocationInfo class).  I can see certain
circumstances where it is useful to have the full path, for example
when you have two files named the same(please don't do this).

That does bring up a good point though, is that if you don't want
location info compiled in, we should have a preprocessor macro that
will compile out all of the location info data.  We can already
compile out log messages of certain levels, so hiding the location is
just a natural extension of that.

-Robert Middleton

On Sat, Jan 1, 2022 at 7:50 PM Stephen Webb  wrote:
>
> I prefer option 2 if it is possible.
>
> I do not think it is useful to have the full path name (of the build
> directory) in shipped binaries.
>
> On Sun, Jan 2, 2022 at 7:11 AM Robert Middleton 
> wrote:
>
> > PR #75 adds a new option for displaying the short filename of the log
> > location, which is probably a good idea to have, as in my experience,
> > the whole path of the file is not that useful, especially when the
> > binary is from a build server where the path is something like
> > /var/lib/jenkins/project-name/src/main/directory/foo.cpp.
> >
> > The current PR does this with some string manipulation at runtime, and
> > is different from the const char* that is currently used, so it
> > doesn't fit that well with the rest of the class.  Since C++11 we can
> > now do constexpr functions, so we should be able to do this at compile
> > time(assuming you have optimizations turned on of course).
> >
> > We can do this one of several ways:
> > 1. Take the PR as is(use strings and calculate at runtime)
> > 2. Create a constexpr function that we control to calculate the
> > filename at compile time as either an offset into the filename or a
> > separate const char*.  The advantage to this is that it doesn't
> > require any other libraries for pre-C++17 compilers.
> > 3. Use std::string_view(for C++17) or boost::string_view(pre-c++17).
> > The following would work for this solution:
> > std::string_view str{"/foo/bar/what.cpp"};
> > const int location = str.find_last_of( '/' ) + 1;
> > printf( "fullPath: %s\n", str.data() );
> > printf( "fileName: %s\n", [location] );
> >
> > Does anybody have a preference or a better way to do it?  I'm inclined
> > to go with (3), since that does provide a good fallback for compilers
> > that don't support C++17, and only requires boost for older compilers.
> >
> > -Robert Middleton
> >


Re: [log4cxx] Short filename options

2022-01-01 Thread Stephen Webb
I prefer option 2 if it is possible.

I do not think it is useful to have the full path name (of the build
directory) in shipped binaries.

On Sun, Jan 2, 2022 at 7:11 AM Robert Middleton 
wrote:

> PR #75 adds a new option for displaying the short filename of the log
> location, which is probably a good idea to have, as in my experience,
> the whole path of the file is not that useful, especially when the
> binary is from a build server where the path is something like
> /var/lib/jenkins/project-name/src/main/directory/foo.cpp.
>
> The current PR does this with some string manipulation at runtime, and
> is different from the const char* that is currently used, so it
> doesn't fit that well with the rest of the class.  Since C++11 we can
> now do constexpr functions, so we should be able to do this at compile
> time(assuming you have optimizations turned on of course).
>
> We can do this one of several ways:
> 1. Take the PR as is(use strings and calculate at runtime)
> 2. Create a constexpr function that we control to calculate the
> filename at compile time as either an offset into the filename or a
> separate const char*.  The advantage to this is that it doesn't
> require any other libraries for pre-C++17 compilers.
> 3. Use std::string_view(for C++17) or boost::string_view(pre-c++17).
> The following would work for this solution:
> std::string_view str{"/foo/bar/what.cpp"};
> const int location = str.find_last_of( '/' ) + 1;
> printf( "fullPath: %s\n", str.data() );
> printf( "fileName: %s\n", [location] );
>
> Does anybody have a preference or a better way to do it?  I'm inclined
> to go with (3), since that does provide a good fallback for compilers
> that don't support C++17, and only requires boost for older compilers.
>
> -Robert Middleton
>


Re: [VOTE] Future of Log4j 1.x

2022-01-01 Thread Christian Grobmeier


On Sat, Jan 1, 2022, at 18:19, Jochen Wiedmann wrote:
> On Sat, Jan 1, 2022 at 4:40 PM Xeno Amess  wrote:
>
>> >  People should migrate to log4j2.
>> good thinking, but what if they migrate to logback...
>
> No, it's not (good thinking, that is).
>
> Log4j1 is a part of basically *every* Java based server software, that
> I am aware of. People don't want to touch those. They need a drop-in
> replacement, not a successor. Over the last week, I was *really
> puzzled* about all the stuff that claims to be affected by the
> problems in log4j2. And that's the lesser used of the two...

For what exactly do we need that now? The security issues in log4j1 are 10 
years old and you just don't have to use JMSAppender and you are good too go.

Cheers,
Christian

> Jochen
>
>
>
> Philosophy is useless, theology is worse. (Industrial Desease, Dire Straits)


[log4cxx] Short filename options

2022-01-01 Thread Robert Middleton
PR #75 adds a new option for displaying the short filename of the log
location, which is probably a good idea to have, as in my experience,
the whole path of the file is not that useful, especially when the
binary is from a build server where the path is something like
/var/lib/jenkins/project-name/src/main/directory/foo.cpp.

The current PR does this with some string manipulation at runtime, and
is different from the const char* that is currently used, so it
doesn't fit that well with the rest of the class.  Since C++11 we can
now do constexpr functions, so we should be able to do this at compile
time(assuming you have optimizations turned on of course).

We can do this one of several ways:
1. Take the PR as is(use strings and calculate at runtime)
2. Create a constexpr function that we control to calculate the
filename at compile time as either an offset into the filename or a
separate const char*.  The advantage to this is that it doesn't
require any other libraries for pre-C++17 compilers.
3. Use std::string_view(for C++17) or boost::string_view(pre-c++17).
The following would work for this solution:
std::string_view str{"/foo/bar/what.cpp"};
const int location = str.find_last_of( '/' ) + 1;
printf( "fullPath: %s\n", str.data() );
printf( "fileName: %s\n", [location] );

Does anybody have a preference or a better way to do it?  I'm inclined
to go with (3), since that does provide a good fallback for compilers
that don't support C++17, and only requires boost for older compilers.

-Robert Middleton


[GitHub] [logging-log4j1] rgoers commented on pull request #18: Refine build scripts

2022-01-01 Thread GitBox


rgoers commented on pull request #18:
URL: https://github.com/apache/logging-log4j1/pull/18#issuecomment-1003592080


   @larrywest There has not been a decision to reverse this. There has been a 
request to reverse it. We just realized that when we made the subversion repo 
read-only that there was mirror at GitHub that people were making PRs to. That 
GitHub repo was not under the control of the Apache Logging project so we moved 
it here. Discussions have been happening on the dev list and there is currently 
a vote in progress between two options. The Logging Services PMC hasn't 
committed to doing anything as of yet.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[GitHub] [logging-log4j1] vlsi commented on pull request #18: Refine build scripts

2022-01-01 Thread GitBox


vlsi commented on pull request #18:
URL: https://github.com/apache/logging-log4j1/pull/18#issuecomment-1003591827


   @larrywest , log4j 1.2 is still used a lot, and there's no drop-in 
replacement.
   That is why fixing 1.2 makes perfect sense, so the users can just upgrade 
log4j 1.x to a newer version and avoid spending time on migrating to another 
libraries.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[GitHub] [logging-log4j1] larrywest commented on pull request #18: Refine build scripts

2022-01-01 Thread GitBox


larrywest commented on pull request #18:
URL: https://github.com/apache/logging-log4j1/pull/18#issuecomment-1003591272


   @jvz Sorry if this is stated somewhere I missed, but [what's the reason for 
reversing the end-of-life decision for log4j 
1.x](https://github.com/apache/logging-log4j1/pull/17#issuecomment-1003588369)?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[GitHub] [logging-log4j1] larrywest edited a comment on pull request #17: Cleaned-up log4j 1.2 that disables scary networking (base=1.2.17, fully binary compatible)

2022-01-01 Thread GitBox


larrywest edited a comment on pull request #17:
URL: https://github.com/apache/logging-log4j1/pull/17#issuecomment-1003588369


   _My $0.02:_
   
   Log4j 1.x reached end-of-life long ago - last updated a decade ago.
   
   > On August 5, 2015 the Logging Services Project Management Committee 
announced that Log4j 1.x had reached end of life
   
   From 2019 in re CVE-2019-17571:
   
   > ... This can provide an attack vector that can be expoited. Since Log4j 1 
is no longer maintained this issue will not be fixed. Users are urged to 
upgrade to Log4j 2.
   
   * https://logging.apache.org/log4j/1.2/
   * 
https://blogs.apache.org/foundation/entry/apache_logging_services_project_announces
   * https://blogs.apache.org/logging/entry/moving_on_to_log4j_2
   
   There's no rationale given here for bringing log4j 1.x back from the dead, 
and anyone who cares about security or project hygiene has long since moved on 
to log4j2 or logback.
   
   Assuming there are reasons, why not fork this and call it something else?
   
   ---
   
   _Update:_
   
   This applies to PR #18, too.   I'm only a user — once upon a time of log4j 
1.x — not a contributor, but I'm puzzled why there's not a clear statement on 
either PR justifying reversing the above-cited decisions.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




Re: [VOTE] Future of Log4j 1.x

2022-01-01 Thread Jochen Wiedmann
On Sat, Jan 1, 2022 at 4:40 PM Xeno Amess  wrote:

> >  People should migrate to log4j2.
> good thinking, but what if they migrate to logback...

No, it's not (good thinking, that is).

Log4j1 is a part of basically *every* Java based server software, that
I am aware of. People don't want to touch those. They need a drop-in
replacement, not a successor. Over the last week, I was *really
puzzled* about all the stuff that claims to be affected by the
problems in log4j2. And that's the lesser used of the two...

Jochen



Philosophy is useless, theology is worse. (Industrial Desease, Dire Straits)


[GitHub] [logging-log4j1] larrywest commented on pull request #17: Cleaned-up log4j 1.2 that disables scary networking (base=1.2.17, fully binary compatible)

2022-01-01 Thread GitBox


larrywest commented on pull request #17:
URL: https://github.com/apache/logging-log4j1/pull/17#issuecomment-1003588369


   _My $0.02:_
   
   Log4j 1.x reached end-of-life long ago - last updated a decade ago.
   
   > On August 5, 2015 the Logging Services Project Management Committee 
announced that Log4j 1.x had reached end of life
   
   From 2019 in re CVE-2019-17571:
   
   > ... This can provide an attack vector that can be expoited. Since Log4j 1 
is no longer maintained this issue will not be fixed. Users are urged to 
upgrade to Log4j 2.
   
   * https://logging.apache.org/log4j/1.2/
   * 
https://blogs.apache.org/foundation/entry/apache_logging_services_project_announces
   
   There's no rationale given here for bringing log4j 1.x back from the dead, 
and anyone who cares about security or project hygiene has long since moved on 
to log4j2 or logback.
   
   Assuming there are reasons, why not fork this and call it something else?
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[DISCUSS][VOTE] Future of Log4j 1.x

2022-01-01 Thread Ralph Goers
Discussion shouldn’t happen on the main vote thread please.

Users are certainly free to use Logback. If they are OK with losing log events 
during reconfiguration and using a framework that is maintained by one person 
and are OK when he disappears for a year and a half that is their choice. 
Please 
remember, this is not a commercial venture. No Java logging framework is. 

Switching to Logback also requires work. It doesn’t natively support Log4j 1 
configuration files. Log4j 2 does support Log4j 1 configuration using the Log4j 
1.2 bridge, which we are constantly improving.

But the bottom line is that I would prefer that users migrate to Logback over 
sticking with Log4j 1. Although it has many of Log4j 1’s flaws it does not 
suffer 
from the multi-threading issues that Log4j 1 has. Of course, I think Log4j 2 is 
a 
better choice, but I am obviously biased.

Happy New Year!

Ralph



> On Jan 1, 2022, at 8:40 AM, Xeno Amess  wrote:
> 
> +0
> 
>> People should migrate to log4j2.
> good thinking, but what if they migrate to logback...
> IMO logback is a thing more likely log4j1 than log4j2, just user side.
> 
> 
> Ralph Goers  于2022年1月1日周六 23:18写道:
> 
>> +1 to Option 1
>> 
>> Ralph
>> 
>>> On Dec 29, 2021, at 12:33 PM, Christian Grobmeier 
>> wrote:
>>> 
>>> Hello,
>>> 
>>> as discussed in another thread, this is a vote about the future of log4j
>> 1. This vote stays open for the usual 72h.
>>> Options are explained below.
>>> 
>>> You can vote for:
>>> 
>>> [ ] +1, Option 1
>>> [ ] +1, Option 2
>>> [ ] +/- 0, abstain
>>> [ ] -1 object against those options
>>> 
>>> Option 1: Create a README.md that publishes the projects EOL status and
>> do nothing else.
>>> Option 2: Create a README which says the project is EOL but allow the
>> following work for 1.2.18 AND create a full release:
>>>   a.  Make the build work with a modern version of Maven.
>>>   b.  Fix the Java version bug.
>>>   c.  Fix CVE-2021-4104 (expanded to address all JNDI components)
>>>   d.  Fix CVE-2019-17571
>>> 
>>> Regards,
>>> Christian
>>> --
>>> The Apache Software Foundation
>>> V.P., Data Privacy
>>> 
>> 
>> 



Re: [VOTE] Future of Log4j 1.x

2022-01-01 Thread Xeno Amess
+0

>  People should migrate to log4j2.
good thinking, but what if they migrate to logback...
IMO logback is a thing more likely log4j1 than log4j2, just user side.


Ralph Goers  于2022年1月1日周六 23:18写道:

> +1 to Option 1
>
> Ralph
>
> > On Dec 29, 2021, at 12:33 PM, Christian Grobmeier 
> wrote:
> >
> > Hello,
> >
> > as discussed in another thread, this is a vote about the future of log4j
> 1. This vote stays open for the usual 72h.
> > Options are explained below.
> >
> > You can vote for:
> >
> > [ ] +1, Option 1
> > [ ] +1, Option 2
> > [ ] +/- 0, abstain
> > [ ] -1 object against those options
> >
> > Option 1: Create a README.md that publishes the projects EOL status and
> do nothing else.
> > Option 2: Create a README which says the project is EOL but allow the
> following work for 1.2.18 AND create a full release:
> >a.  Make the build work with a modern version of Maven.
> >b.  Fix the Java version bug.
> >c.  Fix CVE-2021-4104 (expanded to address all JNDI components)
> >d.  Fix CVE-2019-17571
> >
> > Regards,
> > Christian
> > --
> > The Apache Software Foundation
> > V.P., Data Privacy
> >
>
>


Re: [DISCUSS][VOTE] Future of Log4j 1.x

2022-01-01 Thread Ralph Goers
These show up as two distinct threads In Mail on my MacBook Pro. 

FWIW, the PMC is aware of at least two distributions that already seem to 
fulfill the need of providing patched versions of Log4 1:

1. https://github.com/albfernandez/log4j/
2. https://search.maven.org/artifact/io.confluent/confluent-log4j (The source 
appears to be in a private repository).

Of course, both of these use different maven coordinates than Apache Log4j so 
users will have to ensure they exclude the Apache Log4j dependencies.

Ralph





> On Dec 30, 2021, at 5:23 AM, Vladimir Sitnikov  
> wrote:
> 
> Christian>vote in this thread, which is, btw not meant for discussion but
> for voting.
> 
> We are on a [DISCUSS] thread (check the subject).
> 
> Ralph "created" [DISCUSS] thread by hitting "reply" and changing the
> subject.
> "reply" keeps message-id, so it might look like a single thread.
> 
> See both "[DISCUSS][VOTE] Future of Log4j 1.x" and "[VOTE] Future of Log4j
> 1.x"
> at https://lists.apache.org/list.html?dev@logging.apache.org
> 
> Vladimir



Re: [VOTE] Future of Log4j 1.x

2022-01-01 Thread Ralph Goers
+1 to Option 1

Ralph

> On Dec 29, 2021, at 12:33 PM, Christian Grobmeier  
> wrote:
> 
> Hello, 
> 
> as discussed in another thread, this is a vote about the future of log4j 1. 
> This vote stays open for the usual 72h.
> Options are explained below.
> 
> You can vote for:
> 
> [ ] +1, Option 1
> [ ] +1, Option 2
> [ ] +/- 0, abstain
> [ ] -1 object against those options
> 
> Option 1: Create a README.md that publishes the projects EOL status and do 
> nothing else.
> Option 2: Create a README which says the project is EOL but allow the 
> following work for 1.2.18 AND create a full release:
>a.  Make the build work with a modern version of Maven.
>b.  Fix the Java version bug.
>c.  Fix CVE-2021-4104 (expanded to address all JNDI components)
>d.  Fix CVE-2019-17571
> 
> Regards,
> Christian
> --
> The Apache Software Foundation
> V.P., Data Privacy
>