G. Paul Ziemba | 3 Jul 2010 19:21
Picon
Favicon

[quagga-dev 8047] bgp_routemap.c handling of attr memory

Hi quagga-devs,

I think some of the bgp route-map attr modification code is
causing a memory leak. If you disagree, please let me know
what I'm missing!

For example, here is the function to prepend an aspath:

    static route_map_result_t
    route_set_aspath_prepend (void *rule, struct prefix *prefix, route_map_object_t type, void *object)
    {
      struct aspath *aspath;
      struct aspath *new;
      struct bgp_info *binfo;

      if (type == RMAP_BGP)
	{
	  aspath = rule;
	  binfo = object;

	  if (binfo->attr->aspath->refcnt)
	    new = aspath_dup (binfo->attr->aspath);
	  else
	    new = binfo->attr->aspath;

	  aspath_prepend (aspath, new);
	  binfo->attr->aspath = new;
	}

      return RMAP_OKAY;
(Continue reading)

Nick Hilliard | 6 Jul 2010 18:07
Picon

[quagga-dev 8048] Route server specification

Folks,

comments to the authors would be welcome on the following:

http://www.ietf.org/id/draft-jasinska-ix-bgp-route-server-00.txt

Nick
Iain Royle | 7 Jul 2010 22:05
Favicon

[quagga-dev 8049] Bugfix 4467 broken times? v0.99.16

http://bugzilla.vyatta.com/show_bug.cgi?id=4467

All:
i believe the referred to bug has broken time representations.

testing1.yyz# show ip bgp x.x.x.x
BGP routing table entry for x.x.x.x/24
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  Advertised to non peer-group peers:
  x.x.x.x
  (65501) xxxxx xxxxx
    x.x.x.x from x.x.x.x (x.x.x.x)
      Origin IGP, metric 0, localpref 100, weight 200, valid,
confed-external, best
      Last update: Wed Dec 31 21:55:18 1969

note the "last update" time.
Attachment (iain_royle.vcf): text/x-vcard, 280 bytes
http://bugzilla.vyatta.com/show_bug.cgi?id=4467

All:
i believe the referred to bug has broken time representations.

testing1.yyz# show ip bgp x.x.x.x
BGP routing table entry for x.x.x.x/24
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  Advertised to non peer-group peers:
  x.x.x.x
(Continue reading)

david chosrova | 8 Jul 2010 18:25
Picon

[quagga-dev 8050] [PATCH] Bug 571 local-as options replace-as, dual-as should be possible

Hello,

I'm interested in routing and dev, so I have tried to implemnent the "replace"
command to start. I have tested and it seems to work.

Thanks you for your comment.


David Chosrova

--
" Un homme sans passe est plus pauvre qu'un homme sans avenir" ( Elie Wiesel )
Attachment (replace.patch): text/x-patch, 6498 bytes
<div>Hello,<br><br>I'm interested in routing and dev, so I have tried to implemnent the "replace"<br>command to start. I have tested and it seems to work.<br><br>Thanks you for your comment.<br><br><br>David Chosrova<br clear="all"><br>-- <br>" Un homme sans passe est plus pauvre qu'un homme sans avenir" ( Elie Wiesel )<br>
</div>
david chosrova | 10 Jul 2010 19:34
Picon

[quagga-dev 8051] Fwd: [PATCH] Bug 571 local-as options replace-as, dual-as should be possible

Hello,

I think I forgot the commit message in th previous post.

 bgpd: Add support for replace-as command.
   
    * bgpd/bgpd.h
      * Add a flag ( PEER_FLAG_NO_PREPEND_REPLACE ) in the structure peer.
      * peer_local_as_set(): change the prototype, add an int for the replace-as
    * bgpd/bgpd.c
      * peer_local_as_set(): Set the PEER_FLAG_NO_PREPEND_REPLACE flag in the peer structure if the int repalce is set.
      * peer_local_as_unset(): Unset the flag PEER_FLAG_NO_PREPEND_REPLACE in the peer structure
      * bgp_config_write_peer(): Add support for the replace option
    * bgpd/bgp_attr.c
      * bgp_packet_attribute():  Add a check of the flag PEER_FLAG_NO_PREPEND_REPLACE, and set the right AS.
    * bgpd/bgp_vty.c
      * Change the calls to peer_local_as_set()
      * Add DEFUN and ALIAS functions to support the replace option.
      * bgp_vty_init(): Add the new DEFUNs
      * bgp_show_peer(): Add the replaced AS in the output

Author: David Chosrova <dada2372 <at> gmail.com>


---------- Forwarded message ----------
From: david chosrova <dada2372 <at> gmail.com>
Date: 2010/7/8
Subject: [PATCH] Bug 571 local-as options replace-as, dual-as should be possible
To: quagga-dev <at> lists.quagga.net


Hello,

I'm interested in routing and dev, so I have tried to implemnent the "replace"
command to start. I have tested and it seems to work.

Thanks you for your comment.


David Chosrova

--
" Un homme sans passe est plus pauvre qu'un homme sans avenir" ( Elie Wiesel )



--
" Un homme sans passe est plus pauvre qu'un homme sans avenir" ( Elie Wiesel )
Attachment (replace.patch): text/x-patch, 6498 bytes
<div>
<p>Hello,<br><br>I think I forgot the commit message in th previous post.<br><br>&nbsp;bgpd: Add support for replace-as command.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; * bgpd/bgpd.h<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * Add a flag ( PEER_FLAG_NO_PREPEND_REPLACE ) in the structure peer.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * peer_local_as_set(): change the prototype, add an int for the replace-as<br>&nbsp;&nbsp;&nbsp; * bgpd/bgpd.c<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * peer_local_as_set(): Set the PEER_FLAG_NO_PREPEND_REPLACE flag in the peer structure if the int repalce is set.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * peer_local_as_unset(): Unset the flag PEER_FLAG_NO_PREPEND_REPLACE in the peer structure<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * bgp_config_write_peer(): Add support for the replace option<br>&nbsp;&nbsp;&nbsp; * bgpd/bgp_attr.c<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * bgp_packet_attribute():&nbsp; Add a check of the flag PEER_FLAG_NO_PREPEND_REPLACE, and set the right AS.<br>
&nbsp;&nbsp;&nbsp; * bgpd/bgp_vty.c<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * Change the calls to peer_local_as_set()<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * Add DEFUN and ALIAS functions to support the replace option.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * bgp_vty_init(): Add the new DEFUNs<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * bgp_show_peer(): Add the replaced AS in the output<br><br>Author: David Chosrova &lt;<a href="mailto:dada2372 <at> gmail.com">dada2372 <at> gmail.com</a>&gt;<br><br><br></p>
<div class="gmail_quote">---------- Forwarded message ----------<br>From: david chosrova <span dir="ltr">&lt;<a href="mailto:dada2372 <at> gmail.com">dada2372 <at> gmail.com</a>&gt;</span><br>
Date: 2010/7/8<br>Subject: [PATCH] Bug 571 local-as options replace-as, dual-as should be possible<br>To: <a href="mailto:quagga-dev <at> lists.quagga.net">quagga-dev <at> lists.quagga.net</a><br><br><br>Hello,<br><br>I'm interested in routing and dev, so I have tried to implemnent the "replace"<br>
command to start. I have tested and it seems to work.<br><br>Thanks you for your comment.<br><br><br>David Chosrova<br clear="all"><br>-- <br>" Un homme sans passe est plus pauvre qu'un homme sans avenir" ( Elie Wiesel )<br>
</div>
<br><br clear="all"><br>-- <br>" Un homme sans passe est plus pauvre qu'un homme sans avenir" ( Elie Wiesel )<br>
</div>
Ashok . | 14 Jul 2010 12:19
Picon

[quagga-dev 8052] How to do Unit & Functionality testing of Quagga

Hi,

How would you test (or) debug your code generally? like ospf, bgp, rip... how to verify that your code is working?
do you use any simulator or any other software for testing ?
I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test my code?

thanks
Ashok

<div><p>Hi,<br><br>How would you test (or) debug your code generally? like ospf, bgp, rip... how to verify that your code is working?<br>do you use any simulator or any other software for testing ?<br>I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test my code?<br><br>thanks<br>Ashok<br></p></div>
Balaji G | 14 Jul 2010 13:30
Picon

[quagga-dev 8053] Re: How to do Unit & Functionality testing of Quagga


>do you use any simulator or any other software for testing ?

Virtualization is the key. If you just have a single system and you want to have a BGP/RIP/OSPF session the best way would be to either use UML or Qemu Virtualization techniques, which is one of the recommended ways to test your kernel too if you want to. If you have been used to VMware kind of environment earlier, then i would suggest you could use VirtualBox too.  The quickest way would be to use UML or Qemu environments.

>I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test

You have 2 PCs so the best would be to have a back to back connection if you want a basic setup, if you need a setup with 4-5 routers then refer the techniques i refered above.

Thanks,
Cheers,
  - Balaji





On Wed, Jul 14, 2010 at 3:49 PM, Ashok . <ashokj1125 <at> gmail.com> wrote:
Hi,

How would you test (or) debug your code generally? like ospf, bgp, rip... how to verify that your code is working?
do you use any simulator or any other software for testing ?
I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test my code?

thanks
Ashok

_______________________________________________
Quagga-dev mailing list
Quagga-dev <at> lists.quagga.net
http://lists.quagga.net/mailman/listinfo/quagga-dev


<div>
<br>&gt;do you use any simulator or any other software for testing ?<br><br>Virtualization is the key. If you just have a single system and you want to have a BGP/RIP/OSPF session the best way would be to either use UML or Qemu Virtualization techniques, which is one of the recommended ways to test your kernel too if you want to. If you have been used to VMware kind of environment earlier, then i would suggest you could use VirtualBox too.&nbsp; The quickest way would be to use UML or Qemu environments.<br><br>&gt;I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test<br><br>You have 2 PCs so the best would be to have a back to back connection if you want a basic setup, if you need a setup with 4-5 routers then refer the techniques i refered above. <br><br>Thanks,<br>Cheers,<br>&nbsp; - Balaji<br><br><br><br><br><br><div class="gmail_quote">On Wed, Jul 14, 2010 at 3:49 PM, Ashok . <span dir="ltr">&lt;<a href="mailto:ashokj1125 <at> gmail.com">ashokj1125 <at> gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote">Hi,<br><br>How would you test (or) debug your code generally? like ospf, bgp, rip... how to verify that your code is working?<br>
do you use any simulator or any other software for testing ?<br>I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test my code?<br><br>thanks<br>Ashok<br><br>_______________________________________________<br>
Quagga-dev mailing list<br><a href="mailto:Quagga-dev <at> lists.quagga.net">Quagga-dev <at> lists.quagga.net</a><br><a href="http://lists.quagga.net/mailman/listinfo/quagga-dev" target="_blank">http://lists.quagga.net/mailman/listinfo/quagga-dev</a><br><br>
</blockquote>
</div>
<br>
</div>
Ashok . | 14 Jul 2010 13:38
Picon

[quagga-dev 8054] Re: How to do Unit & Functionality testing of Quagga



On Wed, Jul 14, 2010 at 5:00 PM, Balaji G <balajig81 <at> gmail.com> wrote:

>do you use any simulator or any other software for testing ?

Virtualization is the key. If you just have a single system and you want to have a BGP/RIP/OSPF session the best way would be to either use UML or Qemu Virtualization techniques, which is one of the recommended ways to test your kernel too if you want to. If you have been used to VMware kind of environment earlier, then i would suggest you could use VirtualBox too.  The quickest way would be to use UML or Qemu environments.
 
(correct me if i am wrong).
are you referring  to this manual http://www.h7.dion.ne.jp/~qemu-win/HowToNetwork-en.html
Here Qemu provides some mechanism to forward packets, no need of OSPF,BGP, or some routing protocols

I used Qemu in the past. So if you have any other manual on how to set up for quagga testing, please do share with me

 
>I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test

You have 2 PCs so the best would be to have a back to back connection if you want a basic setup, if you need a setup with 4-5 routers then refer the techniques i refered above.


thanks
Ashok




On Wed, Jul 14, 2010 at 3:49 PM, Ashok . <ashokj1125 <at> gmail.com> wrote:
Hi,

How would you test (or) debug your code generally? like ospf, bgp, rip... how to verify that your code is working?
do you use any simulator or any other software for testing ?
I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test my code?

thanks
Ashok

_______________________________________________
Quagga-dev mailing list
Quagga-dev <at> lists.quagga.net
http://lists.quagga.net/mailman/listinfo/quagga-dev



<div>
<br><br><div class="gmail_quote">On Wed, Jul 14, 2010 at 5:00 PM, Balaji G <span dir="ltr">&lt;<a href="mailto:balajig81 <at> gmail.com">balajig81 <at> gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote">
<div class="im">
<br>&gt;do you use any simulator or any other software for testing ?<br><br>
</div>Virtualization is the key. If you just have a single system and you want to have a BGP/RIP/OSPF session the best way would be to either use UML or Qemu Virtualization techniques, which is one of the recommended ways to test your kernel too if you want to. If you have been used to VMware kind of environment earlier, then i would suggest you could use VirtualBox too.&nbsp; The quickest way would be to use UML or Qemu environments.</blockquote>
<div>&nbsp;</div>
<div>(correct me if i am wrong).<br>are you referring&nbsp; to this manual <a href="http://www.h7.dion.ne.jp/~qemu-win/HowToNetwork-en.html">http://www.h7.dion.ne.jp/~qemu-win/HowToNetwork-en.html</a><br>Here Qemu provides some mechanism to forward packets, no need of OSPF,BGP, or some routing protocols <br><br>
</div>
<div>I used Qemu in the past. So if you have any other manual on how to set up for quagga testing, please do share with me <br><br>&nbsp;</div>
<blockquote class="gmail_quote">
<div class="im">&gt;I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test<br><br>
</div>You have 2 PCs so the best would be to have a back to back connection if you want a basic setup, if you need a setup with 4-5 routers then refer the techniques i refered above. <br><br>
</blockquote>
<div>
<br>thanks<br>Ashok<br><br><br><br>
</div>
<blockquote class="gmail_quote">
<br><div class="gmail_quote">
<div>
<div></div>
<div class="h5">On Wed, Jul 14, 2010 at 3:49 PM, Ashok . <span dir="ltr">&lt;<a href="mailto:ashokj1125 <at> gmail.com" target="_blank">ashokj1125 <at> gmail.com</a>&gt;</span> wrote:<br>
</div>
</div>
<blockquote class="gmail_quote">
<div>
<div></div>
<div class="h5">Hi,<br><br>How would you test (or) debug your code generally? like ospf, bgp, rip... how to verify that your code is working?<br>

do you use any simulator or any other software for testing ?<br>I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test my code?<br><br>thanks<br>Ashok<br><br>
</div>
</div>_______________________________________________<br>
Quagga-dev mailing list<br><a href="mailto:Quagga-dev <at> lists.quagga.net" target="_blank">Quagga-dev <at> lists.quagga.net</a><br><a href="http://lists.quagga.net/mailman/listinfo/quagga-dev" target="_blank">http://lists.quagga.net/mailman/listinfo/quagga-dev</a><br><br>
</blockquote>
</div>
<br>
</blockquote>
</div>
<br>
</div>
Balaji G | 14 Jul 2010 13:43
Picon

[quagga-dev 8055] Re: How to do Unit & Functionality testing of Quagga


>Here Qemu provides some mechanism to forward packets, no need of OSPF,BGP, or some routing protocols

Qemu has nothing to do with forwarding packets nor with protocols either. Qemu is an emulator which would emulate x86 or other architectures. Read up on qemu networking

http://wiki.qemu.org/Documentation/Networking

The other option could be to use UML as i already told you. Read up about it in the following link

http://user-mode-linux.sourceforge.net/network.html


Thanks,
Cheers,
  - Balaji



On Wed, Jul 14, 2010 at 5:08 PM, Ashok . <ashokj1125 <at> gmail.com> wrote:


On Wed, Jul 14, 2010 at 5:00 PM, Balaji G <balajig81 <at> gmail.com> wrote:

>do you use any simulator or any other software for testing ?

Virtualization is the key. If you just have a single system and you want to have a BGP/RIP/OSPF session the best way would be to either use UML or Qemu Virtualization techniques, which is one of the recommended ways to test your kernel too if you want to. If you have been used to VMware kind of environment earlier, then i would suggest you could use VirtualBox too.  The quickest way would be to use UML or Qemu environments.
 
(correct me if i am wrong).
are you referring  to this manual http://www.h7.dion.ne.jp/~qemu-win/HowToNetwork-en.html
Here Qemu provides some mechanism to forward packets, no need of OSPF,BGP, or some routing protocols

I used Qemu in the past. So if you have any other manual on how to set up for quagga testing, please do share with me

 
>I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test

You have 2 PCs so the best would be to have a back to back connection if you want a basic setup, if you need a setup with 4-5 routers then refer the techniques i refered above.


thanks
Ashok




On Wed, Jul 14, 2010 at 3:49 PM, Ashok . <ashokj1125 <at> gmail.com> wrote:
Hi,

How would you test (or) debug your code generally? like ospf, bgp, rip... how to verify that your code is working?
do you use any simulator or any other software for testing ?
I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test my code?

thanks
Ashok

_______________________________________________
Quagga-dev mailing list
Quagga-dev <at> lists.quagga.net
http://lists.quagga.net/mailman/listinfo/quagga-dev




<div>
<br>&gt;Here Qemu provides some mechanism to forward packets, no need of OSPF,BGP, or some routing protocols <br><br>Qemu has nothing to do with forwarding packets nor with protocols either. Qemu is an emulator which would emulate x86 or other architectures. Read up on qemu networking <br><br><a href="http://wiki.qemu.org/Documentation/Networking">http://wiki.qemu.org/Documentation/Networking</a><br><br>The other option could be to use UML as i already told you. Read up about it in the following link<br><br><a href="http://user-mode-linux.sourceforge.net/network.html">http://user-mode-linux.sourceforge.net/network.html</a><br><br><br>Thanks,<br>Cheers,<br>&nbsp; - Balaji<br><br><br><br><div class="gmail_quote">On Wed, Jul 14, 2010 at 5:08 PM, Ashok . <span dir="ltr">&lt;<a href="mailto:ashokj1125 <at> gmail.com">ashokj1125 <at> gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote">
<br><br><div class="gmail_quote">
<div class="im">On Wed, Jul 14, 2010 at 5:00 PM, Balaji G <span dir="ltr">&lt;<a href="mailto:balajig81 <at> gmail.com" target="_blank">balajig81 <at> gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote">
<div>
<br>&gt;do you use any simulator or any other software for testing ?<br><br>
</div>Virtualization is the key. If you just have a single system and you want to have a BGP/RIP/OSPF session the best way would be to either use UML or Qemu Virtualization techniques, which is one of the recommended ways to test your kernel too if you want to. If you have been used to VMware kind of environment earlier, then i would suggest you could use VirtualBox too.&nbsp; The quickest way would be to use UML or Qemu environments.</blockquote>

<div>&nbsp;</div>
</div>
<div>(correct me if i am wrong).<br>are you referring&nbsp; to this manual <a href="http://www.h7.dion.ne.jp/%7Eqemu-win/HowToNetwork-en.html" target="_blank">http://www.h7.dion.ne.jp/~qemu-win/HowToNetwork-en.html</a><br>
Here Qemu provides some mechanism to forward packets, no need of OSPF,BGP, or some routing protocols <br><br>
</div>
<div>I used Qemu in the past. So if you have any other manual on how to set up for quagga testing, please do share with me <br><br>&nbsp;</div>
<div class="im"><blockquote class="gmail_quote">

<div>&gt;I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test<br><br>
</div>You have 2 PCs so the best would be to have a back to back connection if you want a basic setup, if you need a setup with 4-5 routers then refer the techniques i refered above. <br><br>
</blockquote></div>
<div>
<br>thanks<br>Ashok<br><br><br><br>
</div>
<div class="im"><blockquote class="gmail_quote">
<br><div class="gmail_quote">
<div>
<div></div>
<div>On Wed, Jul 14, 2010 at 3:49 PM, Ashok . <span dir="ltr">&lt;<a href="mailto:ashokj1125 <at> gmail.com" target="_blank">ashokj1125 <at> gmail.com</a>&gt;</span> wrote:<br>
</div>
</div>
<blockquote class="gmail_quote">
<div>
<div></div>
<div>Hi,<br><br>How would you test (or) debug your code generally? like ospf, bgp, rip... how to verify that your code is working?<br>

do you use any simulator or any other software for testing ?<br>I don't have big setup, I have 2 desktop pc, that's all i can afford, with that just want to know, how best I can test my code?<br><br>thanks<br>Ashok<br><br>
</div>
</div>_______________________________________________<br>
Quagga-dev mailing list<br><a href="mailto:Quagga-dev <at> lists.quagga.net" target="_blank">Quagga-dev <at> lists.quagga.net</a><br><a href="http://lists.quagga.net/mailman/listinfo/quagga-dev" target="_blank">http://lists.quagga.net/mailman/listinfo/quagga-dev</a><br><br>
</blockquote>
</div>
<br>
</blockquote></div>
</div>
<br>
</blockquote>
</div>
<br>
</div>
paul | 14 Jul 2010 16:22

[quagga-dev 8056] Re: How to do Unit & Functionality testing of Quagga

On Wed, 14 Jul 2010, Ashok . wrote:

> How would you test (or) debug your code generally? like ospf, bgp, 
> rip... how to verify that your code is working? do you use any 
> simulator or any other software for testing ? I don't have big 
> setup, I have 2 desktop pc, that's all i can afford, with that just 
> want to know, how best I can test my code?

Unit tests, i.e. component level testing, are a good way to verify 
your code works. E.g. in Quagga we have some such tests in the tests/ 
directory (e.g. aspath_test.c). You can hack your own driver code (as 
I tend to do), or maybe use some framework (is it worth it?).

Obviously writing code such that control flow logic is separated as 
much as is possible/sensible from functional logic aids testability, 
as functional logic is obviously much easier to test. Control flow 
can be tested by putting in test-specific stubs instead of the real 
functional logic. Etc..

For functional testing, for BGP you can run multiple instances of 
bgpd. See the tools/multiple-bgpd.sh script. We unfortunately don't 
have anything similar for the more link-orientated protocols (but the 
Solaris IS-IS/RBridges folk had some kind of thing for isisd, iirc).

You just have to use VMs. Libvirt/virt-manager, and the use of COW 
master images can help automate this stuff.

regards,
--

-- 
Paul Jakma	paul <at> jakma.org	Key ID: 64A2FF6A
Fortune:
A drama critic is a person who surprises a playwright by informing him
what he meant.
 		-- Wilson Mizner

Gmane