Comment 1 for bug 751309

Dick Tang (dictcp) wrote :

suggested fix:
clc/modules/wsstack/src/main/java/com/eucalyptus/ws/handlers/WalrusAuthenticationHandler.java line 182

                        if(addrStrings.length > 1) {
                                addrString += "?";
                                String[] subResourcesCandidates = addrStrings[1].split("&");
                                for(String subResourceCandidate : subResourcesCandidates) {
                                        String subResourceCandidateHead = subResourceCandidate.split("=")[0];
                                        for(WalrusProperties.SubResource subResource : WalrusProperties.SubResource.values()) {
                                                if(subResourceCandidateHead.equals(subResource.toString())) {
                                                        if(!addrString.substring(addrString.length()-1).equals("?")) addrString += "&";
                                                        addrString += subResourceCandidate;
                                                }
                                        }
                                }
                        }

clc/modules/core/src/main/java/com/eucalyptus/util/WalrusProperties.java: line 245
        public enum SubResource {
                acl, logging, torrent, location, versionId, versioning, versions
        }