June 26, 2006
This article was contributed by Glyn Moody
For the first ten years of its life, free software was largely a hacker's tool. All the early programs Emacs, GCC, Perl, Linux were written by coders for coders (usually themselves). It was the rapid uptake of the Internet by business in the mid-1990s that led to free software being used by companies, not just their employees.
The unplanned nature of this move online meant that computer departments were often asked to create a Web presence without being allocated extra funds. Free software was the obvious solution. The ready availability of GNU/Linux and Apache, whose first official release had appeared in December 1995, meant both were soon found in many companies, but generally unofficially. Software engineers knew it was easier simply to install the code than to go through formal approval processes that were bound to be skeptical of this new kind of software. The same was true for Samba, which allowed IT departments to add low-cost file and print servers to Windows networks.
At this stage, then, free software was on the periphery of companies, providing non-critical functions, and often invisibly as far as management was concerned. Gradually, though, word got out about the reliability and attractive price-performance characteristics of free software in general, and GNU/Linux in particular.
Similarly, software suppliers were discovering that their engineers were not only using free software but sometimes had even ported major proprietary software packages to GNU/Linux on their own initiative as happened with Software AG's Adabas D database, which shipped in 1996 as part of the Caldera Solutions CD. This fact, together with the growing use of GNU/Linux within companies, prompted the release in 1998 of official ports of the main enterprise-level databases: those from Oracle and Informix in July, and IBM's in December. It was a significant moment in the rise of open source in companies: free software was now countenanced officially, and started to play a mission-critical role.
At the same time, free software began to provide more complex business solutions through the deployment of what came to be termed the LAMP stack: GNU/Linux, Apache, MySQL and Perl/PHP/Python - the term LAMP was coined in 1998 by Michael Kunze in the German c't magazine. The stack represented a more sophisticated version of the approach based around the earlier Common Gateway Interface, which was used to interface Web servers with external applications like databases.
MySQL had first appeared in 1995. As well as representing an important breakthrough for open source application software in the enterprise, it also brought with it a new business model. In the beginning, the copyright for open source code had either been assigned to the Free Software Foundation to allow more effective enforcement of the GNU GPL, or remained with the various individual coders who had contributed. In the case of the MySQL code, though, it is the software house MySQL AB, which was created around the software, that owns all the copyrights.
Because of this, MySQL AB is able to employ a dual-licensing policy, offering its database under the GNU GPL or a commercial license. Some have seen this development as a threat to the core ethos of the open source world, because it raises the specter of a new, more subtle kind of vendor lock-in. Although the most popular, MySQL is by no means the only free database program: others include Firebird, Ingres and PostgreSQL.
The early years of the 21st century were ones of steady gains for free software within the enterprise. In the wake of the dotcom crash, which saw first-generation open source companies like Linuxcare, TurboLinux and VA Linux scaling back their operations dramatically, there were relatively few venture capitalists or IT start-ups that were willing to take a chance on new areas of free software. But corporate use of GNU/Linux in particular flourished, as the free operating system was increasingly used to save money by allowing companies to move from expensive proprietary hardware running Unix to commodity systems based on Intel processors.
One open source company that did appear during this time was Gluecode. It offered a commercial version of Apache Geronimo, the J2EE server project of the Apache Foundation. This was an important development, because it moved open source closer to the heart of the enterprise. Gluecode received a validation of sorts in 2005, when IBM bought the company, and added the open source product to its WebSphere Application Server line as a Community Edition.
IBM presumably preferred to cannibalize its own sales rather than see another increasingly-popular open source middleware company, JBoss, do the same. The JBoss project began in 1999, and, like MySQL, introduced a novel business approach to working with open source. It effectively commissions code for free software projects by hiring their top coders, thereby adding an element of commercial direction to the open source development process that was hitherto lacking. Also like MySQL, JBoss the company generally retains the copyright in the JBoss code. The JBoss way received its own vote of confidence when the company was acquired in April 2006 for $350 million by Red Hat, after being courted by Oracle, which has been on something of an open source spending spree.
The acquisition of Gluecode and JBoss, and Oracle's interest in the latter, firmly establishes middleware as the new hotspot for enterprise open source. Alongside IBM's WebSphere Application Server Community Edition and JBoss, there are several other free programs, including Enhydra, JOnAS and WSO2 Tungsten. Together, they represent a key piece in the creation of an open source enterprise stack, with GNU/Linux as the foundation.
It is here, rather than on the desktop, that free software's next big gains are likely to take place, and a subsequent feature will explore the surprising richness of the upper layers of the emerging open source enterprise stack, in areas such as systems management, customer relationship management, business intelligence, enterprise content management, enterprise resource planning and communications.
Glyn Moody writes about open source at opendotdotdot.
Comments (31 posted)
Jim Gettys has a long history at the interesting edge of computing
development; his past projects include MIT's Project Athena and the X
Window System. Currently, Jim is working on the
One Laptop Per Child project, which seeks to
distribute low-cost, Linux-based systems by the millions to children in the
developing world.
Jim was kind enough to take what must have been a considerable amount of
time to answer our questions on this project. What follows is the first
part of the interview.
LWN: Could you briefly describe your role with the OLPC project?
Vice President of Software: in short, I worry about systems software
from one end of the project to the other and relations with the free and
open source software community.
The educational software and content are the province of others:
Nicholas Negroponte (the OLPC chairman), Walter Bender, Seymour Papert, Alan Kay, and
others, who have decades of experience in education of children with
computers, often in the developing world.
I also don't worry about how the bits get from machine to machine:
Michail Bletsas is our Chief Connectivity Officer.
Mary Lou Jepsen is our CTO, and responsible for our novel display
technology, and Mark Foster is V.P. of Engineering and chief hardware
architect.
Quanta Computers, founded by Barry Lam, who make almost 1/3 of the
laptops of the world, are building the OLPC machine.
It appears that few people appreciate the extent to which this project is
pushing the leading edge of free software development.
Our hardware is novel to meet the needs of children in the developing
world; much of the software we need to build in the short term are
driven by this novelty. We expect many of our innovations will appear in
conventional laptops over the coming years. In this case, Linux will be
leading rather than following the industry.
What are the features one would want for school-aged children, grades K-12?
A large fraction of such children are in parts of the developing
world where electricity is not available at home, or often even at
school, so for many children, a computer with low power consumption,
potentially human-powered, is a necessity, not a convenience.
Teaching may not even be inside, and certainly when children are at
home, they often will not be inside where conventional LCD screens are
usable. Children usually walk to and from school every day; weather is
unpredictable, rain, dirt and dust are commonplace. And cost is a major
consideration, if we are to bring computers and their great power to
help children learn, to children everywhere.
Much more about the hardware can be found in our wiki.
Consider the power
management issues, application slimming, system (non-)management
improvements, mesh networking, application checkpointing, pervasive IPv6,
localization problems, etc. Every one of these goals should benefit users
who will never see an OLPC system. How many of these goals do you think
you will be able to achieve by launch time?
Some of these items are all-or-nothing: others are suitable to
incremental progress. Let's take them one at a time.
Power management: We are doing at least two, if not three, true
innovations in this area:
- The Marvell wireless chip, which has an ARM 9 and 92K of RAM, can
forward packets in the mesh network while the processor is suspended to
RAM. This capability has been demonstrated in the lab, and Michail
Bletsas is confident of the outcome; in fact, it was an actual
demonstration that convinced us to use Marvell. Other wireless vendors
lack this capability. Our current estimate is that in this mode, the
wireless chip can be forwarding packets and the system consuming less
than a half a watt. We want there to be as little incentive to defeat
wireless as possible, so this is a key innovation: if children aren't
confident there will be power when they need it, they might work to
defeat the mesh.
- The display can be on while the processor is suspended, saving
power. In some modes, we expect to be suspending the CPU whenever it is
idle, even for times as low as a second or two. Since our display is
also novel and consumes much less power than conventional LCD's, even
the Geode's low power consumption would have otherwise dominated total
energy use.
- Look around you the next time you sit in a conference room. How
many of you are actively using your machine at any given instant? How
much of the time are you just reading the screen? In many modes of use,
once the screen power consumption has been solved (as it is in our
display), the remaining major power consumption is the processor, power
supply and motherboard components. By making suspend/resume
unnoticeable, we can save most of the remaining power used in the
system.
Mark Foster described his novel extremely fast suspend/resume software
technique at the Linux Power Management Summit this spring. Whether we
will need to implement it on our hardware to reach our goals of < 200ms
suspend/resume cycles awaits some laboratory tests (an iPAQ can already
suspend and resume in a subsecond period), but I expect we may need to
implement this technique. Any performance work *must* be preceded by
measurement to be useful: spending time optimizing the wrong code is a
waste. Of course, the faster suspend/resume can be made to work, the
more aggressive we can about suspending and saving power. This is an
example of an area where incremental improvement (once basic
capabilities) is possible.
We are also planning to dynamically change the refresh rate of the
screen depending on screen activity; as I've seen this capability in
graphics chips for cell phones, I won't claim this as full innovative,
though it will be new for the X Window System or window systems on
laptops.
It is hard to predict how long similar hardware capabilities will take
to reach conventional hardware; but by showing it is possible, we know
it will happen and the software support required be useful to everyone.
There are also a number of places where changes in Linux and the desktop
environment can help. For example, the tickless patches currently being
worked on obviate the need for the CPU to wake up 100 times a second;
the more of the time a processor is fully idle, the more power saved.
Another example are places where the desktop environments are polling
periodically to find out changes in the system: notification systems are
much more efficient, and allow the system to be idle more of the time.
Out of memory behavior needs serious work: the current OOM killer's
policies are by current necessity very poor. Nokia has been
experimenting with more useful policies, exploiting information at the
user environment level, that can improve this behavior by informing the
kernel which processes are the most vital and which can be shot.
Application slimming:
There seems to be a common fallacy among programmers that using memory
is good: on current hardware it is often much faster to recompute values than to
have to reference memory to get a precomputed value. A full cache miss
can be hundreds of cycles, and hundreds of times the power consumption
of an instruction that hits in the first level cache. Making things
smaller almost always makes them faster (and lower power). Similarly, it
can be much faster to redraw an area of the screen than to copy a saved
image from RAM to a screen buffer. Many programmer's presumptions are
now completely incorrect and we need to reeducate ourselves.
Sometimes we may just choose alternative applications. Of course, this
may not be what some application writers would like, and the solution
they can take is obvious. We have a large set of software to choose
from: this is one of open source's great strengths.
Federico Mena-Quintera
and others have
been doing some very
nice work identifying and fixing some of the
gratuitous memory usage.
A large part of this task is raising people's consciousness that we've
become very sloppy on memory usage, and often there is low hanging fruit
making things use less memory (and execute faster and use less power as
a result). Sometimes it is poor design of memory usage, and sometimes it
is out and out bugs leaking memory. On our class of a system, leaks are
of really serious concern: we don't want to be paging to our limited
size flash.
In fact, much of the performance unpredictability of today's free
desktop can be attributed to the fact that several of our major
applications are wasting/leaking memory and driving even systems with
half a gigabyte of memory or more to paging quite quickly. Some of
these applications we care about, and some we don't: OpenOffice is just
not the right tool for someone learning to read and write, and we'll be
perfectly happy to use other tools. Some other major offenders need
fixing (and work has started): e.g. Firefox (Gecko), which, when using
tabs, has been hemorrhaging memory, which can force you to paging quite
quickly. Between evolution-data-server and Firefox alone, many people's
desktops exhibit unpredictable performance soon after boot due to
paging; fixing these problems will benefit all.
Tools:
The memory usage display tools we have today are very misleading to
naive (and even journeyman) programmers, often leading them to massively
wrong conclusions.
My biggest personal frustration (given my history with X) are people
saying: "X is bloated". The reality is: a) X maps all the frame buffer
and/or register space into its address space, so measurement of virtual
address spaced used is completely misleading: X may be actually
consuming only a very small amount of your DRAM, despite a virtual size
of a hundred megabytes, and b) X does what its told: many applications
seem to think that storing pixmaps in the X server (and often forgetting
about them entirely) is a good strategy, whereas retransmitting or
repainting the pixmap may be both faster and use less memory. Once in a
while there is a memory leak in X (generally in the graphics drivers):
but almost always the problem are leaks in applications, which often
forget the pixmaps they were using.
RAM in the X server is just as much RAM of your program, though it is in
a different address space. People forget that the X Window System was
developed on systems with 2 meg of RAM, and works today on 16 megabyte
iPAQ handhelds.
We need better tools; some are beginning to appear. OLPC is sponsoring
a Google Summer of Code student, Eduardo Silva, from Chile, who is
working on a new tool called Memphis to help with this problem.
Work done on memory consumption will benefit everyone: not everyone in
the world has a 2ghz laptop with a gig or two of RAM...
System (non-)management improvements:
I think there are two, mostly separable areas here:
1) the kid's laptop, on which we want to focus primarily on making "easy
to fix", rather than "hard to break", so interested children can learn
computing. And by working hard to automate backup, we'd like the restore
of a laptop to be dead simple if there is some problem. By using
LinuxBIOS, we expect to be able to boot and reinstall via the network
easily. Requiring cables and/or USB keys for restore are costly and
complicate logistics greatly.
2) the school servers need to be "hard to break" as well as "easy to
fix", and remotely manageable, as finding expertise a remote school of
10 children and one teacher is very unlikely. This is one of the
factors driving us to IPv6 (much more below), since NATed IPv4 islands
cannot be easily remotely diagnosed or updated automatically without
expertise on the ground, which will often be rare in our deployment
areas.
I've recently become impressed by technology developed for and by
PlanetLab that Dave Reed brought to my attention. It is worth
everyone's careful look. See (www.planet-lab.org).
Mesh networking:
Pulling wires and having access points are very expensive and requires
expertise, neither of which may be available; and we want kids to be
able to work together anytime they meet up, even under a tree 3
kilometers from nowhere.
MIT Roofnet and other
projects have shown the feasibility of mesh networking, where one
machine forwards packets on behalf of others. Michail Bletsas is OLPC's
expert in this area, and has a lot of first hand experience. In radio
quiet areas, quite long links become feasible; in urban areas much
shorter links are only feasible, but the density of machines is likely
much higher.
Our system is interesting in a number of ways beyond mesh software:
- it has antennae that can be rotated up above the top of the machine
and are more efficient than what you find in a conventional laptop; this
should roughly increase the footprint of each machine by a factor of
four (in area).
- the Marvell wireless chip we are using can operate autonomously. So
it can forward packets in the mesh even if the processor is suspended to
RAM! This should cut power consumption for an unused laptop to well
under one watt (current estimate is about .5 watts), while still
providing support to other machines in the mesh.
One of the challenges that the community can help later this year is to
help learn which techniques work best when the nodes of the mesh are
mobile machines. There are a number of routing protocols possible (some
of which should become power aware; not all machines may need to bother
to forward packets all the time), and which will work best in what
circumstances should be fun to learn.
Application checkpointing:
128 megabytes of memory is enough to run (almost) any open source
application; there are a few exceptions, but few that are of educational
interest for young children. It isn't enough, on a system where paging
needs to be avoided, to run arbitrary numbers of the larger applications
at the same time.
In addition to the community working on dieting our environment (and
making it run faster as a result), application check-pointing could help
the user's experience greatly. When memory runs low, idle applications
not currently in use could save their state and be restarted later at
the same point. We see some of this being done in Maemo on the Nokia
770; the conventions for this need freedesktop codification and
implementation in applications.
Pervasive IPv6:
In the developed world, we do not have a shortage of IPv4 addresses at
this time. We got to the Internet first, and grabbed enough "land" that
we don't yet feel the pain felt in other parts of the world.
We see differently from where we sit.
IPv6 to us is clearly essential on a number of grounds:
- address space, and not wanting a flag day conversion that would be
very difficult. There are good
arguments that we have effectively exhausted the IPv4 address space, and that even
conservation measures cannot change the situation by more than a year or
two. In the developing world the situation is already dire. In some
places, entire universities are hidden behind a single routable IPv4
address, and in others, NAT's are as much as 5 levels deep.
Vint Cerf told us that part of this problem is artificial: some cultures
are so worried about losing face if they were turned down that they have
not been asking for addresses, even though they would have been granted.
And part of it is very real indeed: Brazil is planning a deployment of
100,000,000 IP TV sets, for example; this cannot be done using IPv4. And
we hope to be deploying at such scale within a few years as well. Since
the cliff is already visible and we'd just as soon not fall off it; it
hurts so bad when you hit the bottom.
- it is impossible to diagnose problems if you can't observe them.
Initially, in many parts of the world, we have to presume limited
expertise is available on the ground, so local diagnosis could easily
become the limiting factor for deployment. If the school networks are
fragmented by NAT's, remote diagnosis becomes much more complicated.
- Building collaborative applications (or almost any new network
application) has become extremely difficult due to the extensive
deployment of NATs in the Internet: Skype is one of the few
applications, that by standing on its head in many ways, has succeeded
in (usually) working despite this disaster. Building such applications
becomes radically easier if we go back to the end to end principles
of
the Internet. NAT has made it
very difficult to deploy new applications.
Given tunneling technology (and 6to4, when routable addresses are
available), in concert with the IPv6 deployment that has begun in many
parts of the world, we can again have a clean end-to-end network, in
which kids anywhere can share with their peers all over the world.
So our judgment is that he time has really come, and (almost) all
applications are finally ready.
Localization problems:
According to the Ethnologue
web site,
there are 347 languages
with more than one million speakers in the world, that covers 94% of the world's population.
We already see localization in open source systems for languages with fewer
speakers - one
million speakers. If we continue along the current path of localization, we're going to
find ourselves with a real problem within several years.
While I expect the current mechanisms and processes might get us through the first round of
deployments, the year after, this problem will become more acute. As a community, we
need to recognize this approaching problem and rise to the challenge. I wrote
in more detail in my blog.
Are you getting the needed
level of assistance from the community in reaching these goals?
It has been hard for people to help on the base hardware support, though
as the first few boards were distributed over the last month this has
been changing: this is about to change in a big way with our developer's
program.
We are distributing almost 500 bare mother boards to enable people to
help on drivers, power management, code optimization (which not only
makes things faster, but reduces power consumption), mesh network
experimentation, etc. And there will be further opportunities later in
the program during beta test later this year.
What do
you most urgently need help with at this time?
Power management is one key problem. And it can be subtle and indirect:
slow code, or bloated code, also wastes power.
The memory consumption problems, and how to manage low memory situations
is also key. It would help greatly if applications would bother to be
able to checkpoint their state and restart exactly where they left off.
Let's take one of those goals: paring down applications so that they fit
into the OLPC's memory. This is clearly an activity which benefits
everybody - bloated applications are slow applications. Are you making
progress in putting the needed tools on a diet?
There are only a few things we are doing ourselves at this instant; the
responsibility for these problems is distributed among a myriad of
projects.
We have a simple principle everyone should be aware of: if your
application is bloated, it's much less likely people will be able to use
it on the machine. There are usually alternatives for any particular
piece of software. Given the healthy competition in free software, there
is only a much smaller subset of software that we care about to the
point of fixing it ourselves. If you want your software to be usable,
please make it so: and everyone will benefit with leaner, faster
applications, not only OLPC.
How are the upstream
communities responding to debloating patches?
In most areas, we're still pedal to the metal on basic problems like
device drivers, and finishing up LinuxBIOS + Linux as boot loader so
that we can support installation over the (mesh) network. Ron Minnich
and Ollie Lo of LANL and the LinuxBIOS community are rising to the
challenge.
Often, rather than patches, it is helping people understand there are
problems that need to be fixed. Chris Blizzard, who is on the board of
the Mozilla corporation, now works on OLPC (he's in charge of the Red
Hat team), and the Firefox team are finally aware they have a serious
problem and test cases are being generated. Chris says some progress has
already been made. Much more is needed, and there are viable
alternatives we could use if Firefox does not come through. But we think
they probably will by the time we will ship in volume.
Many thanks to Jim Gettys for taking the time to answer these questions.
The second part of the interview will appear next week.
Comments (27 posted)
The LWN staff has decided to take some time off for the U.S. Independence
Day holiday on July 4. As a result in the weekly edition will be published
late on July 6. We apologize for any inconvenience.
Comments (2 posted)
Page editor: Rebecca Sobol
Security
Brief items
June 28, 2006
This article was contributed by Jake Edge.
Over the past two weeks, this page has looked at two of the more widely
known proposals for improving the email infrastructure:
Sender Policy Framework (SPF) and
Domain Keys (DK).
This week will conclude the series by
looking at a few lesser known proposals and describe the kinds of problems
they are meant to solve.
Due to
joe jobs and other
spammer tricks, sites can sometimes be overwhelmed with bounce messages
from emails that they did not send. Two proposals provide ways for
the receivers of bounce messages (i.e. the domain that purportedly sent
the original message) to recognize invalid bounces before accepting the email.
Both
Signed
Envelope Sender (SES) and
Bounce Address Tag Validation (BATV)
are focused on eliminating invalid bounce messages.
Both techniques rely on using a uniquely generated envelope sender
for each outgoing mail, typically with a one-way hash or cryptographic
mechanism that can be verified by the sending Mail Transfer Agent (MTA).
When a bounce message arrives, it will have a null envelope sender
(to prevent loops) and an envelope recipient. If the MTA cannot verify
the envelope recipient as one of the uniquely generated addresses, it can
reject the email before receiving the DATA portion. This protection against
invalid bounce messages is one that can be unilaterally implemented by a
sending domain and will benefit that domain without requiring any
cooperation from other MTAs.
Both SES and BATV have ways to generate envelope sender addresses that
allow intermediary MTAs to verify the sender and determine if the email
was truly sent by the domain that purports to have sent it. In addition,
any hosts that use
SMTP sender address verification will be able to reject forged email
envelope sender addresses in domains that use SES/BATV because the
verification will fail for addresses that are not correctly generated.
Certified Server Validation (CSV)
is a technique that can arguably replace all of the trust evaluation that
SPF provides, but can do it in a more straightforward manner. By using the
hostname given in the SMTP HELO/EHLO command and a SRV record that has been
queried from the DNS, a receiving MTA can determine if the sending host has
correctly identified itself. In addition, the DNS record will indicate
whether the host is authorized to transfer mail for the domain.
All of the proposals and techniques that have been described in these three
articles are incremental changes to thwart one or more deficiencies in the
original design of SMTP. Because it was designed at a time when there were
few, if any, malicious users of the internet, security and authentication
were not major considerations.
More radical, non-incremental, changes to
how email is handled, such as Daniel J. Bernstein's
Internet Mail 2000 (IM2000)
have been proposed, but would require a wholesale shift in MTA and Mail
User Agent (MUA) software to implement them. Instead of email receivers
storing messages, IM2000 requires senders to store the messages and, at
least partially, attempts to burden the sender with
the costs of the email, rather than today's system which really only
burdens the recipient.
A descendant of IM2000
called
Differentiated
Mail Transfer Protocol (DMTP) is currently being worked on as a
potential internet standard.
Even if some SMTP alternative were to become an internet standard, it
remains to be seen how many users and mail servers would make the switch.
SMTP has a huge amount of inertia behind it and any replacement is likely to
be a long time in coming and have an adoption rate reminiscent of
IPv6.
Comments (4 posted)
New vulnerabilities
EnergyMech: denial of service
| Package(s): | emech |
CVE #(s): | |
| Created: | June 27, 2006 |
Updated: | June 28, 2006 |
| Description: |
A bug in EnergyMech fails to handle empty CTCP NOTICEs correctly, and
will cause a crash from a segmentation fault. By sending an empty CTCP
NOTICE, a remote attacker could exploit this vulnerability to cause a
denial of service. |
| Alerts: |
|
Comments (none posted)
Hashcash: possible heap overflow
| Package(s): | hashcash |
CVE #(s): | CVE-2006-3251
|
| Created: | June 27, 2006 |
Updated: | July 21, 2006 |
| Description: |
Andreas Seltenreich has reported a possible heap overflow in the
array_push() function in hashcash.c, as a result of an incorrect amount
of allocated memory for the "ARRAY" structure. |
| Alerts: |
|
Comments (none posted)
kernel: multiple vulnerabilities
| Package(s): | kernel |
CVE #(s): | CVE-2006-2445
CVE-2006-2448
CVE-2006-3085
|
| Created: | June 23, 2006 |
Updated: | August 11, 2006 |
| Description: |
There is a race condition error in the "posix-cpu-timers.c" script that
does not prevent another CPU from attaching the timer to an exiting
process. This could be exploited by attackers to cause a denial of
service.
A flaw due to errors in "powerpc/kernel/signal_32.c" and
"powerpc/kernel/signal_32.c" could allow userspace to provoke a machine
check on 32-bit kernels.
An infinite loop in "netfilter/xt_sctp.c" could be exploited by attackers
to exhaust all available memory resources, creating a denial of service
condition. |
| Alerts: |
|
Comments (none posted)
mutt: IMAP namespace buffer overflow
| Package(s): | mutt |
CVE #(s): | CVE-2006-3242
|
| Created: | June 28, 2006 |
Updated: | October 24, 2006 |
| Description: |
TAKAHASHI Tamotsu discovered that mutt's IMAP backend did not sufficiently
check the validity of namespace strings. If an user connects to a malicious
IMAP server, that server could exploit this to crash mutt or even execute
arbitrary code with the privileges of the mutt user. See this Secunia advisory for more
information. |
| Alerts: |
|
Comments (none posted)
mysql: denial of service
| Package(s): | mysql |
CVE #(s): | CVE-2006-3081
|
| Created: | June 23, 2006 |
Updated: | July 18, 2006 |
| Description: |
Mysqld in MySQL 4.1.x before 4.1.18, 5.0.x before 5.0.19, and 5.1.x before
5.1.6 allows remote authorized users to cause a denial of service (crash)
via a NULL second argument to the str_to_date function. |
| Alerts: |
|
Comments (none posted)
pinball: privilege escalation
| Package(s): | pinball |
CVE #(s): | CVE-2006-2196
|
| Created: | June 26, 2006 |
Updated: | June 28, 2006 |
| Description: |
Pinball, a pinball game simulator, has a privilege escalation
vulnerability in which the application can be tricked into loading
level plugins from user-controlled directories without dropping
its privileges. |
| Alerts: |
|
Comments (none posted)
png: buffer overflow
| Package(s): | png |
CVE #(s): | |
| Created: | June 28, 2006 |
Updated: | June 28, 2006 |
| Description: |
The Portable Network Graphics (PNG) library contains a vulnerability caused
by a potential sprintf(3) related buffer overflow. |
| Alerts: |
|
Comments (none posted)
Updated vulnerabilities
aRts: privilege escalation
| Package(s): | arts |
CVE #(s): | CVE-2006-2916
|
| Created: | June 16, 2006 |
Updated: | June 28, 2006 |
| Description: |
artswrapper in aRts, when running setuid root on Linux 2.6.0 or later
versions, does not check the return value of the setuid function call,
which allows local users to gain root privileges by causing setuid to fail,
which prevents artsd from dropping privileges. |
| Alerts: |
|
Comments (none posted)
asterisk: buffer overflow
| Package(s): | asterisk |
CVE #(s): | CVE-2006-2898
|
| Created: | June 15, 2006 |
Updated: | July 27, 2006 |
| Description: |
The Asterisk PBX application has a buffer overflow vulnerability in the
IAX2 channel driver that can be used for the remote execution of
arbitrary code.
|
| Alerts: |
|
Comments (none posted)
binutils: buffer overflow
| Package(s): | binutils |
CVE #(s): | CVE-2006-2362
|
| Created: | May 27, 2006 |
Updated: | August 29, 2006 |
| Description: |
The GNU Binutils has a buffer overflow vulnerability in libbfd.
Maliciously crafted Tektronix Hex Format files with improper length
characters can cause a crash and possibly lead to the execution of
arbitrary code. |
| Alerts: |
|
Comments (none posted)
busybox: insecure password generation
| Package(s): | busybox |
CVE #(s): | CVE-2006-1058
|
| Created: | May 5, 2006 |
Updated: | May 2, 2007 |
| Description: |
The BusyBox 1.1.1 passwd command does not use a proper salt when generating
passwords. This would create an instance where a brute force attack could
take very little time. |
| Alerts: |
|
Comments (2 posted)
bzip2: race condition and infinite loop
| Package(s): | bzip2 |
CVE #(s): | CAN-2005-0953
CAN-2005-1260
|
| Created: | May 17, 2005 |
Updated: | January 10, 2007 |
| Description: |
A race condition in bzip2 1.0.2 and earlier allows local users to modify
permissions of arbitrary files via a hard link attack on a file while it is
being decompressed, whose permissions are changed by bzip2 after the
decompression is complete. Also specially crafted bzip2 archives may cause
an infinite loop in the decompressor. |
| Alerts: |
|
Comments (2 posted)
ktools: buffer overflow
| Package(s): | centericq |
CVE #(s): | CVE-2005-3863
|
| Created: | December 7, 2005 |
Updated: | August 29, 2006 |
| Description: |
From the Debian-Testing alert: Mehdi Oudad "deepfear" and Kevin Fernandez "Siegfried" from the Zone-H
Research Team discovered a buffer overflow in kkstrtext.h of the ktools
library, which is included in (at least) centericq and motor. |
| Alerts: |
|
Comments (none posted)
courier: denial of service
| Package(s): | courier |
CVE #(s): | CVE-2006-2659
|
| Created: | June 9, 2006 |
Updated: | August 4, 2006 |
| Description: |
A denial of service vulnerability has been found in the function for
encoding email addresses. Addresses containing a '=' before the '@'
character caused the Courier to hang in an endless loop, rendering the
service unusable. |
| Alerts: |
|
Comments (none posted)
cpio: arbitrary code execution
| Package(s): | cpio |
CVE #(s): | CVE-2005-4268
|
| Created: | January 2, 2006 |
Updated: | March 17, 2010 |
| Description: |
Richard Harms discovered that cpio did not sufficiently validate file
properties when creating archives. Files with e. g. a very large size
caused a buffer overflow. By tricking a user or an automatic backup
system into putting a specially crafted file into a cpio archive, a
local attacker could probably exploit this to execute arbitrary code
with the privileges of the target user (which is likely root in an
automatic backup system). |
| Alerts: |
|
Comments (none posted)
vixie-cron: privilege escalation
| Package(s): | cron |
CVE #(s): | CVE-2006-2607
|
| Created: | May 31, 2006 |
Updated: | June 1, 2009 |
| Description: |
The Vixie cron daemon does not check the return code from setuid(); if that call can be made to fail, a local attacker may be able to execute commands as root. |
| Alerts: |
|
Comments (1 posted)
cscope: buffer overflows
| Package(s): | cscope |
CVE #(s): | CVE-2004-2541
|
| Created: | May 22, 2006 |
Updated: | June 19, 2009 |
| Description: |
A buffer overflow in Cscope 15.5, and possibly multiple overflows, allows
remote attackers to execute arbitrary code via a C file with a long
#include line that is later browsed by the target. |
| Alerts: |
|
Comments (1 posted)
curl: heap-based buffer overflow
| Package(s): | curl |
CVE #(s): | CVE-2006-1061
|
| Created: | March 21, 2006 |
Updated: | June 28, 2006 |
| Description: |
Heap-based buffer overflow in cURL and libcURL 7.15.0 through 7.15.2 allows
remote attackers to execute arbitrary commands via a TFTP URL (tftp://)
with a valid hostname and a long path. |
| Alerts: |
|
Comments (none posted)
Cyrus-SASL: DIGEST-MD5 Pre-Authentication Denial of Service
| Package(s): | cyrus-sasl |
CVE #(s): | CVE-2006-1721
|
| Created: | April 21, 2006 |
Updated: | September 4, 2007 |
| Description: |
Cyrus-SASL contains an unspecified vulnerability in the DIGEST-MD5
process that could lead to a Denial of Service. An attacker could possibly
exploit this vulnerability by sending specially crafted data stream to the
Cyrus-SASL server, resulting in a Denial of Service even if the attacker is
not able to authenticate. |
| Alerts: |
|
Comments (none posted)
dokuwiki: PHP code injection
| Package(s): | dokuwiki |
CVE #(s): | CVE-2006-2878
|
| Created: | June 15, 2006 |
Updated: | June 21, 2006 |
| Description: |
The DokuWiki spell checker has a PHP code injection vulnerability,
arbitrary PHP commands can be executed without proper authentication. |
| Alerts: |
|
Comments (none posted)
freetype: integer overflows
| Package(s): | freetype |
CVE #(s): | CVE-2006-0747
CVE-2006-1861
CVE-2006-2493
CVE-2006-2661
CVE-2006-3467
|
| Created: | June 8, 2006 |
Updated: | June 1, 2010 |
| Description: |
The FreeType library has several integer overflow vulnerabilities.
If a user can be tricked into installing a specially
crafted font file, arbitrary code can be executed with the privilege
of the user. |
| Alerts: |
|
Comments (none posted)
gdb: multiple vulnerabilities
| Package(s): | gdb |
CVE #(s): | CAN-2005-1704
CAN-2005-1705
|
| Created: | May 20, 2005 |
Updated: | August 11, 2006 |
| Description: |
Tavis Ormandy of the Gentoo Linux Security Audit Team discovered an integer
overflow in the BFD library, resulting in a heap overflow. A review also
showed that by default, gdb insecurely sources initialization files from
the working directory. Successful exploitation would result in the
execution of arbitrary code on loading a specially crafted object file or
the execution of arbitrary commands. |
| Alerts: |
|
Comments (5 posted)
gdm: improper file permissions
| Package(s): | gdm |
CVE #(s): | CVE-2006-1057
|
| Created: | April 19, 2006 |
Updated: | May 2, 2007 |
| Description: |
The .ICEauthority file may be created with the wrong ownership and permissions; gdm 2.14.2 fixes the problem. |
| Alerts: |
|
Comments (none posted)
gedit: format string vulnerability
| Package(s): | gedit |
CVE #(s): | CAN-2005-1686
|
| Created: | June 9, 2005 |
Updated: | February 5, 2009 |
| Description: |
A format string vulnerability has been discovered in gedit. Calling
the program with specially crafted file names caused a buffer
overflow, which could be exploited to execute arbitrary code with the
privileges of the gedit user. |
| Alerts: |
|
Comments (1 posted)
gnupg: remote denial of service
| Package(s): | gnupg |
CVE #(s): | CVE-2006-3082
|
| Created: | June 21, 2006 |
Updated: | July 28, 2006 |
| Description: |
A vulnerability was discovered in GnuPG 1.4.3 and 1.9.20 (and earlier) that
could allow a remote attacker to cause gpg to crash and possibly overwrite
memory via a message packet with a large length. |
| Alerts: |
|
Comments (1 posted)
grip: buffer overflow
| Package(s): | grip |
CVE #(s): | CAN-2005-0706
|
| Created: | March 10, 2005 |
Updated: | November 19, 2008 |
| Description: |
Grip, a CD ripper, has a buffer overflow vulnerability that can
occur when the CDDB server returns more than 16 matches. |
| Alerts: |
|
Comments (none posted)
gzip: arbitrary command execution
| Package(s): | gzip |
CVE #(s): | CAN-2005-0758
|
| Created: | August 1, 2005 |
Updated: | January 10, 2007 |
| Description: |
zgrep in gzip before 1.3.5 does not handle shell metacharacters like '|'
and '&' properly when they occurred in input file names. This could be
exploited to execute arbitrary commands with user privileges if zgrep is
run in an untrusted directory with specially crafted file names. |
| Alerts: |
|
Comments (2 posted)
horde: missing input sanitizing
| Package(s): | horde |
CVE #(s): | CVE-2006-2195
|
| Created: | June 15, 2006 |
Updated: | June 29, 2006 |
| Description: |
The Horde3 web application framework does not perform sufficient
input sanitizing, allowing the possible injection of web
script code through a cross-site scripting attack. |
| Alerts: |
|
Comments (none posted)
ImageMagick: heap overflow vulnerability
| Package(s): | ImageMagick |
CVE #(s): | CVE-2006-2440
|
| Created: | May 25, 2006 |
Updated: | September 5, 2006 |
| Description: |
The ImageMagick DisplayImageCommand has a heap overflow vulnerability.
If an maliciously created unexpanded glob is passed to ImageMagick,
a heap overflow can result. |
| Alerts: |
|
Comments (none posted)
kdebase: local root vulnerability
| Package(s): | kdebase |
CVE #(s): | CAN-2005-2494
|
| Created: | September 7, 2005 |
Updated: | August 11, 2006 |
| Description: |
The kdebase package (and kcheckpass in particular) found in KDE versions 3.2.0 through 3.4.2 suffers from a lock file handling error which can enable a local attacker to obtain root access. See this advisory for details. |
| Alerts: |
|
Comments (none posted)
kdebase: privilege escalation
| Package(s): | kdebase |
CVE #(s): | CVE-2006-2449
|
| Created: | June 15, 2006 |
Updated: | August 28, 2006 |
| Description: |
The KDE Display Manager(KDM) is vulnerable to a local symlink attack.
A local user can use this to read arbitrary files that they do not
have permission to access. See this KDE
advisory for more information. |
| Alerts: |
|
Comments (none posted)
kdelibs: kate backup file permission leak
| Package(s): | kdelibs kate kwrite |
CVE #(s): | CAN-2005-1920
|
| Created: | July 19, 2005 |
Updated: | September 21, 2010 |
| Description: |
Kate / Kwrite, as shipped with KDE 3.2.x up to including 3.4.0, creates a file backup before saving a modified file. These backup files are created with default permissions, even if the original file had more strict permissions set. See this advisory for more information. |
| Alerts: |
|
Comments (1 posted)
kernel: multiple vulnerabilities
| Package(s): | kernel |
CVE #(s): | CVE-2006-2271
CVE-2006-2272
CVE-2006-2274
CVE-2006-2275
CVE-2006-1864
|
| Created: | May 12, 2006 |
Updated: | July 13, 2006 |
| Description: |
Multiple vulnerabilities in the Linux have been found.
- An error in the Stream Control Transmission Protocol (SCTP) code that
uses incorrect state table entries when certain ECNE chunks are received in
CLOSED state, could be exploited by attackers to cause a kernel panic via a
specially crafted packet.
- An error exist when handling incoming IP-fragmented SCTP control
chunks, which could be exploited by attackers to cause a kernel panic via a
specially crafted packet.
- Linux SCTP (lksctp) allows remote attackers to cause a denial of
service (infinite recursion and crash) via a packet that contains two or
more DATA fragments, which causes an skb pointer to refer back to itself
when the full message is reassembled, leading to infinite recursion in the
sctp_skb_pull function
- Linux SCTP (lksctp) allows remote attackers to cause a denial of
service (deadlock) via a large number of small messages to a receiver
application that cannot process the messages quickly enough, which leads to
"spillover of the receive buffer."
- A vulnerability has been identified due to an input validation error
when processing arguments containing backslash ("\\") characters passed to
certain commands (e.g. "cd"), which could be exploited by authenticated
attackers to escape chroot restrictions for a CIFS or SMBFS mounted
filesystem.
|
| Alerts: |
|
Comments (none posted)
kernel: netfilter memory corruption
| Package(s): | kernel |
CVE #(s): | CVE-2006-2444
|
| Created: | May 25, 2006 |
Updated: | July 5, 2006 |
| Description: |
The 2.6.12 kernel has a remote memory corruption vulnerability
that can be remotely triggered by loading the ip_nat_snmp_basic
module and traffic is network-translated on port 161 or 162. |
| Alerts: |
|
Comments (none posted)
kernel: information disclosure
| Package(s): | kernel |
CVE #(s): | CVE-2006-1343
|
| Created: | May 31, 2006 |
Updated: | July 20, 2006 |
| Description: |
The 2.6 kernel netfilter code contains an information leak; this vulnerability has been fixed in the 2.6.16.19 release. |
| Alerts: |
|
Comments (none posted)
libgadu: memory alignment bug
| Package(s): | libgadu |
CVE #(s): | CAN-2005-2370
|
| Created: | July 29, 2005 |
Updated: | June 25, 2007 |
| Description: |
Szymon Zygmunt and Michal Bartoszkiewicz discovered a memory alignment
error in libgadu (from ekg, console Gadu Gadu client, an instant
messaging program) which is included in gaim, a multi-protocol instant
messaging client, as well. This can not be exploited on the x86
architecture but on others, e.g. on Sparc and lead to a bus error,
in other words a denial of service.
|
| Alerts: |
|
Comments (none posted)
libgd2: denial of service
| Package(s): | libgd2 |
CVE #(s): | CVE-2006-2906
|
| Created: | June 14, 2006 |
Updated: | January 16, 2007 |
| Description: |
Certain GIF images can cause libgd2 to go into an infinite loop, adversely affecting the performance of image processing applications. |
| Alerts: |
|
Comments (none posted)
libgd2: buffer overflows in PNG handling
| Package(s): | libgd2 |
CVE #(s): | CAN-2004-0990
CAN-2004-0941
|
| Created: | October 29, 2004 |
Updated: | June 28, 2006 |
| Description: |
Several buffer overflows have been discovered in libgd's PNG handling
functions.
If an attacker tricked a user into loading a malicious PNG image, they
could leverage this into executing arbitrary code in the context of
the user opening image. Most importantly, this library is commonly
used in PHP. One possible target would be a PHP driven photo website
that lets users upload images. Therefore this vulnerability might lead
to privilege escalation to a web server's privileges.
Multiple buffer overflows in the gd graphics library (libgd) 2.0.21 and
earlier may allow remote attackers to execute arbitrary code via malformed
image files that trigger the overflows due to improper calls to the
gdMalloc function. |
| Alerts: |
|
Comments (none posted)
libpam-ldap: authentication bypass
| Package(s): | libpam-ldap |
CVE #(s): | CAN-2005-2641
|
| Created: | August 25, 2005 |
Updated: | October 6, 2006 |
| Description: |
libpam-ldap, the PAM LDAP interface, has a vulnerability in which
it fails to authenticate with an LDAP server which is not configured
properly, allowing an authentication bypass. |
| Alerts: |
|
Comments (none posted)
libpng: heap based buffer overflow
| Package(s): | libpng |
CVE #(s): | CVE-2006-0481
|
| Created: | February 13, 2006 |
Updated: | December 15, 2008 |
| Description: |
A heap based buffer overflow bug was found in the way libpng strips alpha
channels from a PNG image. An attacker could create a carefully crafted PNG
image file in such a way that it could cause an application linked with
libpng to crash or execute arbitrary code when the file is opened by a
victim. |
| Alerts: |
|
Comments (1 posted)
libtiff: buffer overflow
| Package(s): | libtiff |
CVE #(s): | CVE-2006-2193
|
| Created: | June 15, 2006 |
Updated: | September 1, 2008 |
| Description: |
The t2p_write_pdf_string function in libtiff 3.8.2 and earlier is vulnerable
to a buffer overflow. Attackers can use a TIFF file with UTF-8 characters
in the DocumentName tag to overflow a buffer, causing a denial of service,
and possibly the execution of arbitrary code. |
| Alerts: |
|
Comments (none posted)
libxml2 - arbitrary code execution
| Package(s): | libxml2 |
CVE #(s): | CAN-2004-0110
|
| Created: | February 26, 2004 |
Updated: | August 19, 2009 |
| Description: |
Yuuichi Teranishi discovered a flaw in libxml2 versions prior to 2.6.6.
When fetching a remote resource via FTP or HTTP, libxml2 uses special
parsing routines. These routines can overflow a buffer if passed a very
long URL. If an attacker is able to find an application using libxml2 that
parses remote resources and allows them to influence the URL, then this
flaw could be used to execute arbitrary code. |
| Alerts: |
|
Comments (none posted)
libxml2: multiple buffer overflows
| Package(s): | libxml2 |
CVE #(s): | CAN-2004-0989
|
| Created: | October 28, 2004 |
Updated: | August 19, 2009 |
| Description: |
libxml2 prior to version 2.6.14 has multiple buffer overflow
vulnerabilities, if a local user passes a specially crafted
FTP URL, arbitrary code may be executed. |
| Alerts: |
|
Comments (none posted)
lynx: arbitrary command execution
| Package(s): | lynx |
CVE #(s): | CVE-2005-2929
|
| Created: | November 14, 2005 |
Updated: | September 14, 2009 |
| Description: |
An arbitrary command execute bug was found in the lynx "lynxcgi:" URI
handler. An attacker could create a web page redirecting to a malicious URL
which could execute arbitrary code as the user running lynx. |
| Alerts: |
|
Comments (none posted)
mozilla products have multiple vulnerabilities
Comments (none posted)
mpg123: buffer overflows
| Package(s): | mpg123 |
CVE #(s): | CVE-2006-1655
|
| Created: | May 24, 2006 |
Updated: | July 3, 2006 |
| Description: |
mpg123 does not properly validate MPEG 2.0 layer 3 files, leading to a number of buffer overflow vulnerabilities. |
| Alerts: |
|
Comments (none posted)
MySQL: logging bypass
| Package(s): | mysql |
CVE #(s): | CVE-2006-0903
|
| Created: | April 4, 2006 |
Updated: | May 21, 2008 |
| Description: |
MySQL 5.0.18 and earlier allows local users to bypass logging mechanisms
via SQL queries that contain the NULL character, which are not properly
handled by the mysql_real_query function. NOTE: this issue was originally
reported for the mysql_query function, but the vendor states that since
mysql_query expects a null character, this is not an issue for mysql_query. |
| Alerts: |
|
Comments (2 posted)
mysql: information leaks
| Package(s): | mysql mysql-dfsg |
CVE #(s): | CVE-2006-1516
CVE-2006-1517
|
| Created: | May 8, 2006 |
Updated: | June 23, 2006 |
| Description: |
Stefano Di Paola discovered an information leak in the login packet
parser. By sending a specially crafted malformed login packet, a
remote attacker could exploit this to read a random piece of memory,
which could potentially reveal sensitive data. (CVE-2006-1516)
Stefano Di Paola also found a similar information leak in the parser
for the COM_TABLE_DUMP request. (CVE-2006-1517) |
| Alerts: |
|
Comments (1 posted)
nbd: arbitrary code execution
| Package(s): | nbd |
CVE #(s): | CVE-2005-3534
|
| Created: | January 6, 2006 |
Updated: | March 7, 2011 |
| Description: |
Kurt Fitzner discovered that the NBD (network block device) server did not
correctly verify the maximum size of request packets. By sending specially
crafted large request packets, a remote attacker who is allowed to access
the server could exploit this to execute arbitrary code with root
privileges. |
| Alerts: |
|
Comments (none posted)
ntp: uses wrong gid
| Package(s): | ntp |
CVE #(s): | CAN-2005-2496
|
| Created: | August 26, 2005 |
Updated: | August 11, 2006 |
| Description: |
When starting xntpd with the -u option and specifying the
group by using a string not a numeric gid the daemon uses
the gid of the user not the group. This problem is now fixed
by this update. |
| Alerts: |
|
Comments (none posted)
openldap: stack-based buffer overflow
| Package(s): | openldap |
CVE #(s): | CVE-2006-2754
|
| Created: | June 8, 2006 |
Updated: | June 27, 2006 |
| Description: |
OpenLDAP is vulnerable to a stack-based buffer overflow in the
st.c file from slurpd. Attackers may be able to use a long hostname
to execute arbitrary code. |
| Alerts: |
|
Comments (none posted)
openmotif: buffer overflows
| Package(s): | openmotif |
CVE #(s): | CVE-2005-3964
|
| Created: | December 29, 2005 |
Updated: | July 27, 2006 |
| Description: |
The libUil component of the OpenMotif toolkit has a pair of buffer
overflow vulnerabilities that can possibly be used for the execution
of arbitrary code.
|
| Alerts: |
|
Comments (none posted)
OpenSSH: double shell expansion
| Package(s): | openssh |
CVE #(s): | CVE-2006-0225
|
| Created: | January 23, 2006 |
Updated: | July 20, 2006 |
| Description: |
OpenSSH has a double shell expansion vulnerability in local to local and
remote to remote copy with scp. |
| Alerts: |
|
Comments (none posted)
pam_mysql: multiple vulnerabilities
| Package(s): | pam_mysql |
CVE #(s): | |
| Created: | June 15, 2006 |
Updated: | June 21, 2006 |
| Description: |
PAM-MySQL has multiple vulnerabilities involving the
handling of pam_get_item() results and other unspecified issues,
this can be used for a denial of service attack, users can be
prevented from logging in. |
| Alerts: |
|
Comments (none posted)
perl: setuid vulnerabilities
| Package(s): | perl |
CVE #(s): | CAN-2005-0155
CAN-2005-0156
|
| Created: | February 2, 2005 |
Updated: | August 11, 2006 |
| Description: |
There are two vulnerabilities with perl when it is used in a setuid mode. The PERLIO_DEBUG environment variable can be used to overwrite arbitrary files; there is also an associated buffer overflow which can be exploited to gain root access. |
| Alerts: |
|
Comments (none posted)
php: multiple vulnerabilities
| Package(s): | php |
CVE #(s): | CVE-2006-1990
CVE-2006-1991
CVE-2006-3017
|
| Created: | May 25, 2006 |
Updated: | August 18, 2006 |
| Description: |
The php wordwrap() function is vulnerable to an integer overflow.
Attackers can submit long arguments to cause a heap-based buffer
overflow, allowing arbitrary code execution.
PHP 5.x and PHP 4.4.2 have a problem with the substr_compare() function.
An attacker can use an out-of-bounds offset argument to cause a
memory access violation, causing a denial of service.
A bug in zend_hash_del() allowed attackers to prevent unsetting of some variables |
| Alerts: |
|
Comments (none posted)
phpbb2: missing input sanitizing
| Package(s): | phpbb2 |
CVE #(s): | CVE-2006-1896
|
| Created: | May 22, 2006 |
Updated: | February 11, 2008 |
| Description: |
It was discovered that phpbb2, a web based bulletin board, insufficiently
sanitizes values passed to the "Font Color 3" setting, which might lead to
the execution of injected code by admin users. |
| Alerts: |
|
Comments (none posted)
phpbb2: multiple vulnerabilities
| Package(s): | phpbb2 |
CVE #(s): | CVE-2005-3310
CVE-2005-3415
CVE-2005-3416
CVE-2005-3417
CVE-2005-3418
CVE-2005-3419
CVE-2005-3420
CVE-2005-3536
CVE-2005-3537
|
| Created: | December 22, 2005 |
Updated: | February 11, 2008 |
| Description: |
The phpbb2 web forum has a number of vulnerabilities including:
a web script injection problem, a protection mechanism bypass, a
security check bypass, a remote global variable bypass, cross site
scripting vulnerabilities, an SQL injection vulnerability,
a remote regular expression modification problem, missing input
sanitizing, and a missing request validation problem. |
| Alerts: |
|
Comments (none posted)
phpMyAdmin: multiple vulnerabilities
| Package(s): | phpmyadmin |
CVE #(s): | CVE-2005-4079
CVE-2005-3665
|
| Created: | December 12, 2005 |
Updated: | November 20, 2006 |
| Description: |
Stefan Esser reported multiple vulnerabilities
found in phpMyAdmin. The $GLOBALS variable allows modifying the global
variable import_blacklist to open phpMyAdmin to local and remote file
inclusion, depending on your PHP version (CVE-2005-4079, PMASA-2005-9).
Furthermore, it is also possible to conduct an XSS attack via the
$HTTP_HOST variable and a local and remote file inclusion because the
contents of the variable are under total control of the attacker
(CVE-2005-3665, PMASA-2005-8). |
| Alerts: |
|
Comments (none posted)
postgresql: SQL injection
| Package(s): | postgresql |
CVE #(s): | CVE-2006-2313
CVE-2006-2314
|
| Created: | May 24, 2006 |
Updated: | June 6, 2007 |
| Description: |
The PostgreSQL team has put out a set of "urgent updates" (in the form of the 7.3.15, 7.4.13, 8.0.8, and 8.1.4 releases) closing a
newly-discovered set of SQL injection issues. Details about the problem
can be found on the
technical information page; in short: multi-byte encodings can be used
to defeat normal string sanitizing techniques. The update fixes one problem
related to invalid multi-byte characters, but punts on another by simply
disallowing the old, unsafe technique of escaping single quotes with a
backslash. |
| Alerts: |
|
Comments (1 posted)
Py2Play: remote execution of arbitrary Python code
| Package(s): | Py2Play |
CVE #(s): | CAN-2005-2875
|
| Created: | September 19, 2005 |
Updated: | September 6, 2006 |
| Description: |
Py2Play uses Python pickles to send objects over a peer-to-peer game network, that clients accept without restriction the objects and code sent by peers. A remote attacker participating in a Py2Play-powered game can send
malicious Python pickles, resulting in the execution of arbitrary
Python code on the targeted game client. |
| Alerts: |
|
Comments (none posted)
quagga: multiple vulnerabilities
| Package(s): | quagga |
CVE #(s): | CVE-2006-2223
CVE-2006-2224
CVE-2006-2276
|
| Created: | May 15, 2006 |
Updated: | July 24, 2006 |
| Description: |
Paul Jakma discovered that Quagga's ripd daemon did not properly
handle authentication of RIPv1 requests. If the RIPv1 protocol had
been disabled, or authentication for RIPv2 had been enabled, ripd
still replied to RIPv1 requests, which could lead to information
disclosure. (CVE-2006-2223)
Paul Jakma also noticed that ripd accepted unauthenticated RIPv1
response packets if RIPv2 was configured to require authentication and
both protocols were allowed. A remote attacker could exploit this to
inject arbitrary routes. (CVE-2006-2224)
Fredrik Widell discovered that Quagga did not properly handle certain
invalid 'sh ip bgp' commands. By sending special commands to Quagga, a
remote attacker with telnet access to the Quagga server could exploit
this to trigger an endless loop in the daemon (Denial of Service).
(CVE-2006-2276) |
| Alerts: |
|
Comments (1 posted)
quake: buffer overflow
| Package(s): | quake3-bin |
CVE #(s): | CVE-2006-2236
|
| Created: | May 10, 2006 |
Updated: | January 12, 2009 |
| Description: |
Games based on the Quake 3 engine are vulnerable to a buffer overflow exploitable by a hostile game server. |
| Alerts: |
|
Comments (none posted)
scorched3d: multiple vulnerabilities
| Package(s): | scorched3d |
CVE #(s): | |
| Created: | November 15, 2005 |
Updated: | August 11, 2006 |
| Description: |
Luigi Auriemma discovered multiple flaws in the Scorched 3D game
server, including a format string vulnerability and several buffer
overflows. A remote attacker could exploit these vulnerabilities to crash
a game server or execute arbitrary code with the rights of the game server
user. |
| Alerts: |
|
Comments (none posted)
sendmail: denial of service
| Package(s): | sendmail |
CVE #(s): | CVE-2006-1173
|
| Created: | June 15, 2006 |
Updated: | November 1, 2006 |
| Description: |
Sendmail has a vulnerability in the way it handles multi-part MIME messages.
A remote attacker can create a specially crafted email message that can
be used to crash the sendmail process, causing a denial of service. |
| Alerts: |
|
Comments (none posted)
shadow-utils: mailbox creation vulnerability
| Package(s): | shadow-utils |
CVE #(s): | CVE-2006-1174
|
| Created: | May 25, 2006 |
Updated: | June 12, 2007 |
| Description: |
The useradd tool from the shadow-utils package has a potential security
problem. When a new user's mailbox is created, the permissions are
set to random garbage from the stack, potentially allowing the
file to be read or written during the time before fchmod() is called. |
| Alerts: |
|
Comments (none posted)
squirrelmail: file inclusion vulnerability
| Package(s): | squirrelmail |
CVE #(s): | CVE-2006-2842
|
| Created: | June 8, 2006 |
Updated: | July 11, 2006 |
| Description: |
Squirrelmail, a PHP-based webmail package, has a file inclusion
vulnerability. |
| Alerts: |
|
Comments (none posted)
sudo: vulnerability via scripts
| Package(s): | sudo |
CVE #(s): | CAN-2005-4158
CVE-2006-0151
|
| Created: | December 16, 2005 |
Updated: | September 1, 2006 |
| Description: |
Perl and Python scripts run via Sudo can be subverted. |
| Alerts: |
|
Comments (none posted)
texinfo: temporary file vulnerability
| Package(s): | texinfo |
CVE #(s): | CAN-2005-3011
|
| Created: | October 5, 2005 |
Updated: | November 9, 2006 |
| Description: |
Texinfo prior to version 4.8-r1 suffers from a temporary file vulnerability. |
| Alerts: |
|
Comments (none posted)
tin: buffer overflow
| Package(s): | tin |
CVE #(s): | CVE-2006-0804
|
| Created: | February 19, 2006 |
Updated: | November 24, 2006 |
| Description: |
An allocation off-by-one bug exists in the TIN news reader version 1.8.0 and earlier
which can lead to a buffer overflow. |
| Alerts: |
|
Comments (none posted)
unzip: long file name buffer overflow
| Package(s): | unzip |
CVE #(s): | CVE-2005-4667
|
| Created: | February 6, 2006 |
Updated: | May 2, 2007 |
| Description: |
A buffer overflow in UnZip 5.50 and earlier allows local users to execute
arbitrary code via a long filename command line argument. NOTE: since the
overflow occurs in a non-setuid program, there are not many scenarios under
which it poses a vulnerability, unless unzip is passed long arguments when
it is invoked from other programs. |
| Alerts: |
|
Comments (1 posted)
w3c-libwww: possible stack overflow
| Package(s): | w3c-libwww |
CVE #(s): | CVE-2005-3183
|
| Created: | October 14, 2005 |
Updated: | May 2, 2007 |
| Description: |
xtensive testing of libwww's handling of multipart/byteranges content from
HTTP/1.1 servers revealed multiple logical flaws and bugs in
Library/src/HTBound.c |
| Alerts: |
|
Comments (1 posted)
wv2: integer overflow
| Package(s): | wv2 |
CVE #(s): | CVE-2006-2197
|
| Created: | June 15, 2006 |
Updated: | June 23, 2006 |
| Description: |
The wv2 library, which is used to access Microsoft Word documents,
has a boundary checking error that can be used to create an integer
overflow when processing word files. |
| Alerts: |
|
Comments (none posted)
xine-lib: buffer overflow
| Package(s): | xine-lib |
CVE #(s): | CVE-2006-2802
|
| Created: | June 9, 2006 |
Updated: | September 29, 2006 |
| Description: |
Federico L. Bossi Bonin discovered a buffer overflow in the HTTP input
module. By tricking an user into opening a malicious remote media
location, a remote attacker could exploit this to crash Xine library
frontends (like totem-xine, gxine, or xine-ui) and possibly even
execute arbitrary code with the user's privileges. |
| Alerts: |
|
Comments (none posted)
xine-lib: buffer overflow
| Package(s): | xine-lib |
CVE #(s): | CVE-2006-1664
|
| Created: | April 27, 2006 |
Updated: | February 27, 2008 |
| Description: |
xine-lib does an improper input data boundary check on
MPEG streams. A specially crafted MPEG file can be
created that can cause arbitrary code execution when the
file is accessed. |
| Alerts: |
|
Comments (none posted)
xine-ui: format string vulnerabilities
| Package(s): | xine-ui |
CVE #(s): | CVE-2006-2230
|
| Created: | June 9, 2006 |
Updated: | January 24, 2007 |
| Description: |
Several format string vulnerabilities have been discovered in xine-ui,
the user interface of the xine video player, which may cause a denial
of service. |
| Alerts: |
|
Comments (none posted)
X.Org: buffer overflow
| Package(s): | xorg-x11-server xorg-x11 |
CVE #(s): | CVE-2006-1526
|
| Created: | May 3, 2006 |
Updated: | January 10, 2007 |
| Description: |
There is a buffer overflow in the Xrender extension of the X.Org server; any process which is able to connect to the server may be able to exploit this overflow to run arbitrary code. Since the X server runs as root on most systems, this vulnerability could be exploited to gain root access. See the X.Org advisory for more information. |
| Alerts: |
|
Comments (none posted)
xpdf: buffer overflow
| Package(s): | xpdf |
CVE #(s): | CAN-2005-0064
|
| Created: | January 19, 2005 |
Updated: | March 15, 2007 |
| Description: |
iDEFENSE has found yet another xpdf buffer overflow; see this advisory for details. |
| Alerts: |
|
Comments (1 posted)
xpdf: denial of service
| Package(s): | xpdf kpdf |
CVE #(s): | CAN-2005-2097
|
| Created: | August 9, 2005 |
Updated: | August 2, 2006 |
| Description: |
A flaw was discovered in Xpdf in that could allow an attacker to construct
a carefully crafted PDF file that would cause Xpdf to consume all available
disk space in /tmp when opened. |
| Alerts: |
|
Comments (none posted)
xpdf: integer overflows
| Package(s): | xpdf, poppler, cupsys, tetex-bin |
CVE #(s): | CVE-2005-3624
CVE-2005-3625
CVE-2005-3626
CVE-2005-3627
|
| Created: | January 5, 2006 |
Updated: | November 30, 2006 |
| Description: |
xpdf has a number of integer overflows.
A remote attacker can trick a user into opening a maliciously
crafted pdf file, allowing the attacker to execute code with the
privileges of the local user.
This also affects the Poppler library, cupsys and tetex-bin. |
| Alerts: |
|
Comments (none posted)
Page editor: Rebecca Sobol
Kernel development
Brief items
Many more changes have been merged into Linus's kernel tree since last
week, about 2800 changes to be exact. There has been merges with ALSA,
i2c, hwmon, PCI, USB, XFS, Driver core, Power PC architecture, ARM
architecture, SPARC 64 architecture, m68k architecture, x86-64 architecture,
network drivers, SATA, ACPI, networking core, V4L core and drivers, NFS,
Infiniband, DM, MD, the build system, OCFS2, XFS, CIFS, JFFS2, and just about
every other part of the kernel has been updated. In short, a huge merge of
bugfixes and updates, showing there is nothing slowing down the pace of kernel development.
(Thanks to Greg Kroah-Hartman for this update.)
Comments (none posted)
Kernel development news
No, the inevitable flame war here is the abusive way of telling people
not to extract the kernel sources as root. This argument boils down to
a fundamental disjunct: trust people to handle security of their own box
their own way, with full knowledge of how their tools work, or assume
that they aren't intelligent enough to use tools sanely and securely,
and handicap so they don't have to. The latter, much as it is not seen
this way, is the abusive philosophy. The former trusts the user.
Yes, there's a learning curve. There is always a learning curve. Never
expect there not to be a learning curve.
-- Matthew Frost <artusemrys -at- sbcglobal.net>
Comments (4 posted)
This article is the somewhat delayed followup to
Trees I, which looked at
the radix tree interface. Along with radix trees, the kernel contains an
implementation of a data structure known as a "red-black tree." These
trees (known as "rbtrees" within the kernel) are a form of semi-balanced
binary tree. Each node in the tree contains a value and up to two
children; the node's value will be greater than that of all children in the
![[Red-black tree]](/images/ns/kernel/wikipedia-rbtree.png)
"left" child branch, and less than that of all children in the "right"
branch. Thus, it is possible to serialize a red-black tree by performing a
depth-first, left-to-right traversal.
Every node in a red-black tree is considered to be colored either red or
black, with the root always being black. There is a somewhat complicated
set of rules on how nodes should be colored, and, in particular, how the
colors of the nodes should be used to make decisions on when and how to
rebalance the tree. This article will not go into the details of the
red-black tree mechanism, especially since that mechanism is well described
by the Wikipedia
red-black tree article (which is also the source of the image used
here). Instead, we'll focus on how red-black trees are used in the Linux
kernel.
The complex rules for red-black trees do bring some advantages. Since it
is a binary tree, a red-black tree can perform lookups in logarithmic
time. If the tree is properly maintained, the longest path to a leaf node
in the tree will never be more than twice as long as the shortest path - in
other words, the tree is always in approximate balance. But the property
which is arguably most useful in the kernel context is the fact that
insertions and deletions are (1) fast, and (2) provably bounded
in time. All the work that the kernel developers have put into reducing
latencies would be wasted if a data structure were to simply go off for an
indeterminate period of time rebalancing itself. Users of red-black trees
pay a small lookup cost because the tree is not perfectly balanced, but, in
return, they get fast, bounded insertion and deletion operations. A
red-black tree can, thus, be indicated in situations where nodes come and
go frequently.
There are a number of red-black trees in use in the kernel. The
anticipatory, deadline, and CFQ I/O schedulers all employ rbtrees to track
requests; the packet CD/DVD driver does the same. The high-resolution
timer code uses an rbtree to organize outstanding timer requests. The ext3
filesystem tracks directory entries in a red-black tree. Virtual memory
areas (VMAs) are tracked with red-black trees, as are epoll file
descriptors, cryptographic keys, and network packets in the "hierarchical
token bucket" scheduler.
The process of using a red-black tree starts by including
<linux/rbtree.h>. This is one of the trickier kernel data
structures to use, however. When designing a general data structure for a
language like C, the developer must always decide how to include arbitrary
types within the structure, and how to make comparisons between them. The
person who implemented Linux rbtrees (the copyright in the code is to
Andrea Arcangeli) made these decisions:
- Structures which are to be part of an rbtree must include a struct
rb_node within them; there are no void * pointers
to separate objects. This is a common way of implementing kernel data
structures, and so will not surprise too many people.
- There is no "compare two objects" callback used in the rbtree code.
Instead, users of rbtrees must, for all practical purposes, write the
top-level search and insertion functions
themselves, using lower-level rbtree primitives. As a result, using
an rbtree is a bit more work, and the data structure is rather less
opaque than our computer science teachers would have liked. What is
gained in return, however, is a faster overall implementation without
a bunch of indirect function calls in the hottest part of the tree
traversal loops.
It should also be remembered that an rbtree, like many other kernel data
structures, implements no locking of its own. Any code which uses an
rbtree must implement its own mutual exclusion to keep the tree from being
corrupted. Usually, that locking will fit well with the scheme already
being used by that code anyway, so there is no need for an independent
locking mechanism.
The root of a red-black tree has the type struct rb_root; a tree
can be initialized to the empty state with a line like:
struct rb_root the_root = RB_ROOT;
Assume, for a moment, that we have a red-black tree which is already full
of interesting data. Traversal of that tree (which does not involve
searching) is straightforward:
struct rb_node *rb_first(struct rb_root *tree);
struct rb_node *rb_last(struct rb_root *tree);
struct rb_node *rb_next(struct rb_node *node);
struct rb_node *rb_prev(struct rb_node *node);
A call to rb_first() will return a pointer to the first entry in
the tree, while rb_last() returns the final entry. Moving forward
and backward through the tree is a simple matter of calling
rb_next() and rb_prev(). In all of these cases, a return
value of NULL indicates that the requested node does not exist.
Since the rb_node structures are embedded within some other
structure of interest, finding the rb_node is a simple matter of
using the right structure field. A call to one of the above functions will
return a pointer to the embedded rb_node structure, however, and
not the containing structure which is, normally, what the programmer really
wants. This is the situation that the container_of() macro was
created for, but, in this case, there is no need to use
container_of() directly. Instead, use rb_entry():
rb_entry(pointer, type, member);
Where pointer is a pointer to an rb_node structure,
type is the type of the containing structure, and member
is the name of the rb_node structure within the container.
Searching an existing tree for a value is simply a matter of starting at
the root, then, for each node, comparing the value of that node against the
target and following the left or right branch as necessary. So all rbtree
search code tends to look like the following:
struct my_stuff *my_rb_search(struct rb_root *root, int value)
{
struct rb_node *node = root->rb_node; /* top of the tree */
while (node)
{
struct my_stuff *stuff = rb_entry(node, struct my_stuff, node);
if (stuff->coolness > value)
node = node->rb_left;
else if (stuff->coolness < value)
node = node->rb_right;
else
return stuff; /* Found it */
}
return NULL;
}
Here, we are searching for a struct my_stuff whose
coolness field matches the given value. An integer value
is used for simplicity, but not all uses need be so simple. If the
coolness of the root node is greater than the target value, then
that value must be found in the left branch of the tree (if it is in the
tree at all), so the search follows the rb_left branch and starts
over. A search value greater than the current node's value indicates that
the right branch should be used instead. Eventually this function will
either find an exact match, or hit the bottom of the tree.
The insertion case is a little trickier. The code must traverse the tree
until it finds the leaf node where the insertion should take place. Once
it has found that spot, the new node is inserted as a "red" node, and the
tree is rebalanced if need be. Insertion code tends to have this form:
void my_rb_insert(struct rb_root *root, struct my_stuff *new)
{
struct rb_node **link = &root->rb_node, *parent;
int value = new->coolness;
/* Go to the bottom of the tree */
while (*link)
{
parent = *link;
struct my_stuff *stuff = rb_entry(parent, struct my_stuff, parent);
if (stuff->coolness > value)
link = &(*link)->rb_left;
else
link = &(*link)->rb_right;
}
/* Put the new node there */
rb_link_node(new, parent, link);
rb_insert_color(new, root);
}
In this case, the traversal of the tree looks similar to the search case.
However, the link pointer is doubly indirected; in the end, it
will be used to tell the rbtree code which branch pointer (rb_left
or rb_right) should be set to point to the new entry. The code
follows the tree all the way to the bottom, at which point the
parent pointer identifies the parent of the new node, and
link points to the appropriate field within parent.
Then, a call is made to:
void rb_link_node(struct rb_node *new_node,
struct rb_node *parent,
struct rb_node **link);
This call will link the new node into the tree as a red node. After this
call, however, the tree may no longer meet all the requirements for a
red-black tree, and may thus need to be rebalanced. That work is done by
calling:
void rb_insert_color(struct rb_node *new_node, struct rb_root *tree);
Once that step is complete, the tree will be in consistent form.
There is an important assumption built into the above example: the new
value being inserted into the tree is not already present there. If that
assumption is not warranted, a corrupted tree could result. If the
possibility of a duplicated insertion exists, the code must be careful to
test for an exact match (as is done in the search case) and stop (without
inserting the node) if that match is found.
Removal of a node from a tree is simpler; simply call:
void rb_erase(struct rb_node *victim, struct rb_root *tree);
After the call, victim will no longer be part of tree,
which may have been rebalanced as part of the operation.
If one tree entry is being replaced by another with the same value,
however, there is no need to go through the removal and insertion process.
Instead, use:
void rb_replace_node(struct rb_node *old,
struct rb_node *new,
struct rb_root *tree);
This call will quickly remove old from the tree, substituting
new in its place. If new does not have the same value as
old, however, the tree will be corrupted.
Comments (14 posted)
The past two weeks has seen a
huge long email thread about the future of suspend in Linux. No, not
that other type of suspend, this is
all about what users really want, a working suspend to RAM.
It all started out with a few simple patches from Linus that implemented a
framework for allowing a way to debug problems during suspend, but quickly
spiraled out of control into rants about how badly the kernel handles
suspend issues today:
> I think you are trying to change a model that is not broken...
Bzzt. Thank you for playing.
The fact is, this thing has been broken for years. At some point,
we have to just accept the fact that it's not just "drivers".
There's something else that is broken, and I bet it's the model.
To how wrong everyone has been over the years in how suspend should really
work:
See? WE DO NOT DO THIS. I told people we needed to do this _years_
ago. I tried to push through the two-phase suspend. I tried to
explain why. I clearly failed, because we do _nothing_of_the_sort_
right now.
Instead, the "please suspend" thing to the devices is a
single-phase "put yourself into D3", with no support for a
separate "please save your state" call. Crap.
After arguing this last point over and over for many emails, Linus did
what anyone should do who wants to prove that their point is correct, he
wrote up a working patch that implements his proposed changes.
To fully understand the problem, let us look at the interface that the
kernel provides drivers today to handle suspend. When the kernel wants to
shut devices down (for some kind of suspend action), the whole device tree
is walked, and the suspend callback is called.
For PCI devices, this callback looks like:
int (*suspend) (struct pci_dev *dev, pm_message_t state);
The pointer to the PCI device that is about to be suspended is passed to
the driver, along with the state that the kernel wants to go into. Within
this single function, the driver is responsible for doing all suspend
tasks needed for the device.
The big problem with this is that if a device can not be suspended at that
point in time, it has to go through great lengths to try to let the core
know that it should be called back again (it does this by returning
-EAGAIN to the core and hoping that it will be called back.)
But the big issue is that the driver is responsible for shutting the
device down entirely in this function. This prevents the kernel from
doing things like system snapshots easily, or what to do if the driver
simply does not have enough memory available to it in order to properly
save the device state off in order to suspend.
Also the big issue is that the "class" cores should be handling most of
the suspend process, instead of the individual drivers. For example, the
network core should be shutting down the transmit queues and making stuff
go quiet for the drivers, so that they do not need to individually do this
in each and every driver. This last point is the biggest change in
Linus's model, and (in this author's opinion) the most important issue.
So, Linus changes the suspend process to a series of different steps:
- All devices start out on a list called dpm_active and are, as
indicated, "active" and up and running.
- A new callback is called for every device in the global device tree. This
callback is called suspend_prepare and has the same arguments
that the current suspend callback has for each individual bus
type. In this function, the devices are not allowed to disconnect
themselves from the kernel (like USB devices disconnecting themselves to
shut down), and the drivers for these devices need to do everything
necessary to be ready to suspend the device some time in the future. This
usually entails allocating any needed memory to save the device state, or
other kinds of housekeeping. Anything that might possibly fail should be
done here, and if something bad happens, the error should be reported.
Drivers can call functions that might sleep here, as interrupts are not
disabled.
- The kernel then iterates over all of the dpm_active list and
moves it to the dpm_off list and calls the suspend
callback for the different subsystems (which is new). Followed by the
subsystem suspend, the bus suspend callback is made.
- Interrupts are now disabled in the system.
- Then the kernel iterates over all of the devices on the dpm_off
list and moves them to the dpm_off_irq list, while calling a new
callback called suspend_late().
- After this is complete, the system can be suspended by shutting
down the CPU by putting it into any sleep level that is desired.
To resume the system, the kernel reverses the order of manipulating the
device lists and does the following steps:
- The kernel iterates over the dpm_off_irq list and moves the
devices to the dpm_off list while calling a new callback called
resume_early.
- Interrupts are enabled.
- The kernel iterates over all of the devices on the dpm_off list
and moves them to the dpm_active list, while calling the
resume callback (first the bus specific resume function,
followed by the class specific resume.)
This new scheme allows the kernel to properly handle error conditions if
anything bad happens while the suspend process was happening. For
example, if an error is caused during the suspend_late process,
then only the devices on the dpm_off_irq list will be called with
the resume_early callback in order to resume the system in the
proper procedure and recover from the error properly.
Linus's patch is a small patch, not over 400 lines, and generated some
good feedback with other kernel developers who seem to be coming around to
this new scheme. The patch has not shown up in any public kernel trees
yet, but hopefully soon Linux will be able to handle suspend issues in a
much more robust and correct manner.
Comments (12 posted)
June 26, 2006
This article was contributed by Valerie Henson
[
Editors note: this is the second in the Kernel Hacker's Bookshelf
series by Valerie Henson; if you missed it, the first article is over here.]
Computer programs have bugs. As programmers, we know that this is
inevitable, given the trade-off in time and money against creating a
perfect system. Systems with nearly-zero bug counts exist (e.g., the
Shuttle software, only 17 bugs in 420,000 lines of code over the last
11 releases) but they require vast amounts of work to achieve this
level of correctness, work that is completely unjustifiable for most
programs (such as desktop operating systems). But we're programmers,
it's our job to replace time and money with smart ideas.
What would happen if when a program had a memory error - and it
detected that error, ignored it, and drove happily on, oblivious to
the failure? You would expect that this would result in horrible
errors and obscure crashes. But what if it worked - or even made
things better? For example, failing to check the size of a memory
copy operation can result in a buffer overflow attack. Could we do
something clever that would both paper over the memory error and keep
the application running, more or less on track?
A Solution
Martin Rinard and a few of his colleagues got to wondering about this
question and decided to test it - and found that the answer was yes,
you can automatically handle memory bugs in a better, safer way than
either ignoring the bug or terminating the program. I first heard of
their technique,
Failure-Oblivious
Computing, at their talk at
OSDI 2004. The talk
was quite lively; if there was a "Most Laughs per Minute" award,
Martin Rinard would have won it.
The explanation of how failure-oblivious computing is implemented
might seem utterly crazy, but stick with me. Remember, the amazing
thing about failure-oblivious computing is that when you implement it,
it works! (At least for quite a few useful applications.) The basic
idea is to detect memory errors - out-of-bound reads, out-of-bound
writes - and instead of killing the program, handle otherwise fatal
errors by turning them into relatively benign bugs. Detecting the
memory errors requires a "safe-C compiler" - a C compiler that adds
run-time memory access checks.
Safe-C compilers (and languages that always check memory accesses)
have been around for a long time. When they detect a memory error,
the process gets a segmentation fault, and usually exits shortly
thereafter. In failure-oblivious computing, the application never
even knows the memory error happened. In the case of an out-of-bounds
write, the write is silently thrown away and execution continues.
Handling out-of-bounds reads is slightly harder. In this case, a
made-up value is manufactured and returned.
How do you pick which value to return? Two observations lie behind
the answer. First, 0 and 1 are the most common values in computation.
Second, sometimes the program is looking for a particular value before
returning, such as searching for a particular ASCII character in a
string, or iterating through a loop 100 times. The result is a series
of return values that looks something like this:
0, 1, 2, 0, 1, 3, 0, 1, 4,...
So you throw away invalid writes, and make up stuff to return for
invalid reads. Crazy, right? But crazy like a fox.
Why does it work?
Failure-oblivious computing is targeted at a particular class of
applications, ones with short error-propagation distances - in other
words, applications that have relatively short execution paths which
return without affecting much global state. This includes a rather
useful class of applications, such as web servers, mail servers, and
mail readers. It does not include applications like scientific
modeling software, in which one wrong value can fatally corrupt the
final answer. Software programs which handle incoming requests and
return to a waiting state, or have many independent threads of
execution are good candidates for failure-oblivious computing.
Another reason failure-oblivious computing works is because memory
errors are transformed into input errors. Since the programs have to
deal with invalid or malicious input already, often the result is an
anticipated error, one the program knows how to deal with cleanly.
For example, a buffer overflow attack on Sendmail uses a malformed,
too-long, illegal email address to overwrite some other part of the
program's memory. This technique silently discards the writes that go
beyond the buffer, and Sendmail continues on to check the validity of
the input - whether or not it's a correctly formed email address.
Answer: No, so throw it away and go on to the next request. At this
point, Sendmail is back in known territory and the error has stopped
propagating.
A limitation of this technique is the cost of memory bounds checking.
Applications that need to access memory frequently will probably not be
good candidates for this technique. However, applications that are
limited by I/O time, or only need to complete before the human user
notices a delay, won't be much impacted by the cost. Indeed, humans
can't detect delays below about 100 milliseconds - an eternity in
computational time.
Failure-oblivious computing in practice
Rinard and his co-authors evaluated failure-oblivious computing with
versions of several commonly used open source applications with known
buffer overflow attacks: Sendmail, Pine, Apache, and Midnight
Commander. They ran three versions of each program: an unaltered
version, one using just safe-C compilation, and one transformed into a
failure-oblivious program. In each case, the failure-oblivious
version performed acceptably (sometimes better), did not create any
new bugs, and did not suffer any security breaches.
One example was the Pine mail reader. It had a bug in processing the
"From" field for display in the message index. It needed to add a '\'
character in front of certain characters, but allocated a too-small
buffer to copy it into. Some "From" fields could overflow the buffer
and cause the program to segfault and die. The safe-C version of the
program dies as well, because all it can do is detect the buffer
overflow. The failure-oblivious version threw away the writes beyond
the end of the buffer, and then went on to behave exactly correctly!
The length of the "From" field displayed in the index is shorter than
the length of the buffer, so the fact that it was truncated too early
is unobservable. When the user reads a particular message, a
different code path correctly displays the "From" field. Now an email
message that would cause Pine to die every time it was started could
be correctly displayed and handled.
The performance of failure-oblivious Pine was 1.3 to 8 times slower
times on certain tasks, but the total elapsed time to respond to user
input was still in the low milliseconds range. For interactive use,
the slowdown is acceptable. In the case of the Apache server bug, the
performance of the failure-oblivious server was actually better than
either of the other two versions. The higher performance was due to
the fact that the bug would kill an Apache thread each time it was
encountered, incurring the overhead of creating a replacement thread.
The failure-oblivious version did not have the overhead of constantly
killing and restarting threads and could server requests much faster.
Especially exciting is the use of failure-oblivious computing for
widely used network servers, such as Apache and Sendmail. The paper
has in-depth examinations of how buffer overflow bugs are prevented
and indeed ignored by the failure-oblivious versions of these and
other programs.
What failure-oblivious computing means for Linux
Linux has a huge variety of techniques for improving system security
in the face of bugs. SELinux, various stack protection schemes,
capabilities - all these techniques help cut down but don't eliminate
security problems. Failure-oblivious computing would fill one niche,
and in some cases will be the best solution due to the ability to
continue running after a normally-fatal memory error. Wouldn't it be
nice if, when everyone else is suffering from some brand-new zero-day
attack, your system is not only secure but still up and running?
More importantly, this paper teaches the value of experimentation with
obviously crazy ideas. Even after seeing the talk and reading the
paper and talking to the author, I still find it a little
mind-boggling that failure-oblivious computing works. Even more fun
is understanding why it works - a good reason to read the full paper
yourself. I am certain that computers (and computer science) will
continue to surprise us for many years to come.
[Do you have a favorite textbook or systems paper? Of course you do.
Send your suggestions to:
val dot henson at gmail dot com
Valerie Henson is a Linux kernel
developer working for Intel. Her interests include file systems,
networking, women in computing, and walking up and down large
mountains. She is always looking for good systems programmers, so
send her some email and introduce yourself.]
Comments (20 posted)
Version 1.0.12 rc 1 of the
ALSA
sound driver is out. See the
change log for details.
Comments (none posted)
Patches and updates
Kernel trees
Core kernel code
Device drivers
Documentation
Filesystems and block I/O
Janitorial
Memory management
Networking
Architecture-specific
Security-related
Page editor: Forrest Cook
Distributions
News and Editorials
June 22, 2006
This article was contributed by Paul Sladen
Since Sunday, the second greatest GNU/Linux show on Earth (after
Linux.conf.au) rolled into Charles de Gaulle airport, just outside
Paris. This is the organized human carnival where terms like 'specs',
'BOFs' and 'lightening-presentations' fly about during the day and give
way to hushed mentions of Mao! and Talking! during the evening.
On the agenda for this week are nailing down all of the features that
will make it into the next release of Ubuntu (codenamed the Edgy Eft,
as covered by LWN
previously), expected to hit your desktop in a mere four months. You
can keep an eye on all the specifications on the brand new "Blueprint"
component of Launchpad and even take part.
There are over sixty people in attendance, including the majority of
the core Ubuntu distro team---congratulations also to those busy
expecting babies and not able to make it this time. Everyone is
welcome to attend, just grab a peek at the schedule of the day
and turn up at the Radisson
hotel.
Ubuntu has been gradually perfecting the ultimate open-source
development conference, with each edition of the Developer Summit the
process gets smoother and more refined. What matters here is
high-quality, high-bandwidth person-to-person communication. It's
important because the rest of the year everyone is working in separate
countries and time-zones, with the only contact being via text-based
IRC chat.
If you want, Kubuntu, Edubuntu, Xubuntu, Ubuntu, LTSP, they're all
here and Wednesday's morning talk came from Intel aficionados (and
Debian veterans) Mike Jennings and Max Alt. This was a sneak preview
into the technology that Intel is expecting to release to the market
in the next year and how Ubuntu can be ready for increased
power-saving, hardware-based Xen and multi-core goodness; all
out-of-the box, of course!
Thirty years ago there were futurists with predictions of computers
that would talk. During todays bird-of-feather accessibility session,
that came just a little closer to reality... Thanks to the wonderful
discovery of small and efficient GPL'ed eSpeak speech synthesizer,
the next release is likely to feature text-to-speech right from the
installer boot menu.
If you want to know the future of computing for everyone, then perhaps
this is the place to be. It's round, delicious and slightly caramel
in colour---just like the crème flambeau we ate for pudding.
Comments (5 posted)
New Releases
The
GeeXboX project has
announced the
release of version 1.0. "
Here we finally are ... after more than 3
years of perpetual development, GeeXboX finally reaches its so long awaited
1.0 release. Many of you were waiting for it and this is probably the best
edition of GeeXboX that you've ever had."
Comments (none posted)
DesktopLinux
takes a quick
look at the alpha release of Mandriva 2007. "
The first
development images of Mandriva Linux 2007 have been released for download
and testing, the team revealed June 22. Only Mandriva One live CD images
for the i586/x86_64 architectures were currently available, but the team
said the usual full 4-CD sets would appear on Mandriva mirrors within
several days."
Comments (none posted)
Distribution News
Mandriva looks forward to its Mandriva Linux 2007 release, due out this
fall. "
Mandriva Linux 2007 will be available in three versions:
Discovery (for the Linux beginner), PowerPack (for the advanced computer
user) and PowerPack+ (for SOHO users)."
Full Story (comments: none)
The OpenPKG project has separated the OpenPKG 2-STABLE branch from the
OpenPKG CURRENT branch. This branching allows maintenance of the existing
OpenPKG code and RPM specification base and independent development in
OpenPKG CURRENT simultaneously.
Full Story (comments: none)
The opensuse-translation list has been created for the discussion and
coordination of translations of the SUSE Linux distribution.
Full Story (comments: none)
Matt Zimmerman reports that a team was formed to review draft
specifications formulated at the summit. "
Of course, there wasn't
enough time to review and approve all of the specifications written during
the summit, so this process will continue over the coming days. The
deadline to have specifications approved for Edgy features will be next
Thursday, July 6th."
Full Story (comments: none)
Distribution Newsletters
The Debian Weekly News for June 27, 2006 covers a new version of Parsix, a
Debian Query Language, Priorities of Alternatives, Improving Debian's
Publicity, Tracking Critical Bugs, Separating shared Libraries and
Executables, Debian in Cuba, Automatic Loading of Kernel Modules, and
several other topics.
Full Story (comments: none)
The
Gentoo Weekly Newsletter for June 26, 2006 looks at a
call for release testers, a call for x86 arch testers and developers, ALSA
information, Java upgrades and more.
Comments (1 posted)
The Ubuntu Weekly Newsletter covers the Paris Developer Summit in review,
Matthew East interviewed on "Lug Radio", GNOME 2.15.2 now in Edgy, Feature
Of The Week - Pattern Matching in Nautilus, a preview of what is coming
next week, and much more.
Full Story (comments: none)
The
DistroWatch
Weekly for June 26, 2006 is out. "
This week's issue features a
first look review of Xandros Desktop 4, a new version of the commercial
desktop distribution released last week. Is it worth the asking price? As
always, it depends... In the news section we'll take a brief look at
DrakLive, a script responsible for creating all recent builds of Mandriva
One, highlight what looks like growing dissatisfaction with the state of
affairs among Gentoo developers, and direct your attention to a couple of
interesting links - a Creative Commons & Fedora Project competition and a
desktop NetBSD guide. Finally, good news for the fans of Ruby on Rails - a
new PCLinuxOS-based live CD features a complete and pre-configured Ruby on
Rails development environment for the coders of database-backed web
applications."
Comments (none posted)
Package updates
Updates for
Fedora Core 5:
kexec-tools (add ppc64 patch),
scim (update for gtk2 change of path),
openmotif (fixed XmList widget size problem),
kdeutils (bug fix),
kdegraphics (bug fix),
xen (rebase to new Xen-unstable),
kernel (rebase to upstream 2.6.17.1),
cscope (bug fix),
shared-mime-info (bug fix),
tetex (bug fixes),
scim-hangul (rebuilt to fix broken upgrade
path),
autofs (bug fixes),
mkbootdisk (fix tail command usage),
ipv6calc (upgrade to 0.60.0),
k3b (update to version 0.12.15),
NetworkManager (update to 0.6.3),
python (remove perl dependencies from
python-tools),
mesa (bug fixes),
scim-qtimm (bug fix),
xorg-x11-xtrans-devel (updates various
components),
libX11 (updates various
components),
xorg-x11-server (updates
various components),
xorg-x11-xdm (updates
various components),
xorg-x11-xfs (updates
various components),
xorg-x11-xinit
(updates various components),
xorg-x11-apps
(updates various components).
Updates for Fedora Core 4: kernel
(rebase to upstream 2.6.17.1), python
(remove perl dependencies from python-tools), python-docs (built older version for FC4).
Comments (none posted)
Updates for
rPath Linux 1:
dovecot
(add runtime requirement),
conary,
conary-build, conary-repository (update to Conary 1.0.21),
epdb (update to Epdb 0.9.1),
anaconda, anaconda-utils (bug fix),
anaconda, anaconda-utils (bug fixes),
bind, bind-utils (bug fix for x86_64).
Comments (none posted)
Slackware has a Linux 2.6.16.22 generic kernel in testing and lots of other
upgraded packages this week, according to the
slackware-current
changelog.
Comments (none posted)
Newsletters and articles of interest
Benjamin Mako Hill
covers
the Ubuntu summit for NewsForge. "
At the time of writing, there
are more than 170 identified goals under discussion at the Paris developer
summit. Only a portion of these are marked as high priority, few have moved
past the stage of "braindump," and only a handful have been approved. These
specifications provide an idea of where Ubuntu might go in the next
release. Of course, no promises are being made -- officially or
unofficially."
Comments (none posted)
Distribution reviews
Linux.com
reviews Damn
Small Linux - Not. "
DSL-N sports a 2.6 series kernel instead of the
2.4 in DSL for better hardware support. It picked up the ATI card in my
test desktop and the inexpensive USB-to-PS/2 converter on my laptop, along
with the wireless hardware. It's also got a lot of "mainstream" GTK2
applications. Gaim takes over from naim for instant messaging, AbiWord
replaces the Ted editor, Gnumeric spreadsheet preempts Siag, MPlayer
replaces XMMS, and the CUPS printer drivers take the place of
Apsfilter. The Mozilla suite takes care of your Internet browsing, email,
and HTML editing needs."
Comments (none posted)
TechWorld
reviews
a SLED 10 beta. "
I installed the beta of SLED 10 on a Fujitsu
LifeBook P5010 notebook, my stock torture test for new desktop Linux
distributions. The P5010's Intel-based hardware is standard enough to
warrant support, yet funky enough that it throws Linux a few curves. No
Linux install on this machine has ever passed with flying colours -- until
now, that is."
Comments (none posted)
Page editor: Rebecca Sobol
Development
June 27, 2006
This article was contributed by Brad Hards
Brad Hards interviews Gerald Combs of the Wireshark project.
LWN:
Gerald, many system administrators and network software developers
would be familiar with the Ethereal
network sniffer and packet dissector.
You were the original author, and release coordinator for
Ethereal, but you recently
announced that
the project's name was changing to Wireshark and was moving to a
new website. Can you
provide a bit of background on the reason for the name change?
GC:
Several years ago, my former employer registered trademarks for Ethereal
and the Ethereal logo. Along with hosting the main web site, this
provided a valuable service to the community.
Recently I took a job with
CACE Technologies, the people behind
WinPcap
(the Windows Packet Capture Library).
The Ethereal trademarks ended up staying with my former employer, which
meant that someone with no direct involvement with the project had
custody of the name. Also, no one involved with the project had
administrative access to any machines in the ethereal.com domain. This
put the project in a weird position, which forced the name change.
When we were discussing names, my wife came up with the motto "Sniffing
problems a mile away," which I really like.
By the way, the fin pointing left symbolizes the move west that my
family and I are about to make (from Kansas City, MO to Davis, CA).
LWN:
Who will own the Wireshark trademark?
GC:
I will, at least initially. We're looking at the benefits of this
versus setting up an organization around Wireshark. Either way, the
trademarks will be owned by an entity with a vested interest in the
success of the project.
LWN:
What sort of work will you be doing for CACE? How will it relate to
Wireshark?
GC:
My top assignment is to continue working on Wireshark, and to make sure
the project stays strong and healthy.
LWN:
CACE Technologies are supporters of WinPcap and Snort, right? Do you see
the future of Wireshark being affected by closer association with those
products?
GC:
CACE is deeply involved with WinPcap. Its two main developers work
there, and CACE provides services and hosting for WinPcap. There is no
connection with Snort
or Sourcefire.
LWN:
Ah, OK - my mistake on the Snort connection. Of those developer that had
commit rights for Ethereal, how many have moved over to work on Wireshark?
GC:
All of them. They've accepted the name change a lot better than I have.
The Wireshark community is very fortunate to have a team like this
working on the project.
LWN:
There appeared to be some concerns from some members of the wider
Ethereal development community over the approach you took for the
renaming and rehosting. Can you explain why you took the approach that
you did?
GC:
While we were throwing around ideas for the new name, we were vulnerable
to poaching. I would (have) loved to have discussed the name with the user
community, but what would have stopped someone from preemptively
registering a domain name or trademark?
At the same time, my focus was on bringing up the new infrastructure for
the project -- the web site, mailing lists, code repository, build
servers, etc. We ended up postponing the announcement a couple of weeks
while all of that was put into place.
LWN:
How do you see the development approach for Wireshark differing from
what happened on Ethereal?
GC:
In the immediate sense, very little has changed. The same exact
developers are working on the same exact code. Our development process
has evolved over time in order to keep our developers productive and
happy, and to improve the quality of the product. I don't see that
changing in the future.
LWN:
What do you see as the future for Wireshark?
GC:
We're going to continue our role as the world's most popular network
protocol analyzer. Hopefully this means releasing version 1.0 at some
point. :)
The developers are constantly adding great new features to the product,
as well as improving protocol support. I don't see that changing.
We're also making great strides where we haven't done so well in the
past (most notably with security).
There will be a huge benefit from working alongside Loris Degioanni and
Gianluca Varenni, the developers of WinPcap. The advantage that CACE
has to offer greatly outstrips any losses from changing the name.
LWN:
When do you expect the first Wireshark release?
GC:
We already have a pre-release of version 0.99.1 available for
download.
If you're adventurous, we also have automated builds of the latest
development code. The first "real" release (0.99.1 or 0.99.2) should be
out in the next couple of weeks.
Several months ago we established roadmap to define the features that
will be in version 1.0. We've been making steady progress on the
roadmap, and 1.0 will hopefully be released in the next few months.
LWN:
Any thoughts on what is likely to happen to Ethereal?
GC:
Not a clue. No one on the development team has administrative access on
any of the Ethereal servers; their upkeep is now the responsibility of
my former employer. As far as I know they haven't indicated what's
going to happen.
LWN:
So, do you expect to see the mailing list support / discussion move over to
the new Wireshark mailing lists in the near future?
GC:
That's happening right now. Activity on the Wireshark lists is starting
to pick up. I'm not sure if there will ever be an explicit move, e.g.
by pointing mail aliases from the old lists to the new ones, but who knows?
Comments (none posted)
System Applications
Database Software
A new
issue tracker web site has been launched for the Firebird RDBMS system.
"
Anyone is free to find issues. You must register and login if you want to create, comment, vote, or watch issues. Only developers can edit, prioritize, schedule and resolve issues."
Comments (none posted)
Interoperability
Version 3.0.23rc3 of Samba is available.
"
This is the third release candidate of the 3.0.23 code base
and is provided for community testing purposes. If all goes
well, we hope that this will become the production 3.0.23
release."
Full Story (comments: none)
Security
Release 0.24 of Sussen, a vulnerability and configuration checker,
is available.
"
This release is mostly about improving
support for different OVAL features and implementing more tests."
Full Story (comments: none)
Web Site Development
Version 1.8 alpha 3 of the Midgard Open Source Content Management System
has been announced.
"
Midgard's 1.8 branch focus on improved stability for Midgard2 technology preview features introduced in 1.7 branch.
This is the first release from 1.8 branch with full support for initial
Midgard installations. It's addressed for developers and users familiar
with new pear packages of Midgard CMS."
Full Story (comments: none)
Version 2.5 of the Plone web development platform
has been announced.
"
Most of the new stuff in Plone 2.5 is underneath the surface, where the first big chunks of Zope3 plubmbing are now in place -- most notably the PlonePAS user authentication framework, which makes it easy to have Plone authenticate and store member properties in external data sources and the new GenericSetup system for creating and configuring sites.
There's also a slew of minor bugfixes and usability enhancements."
Comments (none posted)
Desktop Applications
Audio Applications
Version 0.2.4 of jack_capture is out with bug fixes and a bigger buffer.
"
jack_capture is a small program to capture whatever
sound is going out to your speakers into a file without
every having to patch jack connections, fiddle around with
fileformats, or set options on the argument line."
Full Story (comments: none)
Version 0.6.5 of kluppe, a jack-based loop player designed for live-use,
is out with new features and bug fixes.
Full Story (comments: none)
The Rotter project has been announced.
"
Rotter is a Recording of Transmission / Audio Logger for JACK.
It was designed for use by radio stations, who are legally required to
keep a recording of all their output. Rotter runs continuously, writing
to a new file every hour. It is released under the GPL licence."
Full Story (comments: none)
Desktop Environments
The following new GNOME software has been announced this week:
You can find more new GNOME software releases at
gnomefiles.org.
Comments (none posted)
The following new KDE software has been announced this week:
You can find more new KDE software releases at
kde-apps.org.
Comments (none posted)
KDE.News
has announced
the June 25, 2006 edition of the
KDE Commit-Digest.
"
In this week's KDE Commit-Digest: Support for the Encapsulated PostScript
format in KViewShell. Important progress in Strigi desktop search. The
beginnings of LastFM support for Amarok, whilst the experimental interface
layout is reverted - for the time being, at least.
Import into KDE SVN of the "GMail-style conversation view for KMail" project,
with breakthrough progress in the "OSCAR (AIM) File Transfer" project, both
for the Summer Of Code. Ingredient substitution functionality in KRecipes."
Comments (none posted)
Electronics
Version 0.6.2 of
Signs, a development environment for hardware designs in various hardware description languages, is out.
"
Besides many bugfixes this release features an improved Eclipse plugin which includes a new Signs console, autobuilder improvements and outline view navigation. The VHDL compiler has support for attribute elaboration, VHDL87 style file declarations and reports precise source locations for netlist annotations and error messages. New features in this release include an experimental Berkeley SIS interface, BLIF netlist output, adder and comparator generation and better support for testbenches."
Comments (none posted)
Financial Applications
Version 2.6.13 of
SQL-Ledger, a web-based accounting package, is out with bug
fixes and more.
Comments (none posted)
Games
The WorldForge game project
has announced
The release of Eris 1.3.11.
"
Eris is the WorldForge client-side session layer, used by many existing clients.
This release adds support for Task objects, which can be presented to the user, and display a live progress value (based on client side prediction). The API is straightforward, but may change based on feedback from clients.
There is now better support for logging out of accounts, and for de-activating characters. In co-operation with the server, the accounts list of characters is kept up to date in response to character creation. Taken together, these changes mean that it is no longer necesary to restart clients to change server, account or character."
Comments (none posted)
The WorldForge game project
has announced
Sear 0.6.2.
"
This version has task support allowing basic building tasks to be performed. Current tasks include chopping down trees, stripping branches and sharpening into stakes to facilitate stockade construction.
This release also contains many improvements to the rendering system and long standing rotation and positioning bugs have been fixed."
Comments (none posted)
GUI Packages
The FLTK project is holding
a poll
on whether to use the Cairo graphics library.
"
Cairo would replace all system-dependent calls to 2D graphics rendering in FLTK2, making it easier to maintain the code base and generating much nicer graphics, opening up a wealth of new features to all FLTK2 developers. Cairo renders into image buffers, renders text along spline curves, can render backgrounds, highlights, grades, etc. . It is LGPL like FLTK2 and runs on all our supported platforms."
Comments (none posted)
Imaging Applications
Version 0.44 of the Inkscape vector graphic drawing tool is available.
"
Inkscape 0.44 adds many new
features, is faster and more usable, better supports SVG, is translated
into more languages (17 on last count), and adds a lot of polish and
refinement.
Major new features include Layers dialog, support for clipping and
masking, improved PDF export with transparency, configurable keyboard
shortcuts, innovative "node sculpting" capability in Node tool, and the
Outline mode. Significant gains are achieved in performance, especially
in screen rendering and Node tool."
Full Story (comments: none)
Interoperability
Version 0.9.16 of Wine has been
announced.
Changes include:
More work on Direct3D shaders, Major DirectDraw rewrite on top of Direct3D,
Support for debug information in Dwarf format,
Beginnings of an OleView Winelib application and Lots of bug fixes.
Comments (none posted)
The June 19, 2006 edition of the
Wine Weekly Newsletter
is available. Topics include:
News: Linux.com Article, Safedisc Support Revisited,
Vertex Buffer Objects, Wine on 64-bit AMD / Ubuntu and DWARF2 Debugging.
Comments (none posted)
Medical Applications
LinuxMedNews
looks at the mm2mm project.
"
The MirrorMed project and SynSeer is proud to announce the mm2mm project. mm2mm stands for Medical Manager to MirrorMed. mm2mm is a set of scripts and services designed to allow Medical Manager users to switch to MirrorMed."
Comments (none posted)
Music Applications
Version 0.32 of
Gneutronica,
a MIDI drum machine for Linux, is available with several new capabilities
and bug fixes.
Full Story (comments: none)
Languages and Tools
Caml
The June 27, 2006 edition of the Caml Weekly News
is out with new Caml language articles.
Full Story (comments: none)
PHP
Version 1.0.1 of the PHP Yadis library is available.
"
This release includes bugfixes for the Yadis discovery
service interface. Please upgrade immediately."
Full Story (comments: none)
Python
Version 2.5 beta 1 of the Python language
has been announced.
"
Since the alpha releases, a slew of bug fixes and smaller new
features have been added. See the release notes (available from the
2.5 webpage) for more. The first beta also includes the results of the
Iceland NeedForSpeed sprint, resulting in some significant speedups."
Comments (none posted)
The June 26, 2006 edition of Dr. Dobb's Python-URL! is online with
a new collection of Python article links.
Full Story (comments: none)
A new
Python Tutorial Wiki
has been launched.
"
This infogami wiki contains an editable copy of the standard Python tutorial. Feel free to log in and improve it, or leave a comment if there's something that you think ought to be fixed or clarified. Please follow the usage guidelines when editing."
Comments (none posted)
Ruby
The June 25th, 2006 edition of the
Ruby Weekly News looks at the latest discussions
on the ruby-talk mailing list and comp.lang.ruby newsgroup.
Comments (none posted)
Page editor: Forrest Cook
Linux in the news
Recommended Reading
ZDNet Asia
reports on a directive from the Taiwanese government that requires
Linux compatibility for new desktop PC purchases.
"
The Central Trust of China, Taiwan's government procurement agency, has commissioned the Taipei Computer Association (TCA) to ensure that bids from PC vendors include equipment that are compatible with Linux. So far, about 33 desktop PC models from Acer, Asustek, Lenovo and Hewlett-Packard, have been certified Linux-compatible by the TCA, reported Taiwan's Chinese language newspaper, Economic Times."
Comments (9 posted)
Linux-Watch
looks at the issue of GPL violations by small Linux distributions.
"
Woodford's error was that while he does provide MEPIS's modified Debian/Ubuntu kernel source code in a Debian source-package, he had not provided copies of the source code that was available somewhere, which he had not modified.
So, for example, say I released Steven's Special Penguin Sauce Linux. In it, I'd have my own modifications to the kernel source code, and the usual Linux utilities like the vim screen-based text processor. I would have to provide my users with not only my kernel's code, but also with vim's source code as well, even though I hadn't done a thing to its code."
Comments (22 posted)
Trade Shows and Conferences
KDE.News
covers
the recent Korean LinuxWorld Conference and Expo.
"
On June 5-7th the Korean version of the LinuxWorld Conference and Expo series opened its doors for the first time in Seoul. The visitors could learn about various Asian distributions which use KDE including Haansoft. The Korean team of translators with its head Cho Sung-Jae ran a booth showing the current KDE as well as distributing the brand new Kubuntu Dapper CDs to people - which was a great success."
Comments (none posted)
Pat Eyler
points to the
best blogs on the RailsConf. "
Well, the biggest news in the Ruby
world this last week has been RailsConf (and of course, all the news that
broke there). I didn't get to go, so I've been trying to follow the
various blogs about how it went. You know things were good when you see
comment's like this one (by Curt Hibbs), "My notes for this talk are
completely blank because it was so engrossing that I forgot to write
anything down!"."
Comments (none posted)
Companies
CR80News
reports on the release of Linux card printer drivers from Evolis.
"
Evolis, the French manufacturer of solutions for plastic card customization, has announced the release of a Linux driver for its entire range of printers, thus making them available, affordable and suitable to a larger scope of users." The driver source code does not appear
to be available.
Comments (none posted)
Techworld.com
reports that Martin Taylor, leader of Microsoft's anti-Linux
'Get the Facts' campaign, is leaving the company.
"
Taylor's brisk departure comes at the same time as the surprise announcement that Microsoft is working with a major critic from the open source field, Lawrence Lessig, to facilitate Creative Commons licences within Office documents. Stanford law professor Lessig, last year bitterly criticised Microsoft for tactics such as Get the Facts, accusing it of carrying on "all out war" with open source, and Linux in particular."
Comments (14 posted)
ElectronicsWeekly.com
reports on Motorola's joining of the Eclipse IDE community.
"
Motorola has joined the Eclipse open source community which supports the adoption of open-source embedded software and tools including Linux.
Motorola is working with the Eclipse Foundation to propose an Eclipse Tools for mobile Linux (TmL) project which will support development of C++ applications targeting mobile devices."
Comments (none posted)
Linux-Watch
looks into Novell's recent board shakeup.
"
While Novell has embraced Linux and open-source with its acquisition of Ximian and SUSE, it has been unable to profit from these technologies as quickly as many of its investors would like.
Messman, and his plans for Novell, had been criticized since last fall by major stock holders Blum Capital Partners LP investment firm and Credit Suisse First Boston on several fronts. Messman, analysts at both firms felt, had not been moving fast enough to cut the fat from Novell."
Comments (19 posted)
Business
Linux Journal
looks
at how businesses can use thin clients with Linux Terminal Server
(LTS). "
A Linux Terminal Server offers any business an elegant and
cost-effective way to integrate the power of open source. In this article,
I review some basics of network topology and offer suggestions about how to
install a prototype server. I top it off with some tips for
business-specific installations and configuration guidance."
Comments (none posted)
Interviews
Computerworld
talks to
Oracle's director of Linux engineering, Wim Coekaerts.
"
Oracle is involved with Linux, Coekaerts says, foremost because Oracle uses Linux. A lot of Linux. Right now, almost 10,000 Linux servers are in use internally at Oracle. Essentially, every production server at Oracle is a Linux server.
In addition, about 9,000 developers at Oracle are using Linux to develop products.
A lot of that can be attributed to one simple factor: cost savings."
Comments (none posted)
Groklaw
presents an interview with Richard Stallman.
"
Groklaw's own Sean Daly was in Barcelona at the 3rd International GPLv3 Conference in Barcelona, Spain, this week, and while there, he had the opportunity to interview Richard Stallman
[
as Ogg (3.8 MB)].
He asked Mr. Stallman what programmers should focus on next, about DRM, binary drivers, proposed changes to the GPL, and what he feels he has yet to accomplish."
Comments (none posted)
Behind Ubuntu
interviews Jane
Weidman. "
What have you been working on for Dapper?
Tracking the targeted Dapper specs through their development life-cycles,
getting regular Dapper Development Status Updates published, co-ordinating
the Edubuntu team, and attempting to get the Edubuntu Cookbook written,
responding to loads of public enquiries and generally keeping busy. Those
4am Status Update meetings ROCK! (not)."
Comments (1 posted)
Resources
Sharad Acharya
looks at WebRowSet in an O'Reilly article.
"
Database to XML and back again. If everyone's doing some or all of this,
then shouldn't we write it once, get it right, and standardize? JDBC 3.0's
WebRowSet offers a profound increase in power over the old ResultSet."
Comments (none posted)
O'ReillyNet
takes
a look at podcasting. "
There have been quite a few articles and
books on podcasting already, and some of them are excellent--particularly
the ones that deal with some small part of the process. Quite often,
however, they neglect to mention a common goal of podcasting: to be like a
radio station, slick and with easily understood formats. That's odd to
me. Podcasting is an ideal medium for experimentation because the costs are
so low, so you should try out some off-the-wall stuff."
Comments (9 posted)
Howtoforge has published
a tutorial on the use of PAM And EncFS.
"
This HowTo is about creating a user-session-safe directory which offers security on- and offline. This is done with PAM, a module named pam_script and Encfs ("Encrypted Filesystem"). This safe directory is used to store credentials and other sensitive information during a session. When a usersession is ended, in the worst case an encrypted directory remains on the harddrive. In the best case everything is removed. This construction is only meant to store information during a session, not for documents or any other valid information."
Comments (none posted)
Linux.com has some
Vim tips.
"
Vim beginners may be puzzled when it comes to doing search and
replace operations in Vim. The syntax can be a bit arcane, but after you've
practiced, it becomes second nature. Let's take a look at how easy it can
be. Let's start by looking at searches and doing search and replace
operations within Vim. You can do a search in normal mode by using
/searchstring . This will search forward through the file for searchstring
. Likewise, running ?searchstring will search backwards through the
file."
Comments (1 posted)
ZDNet
looks at the collaborative aspects of Web 2.0.
"
"The key part of Web 2.0 is that there is something about these new tools that enable new practices of collaboration," said John Seely Brown, a consultant and former chief scientist of Xerox, who spoke at the Collaborative Technology Conference in Boston last week. "Web 2.0 is a profoundly participatory medium."
Though it lacks a precise definition, Web 2.0 generally refers to Web services that let people collaborate and share information online. In contrast to the first generation of Web offerings, Web 2.0 applications are more interactive, giving people an experience more akin to a native desktop application as opposed to a static Web page."
Comments (2 posted)
Maciek Kaminski
looks at the
YATE project on O'Reilly.
"
In this article, I will present the YATE project (Yet Another Telephony Engine). YATE's API boundaries separate the parts of a telephony application that have to be "fast" from those that have to be just "fast enough." As a result, YATE allows developers to write scripts in higher-level languages, while leveraging the performance of native libraries without sacrificing too much efficiency."
Comments (none posted)
Reviews
Joe 'Zonker' Brockmeier
investigates the RSS and Atom feed reader Akregator on Linux.com.
"
Information overload is a serious problem for most users. We all have so many sources of information to deal with, it's hard to keep them under control. One way to help deal with information glut is to use a good RSS and Atom feed reader, such as Akregator.
One of the reasons I decided to start using Akregator is that I noticed the Sage extension for Firefox would throw an "XML Parse Error" on a few feeds that other readers -- like Akregator -- handle just fine. For example, Sage gives me an error on the Kubuntu feed, but Akregator parses it just fine."
Comments (1 posted)
electropages.com
reviews Arcom's SBC-GX533 Embedded Linux development kit.
"
The kits SBC-GX533 board is well suited to deeply embedded, remote or unattended installations demanding reasonable processing power. It is a low profile, fan-less, RoHS compliant EBX form factor board, based on a 400MHz AMD Geode GX533 1.1W processor. It has 512MB of DDR DRAM and 32MB of Flash installed, of which 13MB are used by the Linux image. This leaves 19MB of physical memory, equivalent to about 38MB of usable space, available for Linux application and data storage. The board also features TFT or CRT support, an analog touchscreen interface, dual 10/100BaseT Ethernet ports, CompactFlash (CF+), 4 serial and 4 USB ports. Industrial expansion is provided through an 8-bit TTL I/O port, a PC/104 and a PC/104+ site. All usual PC interfaces are also included."
Comments (4 posted)
NewsForge
looks
at a few content management systems. "
It seems as if
everyone is a Web publisher today -- from the habitual bloggers and online
diarists to the companies running major news outlets, portals, and
magazines -- and they're all using some kind of database-backed content
management system (CMS) to do it. There are a lot of CMS choices -- Drupal,
Mambo, Bricolage, WordPress, and Plone are some of the most recognizable
names. While they all perform the same basic functions, you have to pick
only one. How do you do it?"
Comments (none posted)
Linux.com
takes a
look at EncFS. "
EncFS is an easy-to-use, command-line tool for
storing information in encrypted form. It's not really a filesystem, but it
pretends to be one at the CLI. If you've been searching for a means of
encrypting and decrypting your sensitive data easily, here it is."
Comments (none posted)
NewsForge
looks
at the Gnash project. "
The Gnash project has been developing a
free software Flash player since December. Filling one of the last major
gaps on the GNU/Linux desktop, it is one of the Free Software Foundation's
high-priority projects. We covered the project several months ago, when
compiling the code was problematic. Now that Gnash has reached the 0.7.1
version, the player is still rough, but enough has been done to give us an
indication of what the final version might be like."
Comments (2 posted)
Linux.com
reviews
Ion. "
The philosophy behind Ion is that window managers aren't
meant to be seen, but to manage windows; anything more is dross. A few
window managers out there share this aesthetic, such as Ratpoison, but
they're rare in today's world of photogenic desktop environments, which
seem to always be looking for an opportunity to add more decoration and
ornament."
Comments (9 posted)
Linux.com
looks at
Linux-VServer. "
Linux-VServer allows you to create virtual private
servers and security contexts, which operate like normal Linux servers but
allow many independent servers to be run simultaneously in one box at full
speed. It utilizes operating system-level virtualization to enable the
kernel to partition resources. All services, such as SSH, email, Web, and
databases, can be started on such a VServer, without modification, just as
they can on a real server. This also means you can restart your mail
server, for example, without rebooting your Web server, while both co-exist
on the same physical machine. Each virtual server has its own IP address,
hard drive space, user account database, and root password, and doesn't
interfere with other virtual servers."
Comments (9 posted)
eWEEK
reviews the Opera 9 browser.
"
One of the coolest and most valuable new features in Opera 9 is its search customization feature. On any Web site to which we surfed with Opera 9, we could right-click in a search field and then choose to add the site's search engine to our list of integrated engines. We could even make it our default search engine. This is a feature that we have been looking for in browsers for a long time now, and Opera 9 has finally pulled it off."
Comments (6 posted)
Miscellaneous
ComputerWeekly
covers Novell's launch of a training course on a USB drive.
"
The SUSE Linux Enterprise 10 First Class course comes on a USB device complete with the learning content and an installed version of the beta SUSE Linux Enterprise Server and Desktop 10 on a virtual machine.
The USB device will run on both Windows and Linux, giving students complete flexibility in how, and where, to study, said Novell.
Putting the complete initial training course on a USB drive is an industry first, said Daniel Veitkus, vice president for training services at Novell."
Comments (none posted)
Page editor: Forrest Cook
Announcements
Non-Commercial announcements
The folks at OpenOffice.org respond to the Microsoft Office 2007
test drive campaign.
"
Microsoft today announced the opening of a "test drive" so that
people can see what Microsoft Office 2007 might look like when it
finally goes on sale.
The OpenOffice.org Community invites potential upgraders to go one
better - download the full OpenOffice.org 2 office suite today for a
test drive, and if you like it, use it free for as long as you like.
It's the ultimate no-strings-attached test drive - if you enjoy the
test drive, keep the car!"
Full Story (comments: 2)
Commercial announcements
2X Software Ltd has announced the release of the 2X ApplicationServer Linux
client, which allows Windows applications to be run under Linux.
"
Until now, Linux users could only run Windows applications using
Windows simulation software (e.g. WINE). This type of software is
typically difficult to configure and only works with a limited number
of applications. In addition, this generally would only support older
versions. With 2X ApplicationServer however, any Windows application
can be tunneled via RDP onto a Linux desktop."
Full Story (comments: 2)
ActiveGrid, Inc. has
announced the availability of the ActiveGrid Studio 2.0
development environment.
"
ActiveGrid Studio 2.0 is now the first
enterprise solution on the market that rolls AJAX, mash-ups, and the
ability to take advantage of exposed back-ends in SOA architectures into a
development tool that's easy to use and optimized for common enterprise
configurations."
Comments (none posted)
Bell Microproducts Inc. has
announced a partnership with Red Hat, Inc.
"
"Red Hat Enterprise Linux is the market-leading open source platform in our core markets," said Gary Gammon, senior vice president of marketing for Bell Microproducts' Enterprise Division. "This partnership allows us to provide a one-stop-shopping opportunity for our customers by providing solutions that are built around Red Hat Enterprise Linux."
Comments (none posted)
CodeWeavers has announced versions 5.0.3 of their CrossOver Office Server
and CrossOver Office Professional products.
"
This version will bring all of the CrossOver 5.0 features, including support
for Office 2003 and the ability to manage virtual Windows environments
(aka Bottles), to the Solaris and Linux thin client environments."
Full Story (comments: none)
Web hoster CrystalTech
is offering a Linux-based dedicated hosting plan that costs
$49.95 per month.
"
The feature-rich Linux Dedicated plan features a 1.8GHz processor, 512MB of RAM and 250GB of bandwidth each month."
Comments (none posted)
Empower Technologies Corporation has
announced a collaboration with Texas Instruments
Incorporated.
"
Technologies Corporation (Empower) is very pleased to announce that it has
begun a joint international sales effort with Texas Instruments
Incorporated (TI) to promote its LDK591x family of LEOs (LinuxDA Embedded
O/S) for TI's OMAP591x dual-core processor embedded software development
kits to over 2,000 of the top universities and technical colleges
worldwide."
Comments (none posted)
Novell, Inc. has
announced the selection of Ronald Hovsepian as its new CEO,
he will replace Jack Messman.
"
Novell, Inc. today announced that its Board of Directors has elected President
Ronald W. Hovsepian, 45, to the additional position of chief executive
officer, effective immediately. Hovsepian, who also has been elected to the
Board of Directors, has been president and chief operating officer since
October 2005. The Company also announced that Thomas G. Plaskett, a
director of Novell since November 2002, has been elected non-executive
Chairman of the Novell Board."
Comments (none posted)
OpenLogic, Inc. has
announced the release of OpenLogic Enterprise 4.0.
"
OpenLogic Enterprise 4.0
gives enterprises a central repository of approved, certified open source
products within the corporate firewall; enables companies to automatically
install, configure and integrate this software on remote servers and
desktops (using existing software deployment tools if they choose) and
provides an audit trail of open source software deployment.
As with past versions, OpenLogic Enterprise 4.0 allows enterprises to
control which open source products are included in the approved library,
and can limit usage on various criteria including license type."
Comments (none posted)
SGI has
announced a new blade server product.
"
The new Linux(R) systems will deliver double the performance of today's award-winning Altix(R) servers, while drawing less power and offering more density and flexibility for demanding, data-intensive applications.
The new SGI(R) Altix(R) 450 bolsters SGI's mid-range offerings with up to 2.5 times the system performance of the current Altix(R) 350(R) server
at a lower cost. With dual-core Itanium 2 processors, SGI also is
dramatically increasing the performance of its existing SGI(R) Altix(R)
4700 servers at no extra system cost to customers."
Comments (none posted)
SecuGen Corporation has
announced release 9 of its fingerprint recognition
Software Developer Kit.
"
SecuGen's minutiae-based fingerprint recognition technology allows a
person's fingerprints to work like unique digital codes that are more
secure and convenient than passwords and that are not easily lost, stolen
or forgotten. This newest release of the SecuGen SDK Collection provides
software developers with the widest choice of operating system platforms
for their biometric applications."
Comments (none posted)
Version 2.1 of Wing IDE, the Advanced Software Development Environment
for Python, is out.
"
Wing IDE provides powerful debugging, editing, code intelligence, and
search capabilities that reduce development and debugging time, cut down
on coding errors, and make it easier to understand and navigate Python
code."
Full Story (comments: none)
New Books
Apress has published the book
The Definitive Guide to SQLite by Mike Owens.
Comments (none posted)
SitePoint has published the book
Build Your Own AJAX Web Applications
by Matthew Eernisse.
Full Story (comments: none)
Pragmatic Bookshelf has published the book
From Java To Ruby
by Bruce Tate.
Full Story (comments: none)
Education and Certification
The Linux Professional Institute has announced new MySQL exams.
"
Linux Professional Institute (LPI) the world's
premier Linux certification organization, and MySQL AB, developer of the
world's most popular Open Source database,
today announced a joint
initiative to offer MySQL 5.0 certification exams through LPI's global
proctor network, beginning with the C3 Expo, June 27th 29th, 2006 at
the Javits Center in New York City. Prosoft Learning Corporation, LPI's
affiliate in North America will be offering these exams at C3 Expo along
with LPI Certification exams."
Full Story (comments: none)
The Linux Professional Institute and Canonical Ltd. have
"
... jointly announced the world's first Ubuntu Certified
Professionals: Fred Strauss and Khayeni Ndlovu of Johannesburg, South
Africa. Mr. Strauss and Mr. Ndlovu were amongst a group of people who
wrote paper versions of the Ubuntu certification exam at LinuxWorld
Johannesburg on May 18, 2006. The Ubuntu Certified Professional exam is
now available worldwide at over 7,000 Thomson Prometric and Pearson VUE
testing centres."
Full Story (comments: none)
Calls for Presentations
KDE.News has sent out a
reminder
for aKademy 2006 presentations.
"
The deadline for aKademy 2006 submissions is fast approaching. We are still
looking for technical contributions, community success stories, tales of
interoperability, industrial innovation and integration and cross-desktop
creativity. The
Call For Papers
says that a 300 word abstract and a short bio
is needed to secure your place for consideration by the programme committee."
Submissions are due by June 30, 2006.
Comments (none posted)
Upcoming Events
The 2006 Gelato ICE Itanium Conference and Expo has been announced.
"
Gelato ICE: Itanium Conference & Expo is the world's only event dedicated
to Linux on the Intel Itanium architecture. This conference will address
current high-performance computing issues and collaborative solutions
specific to Linux on the Itanium processor, and will feature technical
presentations, formal papers, poster sessions, and the exchange of
information in formal and informal settings."
The event will take place at the Matrix, Biopolis, Singapore on
October 1-4, 2006.
Full Story (comments: none)
KDE.News
mentions the
upcoming KDE Four Core meeting.
"
In another event in the series of meetings leading to the KDE 4.0 release,
the developers of the core libraries will meet in the Norwegian woods (this
bird has flown) from July 1st to July 7th. This meeting, co-sponsored by
Trolltech and SUSE, is labelled KDE Four Core, as it is intended to be the
direct successor of the KDE Three Beta and KDE Three meetings, that led to
the refining of KDE releases 2.0 and 3.0 respectively. But, unlike those,
this meeting is only one in a series of "KDE Four" meetings, that started
with KDE Four Multimedia."
Comments (none posted)
The Ohio LinuxFest 2006 event will take place in Columbus,
Ohio on September 30, 2006.
"
The LinuxFest will be held at the Greater Columbus Convention Center,
and is a single-day event with sessions for experienced and
inexperienced Linux users, as well as an expo floor for commercial
exhibitors and non-profit Free and Open Source Software (FOSS)
projects. More than 700 people attended the LinuxFest last year, and
organizers expect an even larger turnout this year."
Full Story (comments: none)
The Plone Conference 2006 event
has been announced.
"
Plone Conference 2006 will be held October 25-27, 2006 at the Seattle Center Northwest Rooms in Seattle, Washington USA!"
Comments (none posted)
The tutorial sessions for the 2006 SciPy conference
have been announced.
"
As part of this year's SciPy 2006 Conference, we've planned Coding
Sprints on Monday and Tuesday (August 14-15) and a Tutorial Day
Wednesday (August 16)--the normal conference presentations follow on
Thursday and Friday (August 17-18)."
Comments (none posted)
| Date | Event | Location |
| June 29, 2006 | Corporate Channel and Computing
Expo(C3) | (Jacob K. Javits Convention Center)New York, NY |
| June 29 - 30, 2006 | GCC and GNU Toolchain
Developers' Summit | (Ottawa Congress Centre)Ottawa, Canada |
| June 29 - 30, 2006 | 2006 GNOME Users and Developers
European Conference(GUADEC) | Catalonia, Spain |
| June 29 - July 2, 2006 | UKUUG Linux
Technical Conference | (University of Sussex)Brighton, UK |
| June 30 - July 1, 2006 | WebTech
2006 | (Kempinski Hotel Zografski)Sofia, Bulgaria |
| July 3 - 4, 2006 | 3rd European Lisp
Workshop | Nantes, France |
| July 3 - 5, 2006 | EuroPython
2006 | (CERN)Geneva, Switzerland |
| July 4 - 8, 2006 | 7th Libre Software
Meeting(LSM) | (Nancy 1 University)Vandoeuvre-les-Nancy, France |
| July 5 - 8, 2006 | V Jornades de Programari
Lliure | Barcelona, Spain |
| July 8 - 9, 2006 | PostgreSQL Anniversary
Summit | Toronto, Canada |
| July 10 - 11, 2006 | Global
db4o User Conference(dUC) | (Imperial College, South Kensington)London, UK |
| July 13 - 14, 2006 | Detection of
Intrusions and Malware, and Vulnerability Assessment(DIMVA) | Berlin, Germany |
| July 15 - 16, 2006 | Crystal Space
Conference | (University of Aachen)Aachen, Germany |
| July 16 - 19, 2006 | 2nd International Symposium
on Free/Open Source Software, Technologies and Content(FOSSTEC 2006) | Orlando, Florida,
USA |
| July 19 - 22, 2006 | Ottawa Linux Symposium
2006(OLS 2006) | Ottawa, Canada |
| July 22 - 23, 2006 | LugRadio Live | (Wolverhampton
University)Wolverhampton, UK |
| July 24 - 28, 2006 | O'Reilly
Open Source Convention(OSCON 2006) | Portland, Oregon |
| July 29 - August 3, 2006 | Black Hat USA 2006 Briefings and
Training | (Caesars Palace)Las Vegas, NV |
| August 4 - 6, 2006 | DEF CON 14 | (Riviera
Hotel)Las Vegas, NV |
| August 4 - 6, 2006 | Wikimania | (Harvard Law
School)Cambridge, MA |
| August 4 - 6, 2006 | Vancouver Python
Workshop | Vancouver, BC, Canada |
| August 8 - 10, 2006 | Flash Memory
Summit | (Wyndham Hotel)San Jose, CA |
| August 14 - 17, 2006 | LinuxWorld San Francisco
2006 | (Moscone Center)San Francisco, CA |
| August 17 - 18, 2006 | Python for
Scientific Computing(SciPy2006) | (Caltech)Pasadena, CA |
| August 18 - 19, 2006 | The Ubucon
Conference | (Google headquarters)Mountain View, CA |
Comments (none posted)
Web sites
Here's a website that free software hackers might want to avoid. Microsoft
Corp. has
announced
CodePlex, an online collaborative software development portal that is also
a vehicle for sharing source code.
Comments (10 posted)
Audio and Video programs
Episode #2 of the podcast
The Linux Action Show is available.
"
In episode two (The Gaming Edition!) of The Linux Action Show! We cover a new non-profit organization being formed to establish a standard Linux-based mobile platform, and we discuss the interesting reasons the Christian Science Monitor has for switching to Open Source Software. Also, we do a in-depth comparison of a few Open Source First Person Shooters (We get our game on under Linux!), the Ethereal developer changes the project name with out discussing it with contributors, and we bounce around Google Earth for Linux."
Comments (1 posted)
KDE.News
mentions
a new podcast with Jonathan Riddell.
"
UbuntuOS have launched their new extended Podcast with an interview of Kubuntu developer Jonathan Riddell discussing the plans for the next release, Kubuntu Edgy."
Comments (none posted)
Page editor: Forrest Cook
Letters to the editor
| From: |
| Alan Hicks <alan-AT-lizella.net> |
| To: |
| editor-AT-lwn.net |
| Subject: |
| Some Suggestions on LWN Letters and Subscribers |
| Date: |
| Wed, 21 Jun 2006 20:42:59 -0400 |
I wanted to weigh in on the "Letters to the Editor" page and maybe beat
a dead horse or two. :^)
As some one who has written in and been published on this page before, I
would be mildly upset to see it removed. That page need not always be
present, but when it is, I find it almost always has incredible content.
I think it's unrealistic to assume that comments can take the place of
a well formed e-mail created for publication. People tend to put more
thought and time into such things. Also, you will find that some people
may not be subscribers or regular readers and write in. For example,
suppose LWN writes an article about certain actions in the community and
ruffles some feathers (whether that ruffling is warranted is
immaterial). The letters page gives those people a very prominent way
to respond to both yourself, and the readership as a whole.
Really, is there a need to remove it if every weekly edition does not
contain a Letters page?
As for subscribership, I had hoped that the send-a-link thing might help
out, and a little feedback on this front would be helpful. I've
forwarded a few links to small private mailing lists and my circle of
geek friends for particularly interesting articles, but I don't think
it's been successful in convincing even one person to subscribe.
Something else obviously needs to be done to encourage subscribers.
Some time ago when this discussion came up I suggested a general LWN
mailing list for project developer subscribers. I still think that's
worth looking into as a way to encourage $5 a month subscribers to up
the ante to the full $10, and would be relatively easy enough to deploy
in a test case. In the interest of full discloser to your readers, I am
a $10 a month subscriber and have been for years.
I was originally going to post this as a comment, but decided to make it
a Letter to the Editor instead. :^)
--
It is better to hear the rebuke of the wise,
Than for a man to hear the song of fools.
Ecclesiastes 7:5
Comments (4 posted)
Page editor: Forrest Cook