@@ -215,7 +215,7 @@ func (m *PDRMap) SimulateRemove(key api.PDRID) error {
215215 return nil
216216}
217217
218- func NewPDRMap (pdrs []* ie.IE ) (pdrmap * PDRMap , err error , cause uint8 , offendingIE uint16 ) {
218+ func NewPDRMap (pdrs []* ie.IE ) (pdrmap * PDRMap , cause uint8 , offendingIE uint16 , err error ) {
219219 p := PDRMap {
220220 pdrmap : make (pdrmapInternal ),
221221 mu : sync.RWMutex {},
@@ -229,44 +229,44 @@ func NewPDRMap(pdrs []*ie.IE) (pdrmap *PDRMap, err error, cause uint8, offending
229229 if err != nil {
230230 switch err {
231231 case io .ErrUnexpectedEOF :
232- return nil , err , ie .CauseInvalidLength , ie .PDRID
232+ return nil , ie .CauseInvalidLength , ie .PDRID , err
233233 case ie .ErrIENotFound :
234- return nil , err , ie .CauseMandatoryIEMissing , ie .PDRID
234+ return nil , ie .CauseMandatoryIEMissing , ie .PDRID , err
235235 default :
236- return nil , err , ie .CauseMandatoryIEIncorrect , ie .CreatePDR
236+ return nil , ie .CauseMandatoryIEIncorrect , ie .CreatePDR , err
237237 }
238238 }
239239 pdi , err := pdr .PDI ()
240240 if err != nil {
241241 switch err {
242242 case io .ErrUnexpectedEOF :
243- return nil , err , ie .CauseInvalidLength , ie .PDI
243+ return nil , ie .CauseInvalidLength , ie .PDI , err
244244 case ie .ErrIENotFound :
245- return nil , err , ie .CauseMandatoryIEMissing , ie .PDI
245+ return nil , ie .CauseMandatoryIEMissing , ie .PDI , err
246246 default :
247- return nil , err , ie .CauseMandatoryIEIncorrect , ie .CreatePDR
247+ return nil , ie .CauseMandatoryIEIncorrect , ie .CreatePDR , err
248248 }
249249 }
250250 precedence , err := pdr .Precedence ()
251251 if err != nil {
252252 switch err {
253253 case io .ErrUnexpectedEOF :
254- return nil , err , ie .CauseInvalidLength , ie .Precedence
254+ return nil , ie .CauseInvalidLength , ie .Precedence , err
255255 case ie .ErrIENotFound :
256- return nil , err , ie .CauseMandatoryIEMissing , ie .Precedence
256+ return nil , ie .CauseMandatoryIEMissing , ie .Precedence , err
257257 default :
258- return nil , err , ie .CauseMandatoryIEIncorrect , ie .CreatePDR
258+ return nil , ie .CauseMandatoryIEIncorrect , ie .CreatePDR , err
259259 }
260260 }
261261 farid , err := pdr .FARID ()
262262 if err != nil {
263263 switch err {
264264 case io .ErrUnexpectedEOF :
265- return nil , err , ie .CauseInvalidLength , ie .FARID
265+ return nil , ie .CauseInvalidLength , ie .FARID , err
266266 case ie .ErrIENotFound :
267- return nil , err , ie .CauseMandatoryIEMissing , ie .FARID
267+ return nil , ie .CauseMandatoryIEMissing , ie .FARID , err
268268 default :
269- return nil , err , ie .CauseMandatoryIEIncorrect , ie .CreatePDR
269+ return nil , ie .CauseMandatoryIEIncorrect , ie .CreatePDR , err
270270 }
271271 }
272272
@@ -280,7 +280,7 @@ func NewPDRMap(pdrs []*ie.IE) (pdrmap *PDRMap, err error, cause uint8, offending
280280 }
281281 ohrIE = ie .NewOuterHeaderRemoval (ohr [0 ], ohr [1 ])
282282 } else if err == io .ErrUnexpectedEOF {
283- return nil , err , ie .CauseInvalidLength , ie .OuterHeaderRemoval
283+ return nil , ie .CauseInvalidLength , ie .OuterHeaderRemoval , err
284284 }
285285
286286 err = p .Add (NewPDR (
@@ -291,10 +291,10 @@ func NewPDRMap(pdrs []*ie.IE) (pdrmap *PDRMap, err error, cause uint8, offending
291291 ohrIE ,
292292 ))
293293 if err != nil {
294- return nil , err , ie .CauseMandatoryIEIncorrect , ie .CreatePDR
294+ return nil , ie .CauseMandatoryIEIncorrect , ie .CreatePDR , err
295295 }
296296 }
297- return & p , nil , 0 , 0
297+ return & p , 0 , 0 , nil
298298}
299299
300300func (m * PDRMap ) IntoCreatePDR () []* ie.IE {
0 commit comments