1. 16 Jan, 2008 1 commit
    • Damien Fouilleul's avatar
      vlc security: As i've seen very little improvement on that front, i've decided... · 658b4f83
      Damien Fouilleul authored
      vlc security: As i've seen very little improvement on that front, i've decided to check in my take on handling the problem of managing harmful options. I'm pretty sure this is going to be very controversial, but I think my approach is quite simple and yet very effective Anyway, my approach makes the following assumptions:
      
      - most vlc options are considered safe, only a handful are particularily unsafe and need be declared as such in their definition (they mostly deal with writing to an output file or URL)
      - unsafe options are only considered potentially harmful when used as an input option, ie. the ':option' format. Configuration options are always considered safe 'i.e --option' 
      - unsafe options are associated with a global security policy, which dictates how these are handled. At the moment, The policy can be either block, allow or prompt, and is set using the '--security-policy' option (which itself is considered unsafe ;)
      
      the policy can be set by the user at the command line or in the preferences, it curently defaults to prompt, which is the desirable state for deskop use. However, it can be overriden depending on context, for example, the activex and mozilla will force the security-policy to block regardless of preference settins.
      
      the code is a bit rough at the moment, but i will optimize/clean it up if the dev community this approach is worth keeping.
      
      try the following example, and you'll see quickly what i mean:
      
      ./vlc -vvv <a mrl> :sout=#transcode{vcodec=mp1v,vb=1024,acodec=mpga,ab=192}:standard{mux=ts,dst=vlc-output.ts,access=file}"
      
      Enjoy,
         Damien
      
      
      658b4f83
  2. 10 Sep, 2007 1 commit
  3. 20 Aug, 2007 2 commits
  4. 26 Nov, 2006 1 commit
    • Clément Stenac's avatar
      A bit of headers cleanup · d3fe7f28
      Clément Stenac authored
      * Headers in include must contain the structures and prototypes needed
        by the plugins and should be named vlc_*.
      * Headers in include/vlc must contain the structures and prototypes
        needed by external libvlc clients
      
      * Moved and renamed some things in headers. 
         - Removed vlc_cpu.h, vlc_error.h (merged in vlc_common)
         - Removed snapshot.h (merged in vlc_vout.h)
         - Removed vlc_spu.h (merged in vlc_osd.h)
         - Removed intf_eject.h and vlc_interaction.h (merged in vlc_interface)
         - Moved all internal headers to src
         - Merged vlc_video.h and video_output.h and move private things to src
         - Removed vlc/intf.h, vlc/aout.h, vlc/vout.h, vlc/decoder.h and vlc/input.h
           (meta headers for use in modules, and often implying too large 
           dependencies)
      * Removed some useless dependencies
      * Unexported a bunch of functions and structures used only in src/
        (--> Still some work here)
      * Finally made input_thread_t and input_source_t (mostly) private. 
        Added input_GetItem to fetch the input_item of an input_thread
      * Cleaned up deprecated entries in vlc_symbols.h and bumped up symbol 
        prefix
      
      This commit has a 99% probability of breaking the build, 0.1% of killing
      your cat and 0% of getting you hot chicks.
      d3fe7f28
  5. 01 Oct, 2006 1 commit
  6. 22 Aug, 2006 1 commit
    • Felix Paul Kühne's avatar
      * browsed through all code files starting with A to F and added non-blocking... · 89298c16
      Felix Paul Kühne authored
      * browsed through all code files starting with A to F and added non-blocking intf_UserFatal calls next to msg_err where I think that it is necessary.
      I tried to select the most important msg_errs. If I missed your favourite, feel free to add it.
      Feedback on the wording and the placement of the interaction calls is strongly welcomed.
      
      For the records: I'm using some general topics for most of the dialogues to produce less work for the translators. The current ones go like this:
      "Audio output failed", "Network interaction failed", "Streaming / Transcoding failed", "Audio filtering failed", "File reading failed", "Playback failure"
      
      More to come.
      89298c16
  7. 03 Aug, 2006 1 commit
  8. 02 May, 2006 1 commit
  9. 25 Mar, 2006 1 commit
  10. 12 Jan, 2006 1 commit
  11. 09 Jul, 2005 1 commit
  12. 08 Jul, 2005 1 commit
  13. 03 Jun, 2005 1 commit
  14. 03 Mar, 2005 1 commit
  15. 11 Dec, 2004 1 commit
    • Clément Stenac's avatar
      Improvements to preferences · a90a19a6
      Clément Stenac authored
      * Each module can declare a "human-readable short name" with set_name
      * Modules are sorted by category (set_category, set_subcategory).
        Modules configs can be separated by set_section()
      * Separated audio-filter and audio-visual
      * Separated extraintf and control
      * New command and widget : add_module_list() for comma-separated modules
      * Vfilters now use "," as separator
      a90a19a6
  16. 10 Jul, 2004 1 commit
  17. 24 Apr, 2004 2 commits
  18. 11 Mar, 2004 1 commit
  19. 25 Jan, 2004 1 commit
    • Gildas Bazin's avatar
      · eed2a24c
      Gildas Bazin authored
      * modules/stream_out/*: coding style changes + strings review.
      eed2a24c
  20. 21 Nov, 2003 1 commit
  21. 05 Jul, 2003 1 commit
  22. 29 Apr, 2003 1 commit
  23. 13 Apr, 2003 1 commit
    • Laurent Aimar's avatar
      * all: new sout scheme. Now a chain of module are created that can · 4dec9682
      Laurent Aimar authored
      modify/apply on all streams, --sout has the same behavour expect when
      starting with a '#'.
      
       With a starting '#' you can specify a chain of modules, it's still
      unstable but a lot more powerfull.
       You have access to duplicate(that duplicate all stream), transcode
      (using only ffmpeg), standard/std and es (that apply muxers and access),
      and display. You could chain them with ':' and specify options with
      {option1=value,option2=value[,...]}.
      
      ex: * to stream and see the stream to udp/ts:ip
       --sout '#duplicate{dst=display,dst=std{access=udp,mux=ts,url=ip}}'
          * to transcode,see and stream
       --sout '#transcode{acodec=mpga}:duplicate{dst=display,dst=std{access=udp,mux=ts,url=ip}}'
      
       Without a starting '#', the url is converted into '#std{acces=,mux=,url}'
      Test and report bugs :)
      4dec9682