Project

General

Profile

Actions

Architecture #3972

open

Scala XML library accepts invalid XML characters

Added by Vincent MEMBRÉ over 10 years ago. Updated over 3 years ago.

Status:
New
Priority:
N/A
Category:
Architecture - Code maintenance
Target version:
-
Effort required:
Name check:
Fix check:
Regression:

Description

Following #3967, We found out that Scala XML library has some issue with some particular character:

  • it correctly refuse invalid characters, throwing an error both when serializing and loading it
val s = <xml>{\u000B}</xml>
<console>:1: error: illegal character '\u000b'
val s = <xml>{\u000B}</xml>
                   ^
scala> val s = <xml>{"a \rb"}</xml>
b</xml>a.xml.Elem = <xml>a 
scala> val is = new ByteArrayInputStream(s.toString.getBytes)
is: java.io.ByteArrayInputStream = java.io.ByteArrayInputStream@f608fcd

scala> XML.load(is)
res13: scala.xml.Elem = 
<xml>a 
b</xml>
  • causing a difference between the initial xml and the one read
scala> res13 == s
res14: Boolean = false

This is causing some issue to us: datas missing in xml, non valid change requests, various security issues...

There is three places in Rudder that serialize dtas into xml:
- Change request (various bug detected, due to comparison between postgres and LDAP datas)
- Events logs
- archive/rollback/datas stored in configuration repository


Related issues 1 (0 open1 closed)

Related to Rudder - Bug #3967: Change request cannot be accepted: multiline text cause merge incompatibilityReleasedFrançois ARMAND2013-09-26Actions
Actions #1

Updated by Nicolas PERRON over 10 years ago

  • Target version changed from 2.4.10 to 2.4.11
Actions #2

Updated by Nicolas PERRON over 10 years ago

  • Target version changed from 2.4.11 to 2.4.12
Actions #3

Updated by Nicolas PERRON over 10 years ago

  • Target version changed from 2.4.12 to 2.4.13
Actions #4

Updated by Vincent MEMBRÉ about 10 years ago

  • Target version changed from 2.4.13 to 2.6.11

Since version 2.4 is not maintained anymore, retargeting to branch 2.6

Actions #5

Updated by Vincent MEMBRÉ about 10 years ago

  • Target version changed from 2.6.11 to 2.6.12
Actions #6

Updated by Vincent MEMBRÉ about 10 years ago

  • Target version changed from 2.6.12 to 2.6.13
Actions #7

Updated by Vincent MEMBRÉ almost 10 years ago

  • Target version changed from 2.6.13 to 2.6.14
Actions #8

Updated by Jonathan CLARKE almost 10 years ago

  • Target version changed from 2.6.14 to 2.6.16
Actions #9

Updated by Jonathan CLARKE almost 10 years ago

  • Target version changed from 2.6.16 to 2.6.17
Actions #10

Updated by Nicolas PERRON over 9 years ago

  • Target version changed from 2.6.17 to 2.6.18
Actions #11

Updated by Matthieu CERDA over 9 years ago

  • Target version changed from 2.6.18 to 2.6.19
Actions #12

Updated by Vincent MEMBRÉ over 9 years ago

  • Target version changed from 2.6.19 to 2.6.20
Actions #13

Updated by François ARMAND about 9 years ago

  • Target version changed from 2.6.20 to 2.10.10

Still no good solution for that one :(

Actions #14

Updated by Vincent MEMBRÉ about 9 years ago

  • Target version changed from 2.10.10 to 2.10.11
Actions #15

Updated by Vincent MEMBRÉ about 9 years ago

  • Target version changed from 2.10.11 to 2.10.12
Actions #16

Updated by Vincent MEMBRÉ about 9 years ago

  • Target version changed from 2.10.12 to 2.10.13
Actions #17

Updated by Vincent MEMBRÉ about 9 years ago

  • Target version changed from 2.10.13 to 2.10.14
Actions #18

Updated by Vincent MEMBRÉ almost 9 years ago

  • Target version changed from 2.10.14 to 2.10.15
Actions #19

Updated by Vincent MEMBRÉ almost 9 years ago

  • Target version changed from 2.10.15 to 2.10.16
Actions #20

Updated by Vincent MEMBRÉ over 8 years ago

  • Target version changed from 2.10.16 to 2.10.17
Actions #21

Updated by Vincent MEMBRÉ over 8 years ago

  • Target version changed from 2.10.17 to 2.10.18
Actions #22

Updated by Vincent MEMBRÉ over 8 years ago

  • Target version changed from 2.10.18 to 2.10.19
Actions #23

Updated by Vincent MEMBRÉ over 8 years ago

  • Target version changed from 2.10.19 to 2.10.20
Actions #24

Updated by Vincent MEMBRÉ over 8 years ago

  • Target version changed from 2.10.20 to 2.11.18
Actions #25

Updated by Vincent MEMBRÉ about 8 years ago

  • Target version changed from 2.11.18 to 2.11.19
Actions #26

Updated by Vincent MEMBRÉ about 8 years ago

  • Target version changed from 2.11.19 to 2.11.20
Actions #27

Updated by Vincent MEMBRÉ about 8 years ago

  • Target version changed from 2.11.20 to 2.11.21
Actions #28

Updated by Vincent MEMBRÉ almost 8 years ago

  • Target version changed from 2.11.21 to 2.11.22
Actions #29

Updated by Vincent MEMBRÉ almost 8 years ago

  • Target version changed from 2.11.22 to 2.11.23
Actions #30

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 2.11.23 to 2.11.24
Actions #31

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 2.11.24 to 308
Actions #32

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 308 to 3.1.14
Actions #33

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 3.1.14 to 3.1.15
Actions #34

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 3.1.15 to 3.1.16
Actions #35

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 3.1.16 to 3.1.17
Actions #36

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 3.1.17 to 3.1.18
Actions #37

Updated by Vincent MEMBRÉ about 7 years ago

  • Target version changed from 3.1.18 to 3.1.19
Actions #38

Updated by François ARMAND about 7 years ago

  • Related to Bug #3967: Change request cannot be accepted: multiline text cause merge incompatibility added
Actions #39

Updated by François ARMAND about 7 years ago

  • Tracker changed from Bug to Architecture

There is no direct bug for that one (the bug is #3967). So I'm changing that to "architecture", and we will open bug if (when) something impacting user is found.

Actions #40

Updated by Vincent MEMBRÉ about 7 years ago

  • Target version changed from 3.1.19 to 3.1.20
Actions #41

Updated by Vincent MEMBRÉ almost 7 years ago

  • Target version changed from 3.1.20 to 3.1.21
Actions #42

Updated by Vincent MEMBRÉ almost 7 years ago

  • Target version changed from 3.1.21 to 3.1.22
Actions #43

Updated by Vincent MEMBRÉ over 6 years ago

  • Target version changed from 3.1.22 to 3.1.23
Actions #44

Updated by Vincent MEMBRÉ over 6 years ago

  • Target version changed from 3.1.23 to 3.1.24
Actions #45

Updated by Vincent MEMBRÉ over 6 years ago

  • Target version changed from 3.1.24 to 3.1.25
Actions #46

Updated by Benoît PECCATTE over 6 years ago

  • Target version changed from 3.1.25 to 4.1.9
Actions #47

Updated by Vincent MEMBRÉ over 6 years ago

  • Target version changed from 4.1.9 to 4.1.10
Actions #48

Updated by Vincent MEMBRÉ about 6 years ago

  • Target version changed from 4.1.10 to 4.1.11
Actions #49

Updated by Vincent MEMBRÉ about 6 years ago

  • Target version changed from 4.1.11 to 4.1.12
Actions #50

Updated by Vincent MEMBRÉ almost 6 years ago

  • Target version changed from 4.1.12 to 4.1.13
Actions #51

Updated by Vincent MEMBRÉ almost 6 years ago

  • Target version changed from 4.1.13 to 4.1.14
Actions #52

Updated by Benoît PECCATTE over 5 years ago

  • Target version changed from 4.1.14 to 4.1.15
Actions #53

Updated by Rudder Quality Assistant over 5 years ago

  • Assignee changed from François ARMAND to Benoît PECCATTE
Actions #54

Updated by Vincent MEMBRÉ over 5 years ago

  • Target version changed from 4.1.15 to 4.1.16
Actions #55

Updated by Vincent MEMBRÉ over 5 years ago

  • Target version changed from 4.1.16 to 4.1.17
Actions #56

Updated by Vincent MEMBRÉ over 5 years ago

  • Target version changed from 4.1.17 to 4.1.18
Actions #57

Updated by Benoît PECCATTE over 5 years ago

  • Assignee changed from Benoît PECCATTE to François ARMAND
Actions #58

Updated by Vincent MEMBRÉ over 5 years ago

  • Target version changed from 4.1.18 to 4.1.19
Actions #59

Updated by Alexis Mousset about 5 years ago

  • Target version changed from 4.1.19 to 4.1.20
Actions #60

Updated by Alexis Mousset almost 5 years ago

  • Target version changed from 4.1.20 to 588
Actions #61

Updated by Nicolas CHARLES almost 5 years ago

  • Target version changed from 588 to 5.0.13

certainly still true

Actions #62

Updated by Vincent MEMBRÉ over 4 years ago

  • Target version changed from 5.0.13 to 5.0.14
Actions #63

Updated by Vincent MEMBRÉ over 4 years ago

  • Target version changed from 5.0.14 to 5.0.15
Actions #64

Updated by Vincent MEMBRÉ over 4 years ago

  • Target version changed from 5.0.15 to 5.0.16
Actions #65

Updated by Alexis Mousset about 4 years ago

  • Target version changed from 5.0.16 to 5.0.17
Actions #66

Updated by Vincent MEMBRÉ about 4 years ago

  • Target version changed from 5.0.17 to 5.0.18
Actions #67

Updated by Benoît PECCATTE almost 4 years ago

  • Target version changed from 5.0.18 to 6.2.0~beta1
Actions #68

Updated by Vincent MEMBRÉ over 3 years ago

  • Target version changed from 6.2.0~beta1 to 6.2.0~rc1
Actions #69

Updated by François ARMAND over 3 years ago

  • Priority changed from 1 to N/A
  • Target version deleted (6.2.0~rc1)
Actions

Also available in: Atom PDF