timkay / aws

Easy command line access to Amazon EC2, S3, SQS, ELB, and SDB
http://timkay.com/aws/
424 stars 123 forks source link

Route53 updates broken in this commit "Support for V4 signatures. Only S3 supports V4 signatures for now. …" #93

Closed gilesw closed 9 years ago

gilesw commented 9 years ago

it removes this function:-

-sub R53_xml_data {
-    return { 'header' => '<?xml version="1.0" encoding="UTF-8"?>',
-        'POST|' => '<CreateHostedZoneRequest xmlns="https://route53.amazonaws.com/doc/2012-02-29/"><Name></Name><CallerReference></CallerReference><HostedZoneConfig><Comment></Comment></HostedZoneConfig></CreateHostedZoneRequest>',
-        'POST|rrset' => '<ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-02-29/"> <ChangeBatch> <Comment></Comment> <Changes> <!--REPEAT--> <Change> <Action></Action> <ResourceRecordSet> <Name></Name> <Type></Type> <TTL></TTL> <ResourceRecords> <ResourceRecord> <Value></Value> </ResourceRecord> </ResourceRecords> </ResourceRecordSet> </Change> <!--/REPEAT--> </Changes> </ChangeBatch> </ChangeResourceRecordSetsRequest>',
-
-    };
-}
timkay commented 9 years ago

How does removing R53_xml_data() address the issue you mention in your title, that only S3 supports V4 signatures?

gilesw commented 9 years ago

Hi Tim,

Sorry for my less than great post. The function that was removed in that commit is used when updates are posted to r53:-

        else  # method must be POST
        {
            my $hdr = R53_xml_data() -> {'header'};
            my $xmlsrc = R53_xml_data() -> {$action};

I'm not sure why it was removed in that commit, possibly because it was in the middle of some other functions that were rewritten.

timkay commented 9 years ago

Are you saying: that code was removed, and it should not have been removed? (And that this issue has nothing to do with V4 support?) Let me know, please. If so, I'll put it back. :-)

timkay commented 9 years ago

I put it back. Let me know if it's fixed, please.

gilesw commented 9 years ago

That did the trick.